[Ocfs2-devel] [PATCH v2 0/4] Add online file check feature

Gang He ghe at suse.com
Sun Dec 6 19:33:49 PST 2015


Hello Greg and Pavel,

Sorry, there was a misunderstand, I was not aware that there were some design constraints for sysfs interfaces. I will review and modify this portion code. 


Thanks
Gang 


>>> 
> On Fri, Dec 04, 2015 at 01:36:21AM -0700, Gang He wrote:
>> Hi Greg,
>> 
>> 
>> >>> 
>> > On Wed, Dec 02, 2015 at 07:05:27PM -0700, Gang He wrote:
>> >> Hello Pavel,
>> >> 
>> >> 
>> >> 
>> >> >>> 
>> >> > On Wed 2015-10-28 14:25:57, 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
>> >> >> 
>> >> > 
>> >> > Are you sure this is reasonable interface? I mean.... sysfs is
>> >> > supposed to be one value per file. And I don't think its suitable for
>> >> > running commands.
>> >> Usually, the corrupted file (inode) should be rarely encountered for OCFS2 
>> > file system, then
>> >> lots of commands are executed via this interface with high performance is 
>> > not expected by us.
>> >> Second, after online file check is added, we also plan to add a mount 
> option 
>> > "error=fix", that means
>> >> the file system can fix these errors automatically without a manual command 
> 
>> > triggering.
>> > 
>> > It's not a "performance" issue, it's a "sysfs files only have one value"
>> > type thing.  Have two files, "inode_fix" and "inode_check" and then just
>> > write the inode into them, no need to have a "verb <inode>" type parser.
>> Current, we have three functional items "check, fix and set", in the future, 
> maybe we can add more item.
>> Then, for each functional item, we need to create a sys file and add related 
> code (actual some code is duplicated),
>> I prefer to one sys file to handle multiple sub-commands.
> 
> No, sorry, that is not how sysfs works.  Please use individual files,
> again, sysfs is "one value per file" you should never have to write a
> "parser" for a sysfs file either reading, or writing to it.
> 
> If you need additional things in the future, great, add new sysfs files,
> that makes it the easiest way for your userspace tools to be able to
> determine if that feature is present in the kernel or not, it does not
> have to write a command that it doesn't know if the kernel can handle or
> not.
> 
> thanks,
> 
> greg k-h




More information about the Ocfs2-devel mailing list