lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:	Fri, 03 Jul 2015 02:04:08 -0600
From:	"Gang He" <ghe@...e.com>
To:	<joseph.qi@...wei.com>
Cc:	<ocfs2-devel@....oracle.com>, "Mark Fasheh" <MFasheh@...e.com>,
	<rgoldwyn@...e.de>, <linux-kernel@...r.kernel.org>
Subject: Re: [Ocfs2-devel] [PATCH 0/4] ocfs2: add online file check
 feature

Hi Joseph,

Thank for your reviewing.
Online file check feature will try to check/fix some independent block corruption problems.
Since these operations are under online file system, the features are limited, otherwise, we have
to use FSCK tools after file system is unmounted (e.g. some inconsistent meta-data problem).
This online file check will be implemented by some stages.
First, we give a online file check framework and inode block check.
Second, we will add other kinds of block check/fix, e.g.
Add checks/fixes for directory blocks.
Add checks/fixes for extent_block errors/corruption
Add checks/fixes directory indexing. fsck currently abandons the tree and rebuilds a new index, we can do the same.
Add checks/fixes for xattr blocks
Add checks/fixes for refcount blocks
Finally, add system file checks (journal, local_alloc etc).
Anyway, this feature only can address some independent problems, since we cannot block other file access when file check is running.
For more serious problem, have to stop file system and run FSCK to chech/fix step by step.

Thanks
Gang


>>> 
> Hi Gang,
> Thank you and Goldwyn for posting this feature as well as its framework.
> This patch set tries to fix inode related errors such as block no, valid
> flag, generation, metaecc, etc. I think it may fit some cases but not all.
> For example, valid flag not set readonly may be caused by an inode with
> two entries, so I think it is not right to just reset it.
> Moreover, in our environment, most readonly cases we have encountered are
> related gd and entent tree/block. So do you have any consideration about
> these cases?
> For more details about gd and entent tree/block readonly cases, please
> refer the previous mails:
> https://oss.oracle.com/pipermail/ocfs2-devel/2015-April/010768.html 
> https://oss.oracle.com/pipermail/ocfs2-devel/2015-June/010873.html 
> 
> Thanks,
> Joseph
> 
> On 2015/6/24 13:24, Gang He wrote:
>> When there are errors in the ocfs2 filesystem,
>> they are usually accompanied by the inode number which caused the error.
>> This inode number would be the input to fixing the file.
>> One of these options could be considered:
>> A file in the sys filesytem which would accept inode numbers.
>> This could be used to communication back what has to be fixed or is fixed.
>> You could write:
>> $# echo "CHECK <inode>" > /sys/fs/ocfs2/devname/filecheck
>> or
>> $# echo "FIX <inode>" > /sys/fs/ocfs2/devname/filecheck
>> 
>> Gang He (4):
>>   ocfs2: export ocfs2_kset for online file check
>>   ocfs2: sysfile interfaces for online file check
>>   ocfs2: create/remove sysfile for online file check
>>   ocfs2: check/fix inode block for online file check
>> 
>>  fs/ocfs2/Makefile      |   3 +-
>>  fs/ocfs2/filecheck.c   | 569 
> +++++++++++++++++++++++++++++++++++++++++++++++++
>>  fs/ocfs2/filecheck.h   |  48 +++++
>>  fs/ocfs2/inode.c       | 196 ++++++++++++++++-
>>  fs/ocfs2/inode.h       |   3 +
>>  fs/ocfs2/ocfs2_trace.h |   2 +
>>  fs/ocfs2/stackglue.c   |   3 +-
>>  fs/ocfs2/stackglue.h   |   2 +
>>  fs/ocfs2/super.c       |   5 +
>>  9 files changed, 823 insertions(+), 8 deletions(-)
>>  create mode 100644 fs/ocfs2/filecheck.c
>>  create mode 100644 fs/ocfs2/filecheck.h
>> 

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ