|| ||Denis Karpov <email@example.com> |
|| ||firstname.lastname@example.org |
|| ||[PATCH 0/5][V2] FS: userspace notification of errors |
|| ||Thu, 11 Jun 2009 15:24:44 +0300|
|| ||email@example.com, firstname.lastname@example.org,
|| ||Article, Thread
here's a set of patches that implement user space notification of file
system run-rim errors through sysfs/uevents. The first approach was
Reasons behind the feature are summarized here:
Hand-held device with large (large => lengthy/expensive fsck process)
FAT volumes on MMC that are error prone, especially in the scenario
when these volumes are exported through g_file_storage as USB mass
storage to be used externally; instead of just remounting read-only
on 'run-rime' error, notify user space and expect it to do something
about fixing the FS.
- add sysfs support for FAT fs: per-mounted-volume kobject and sysfs
hierarchy under /sys/fs/fat. Same approach as used by ext4 and fuse.
- introduce kobject attribute 'fs_fault' (/sys/fs/fat/<volume>/fs_fault);
the attribute is '0' on (re)mount and set to '1' upon an error. (PATCH 3)
FAT error reporting facilities had to be re-factored (PATCH 2) in
order to simplify sending error notifications. (PATCH 2)
- provide mechanism to optionally notify userspace of FAT fs volume
kobject's attribute changes with uevents. An uevent to be sent is of
tyme KOBJ_CHANGE, with environment variable 'NAME=value', where NAME
is capitalized name of the attribute.
- add mount option 'notify', which will eneble sending uevents on a FAT
kobjects attributes; use it for 'fs_faults' attribute. (PATCH 5)
There were several objections to uevent usage, mostly with argument that
uevents are meant to be used within a device context. One might argue that
uevents are tied to kobjects that are not only used to represent devices,
but also for other things (/sys/modules, /sys/fs, /sys/firmware).
What is wrong with using uevents otherwise? What would be another way to
asyncronousely notify userspace of things happening in kernel, other
than though pseudo filesystem files (procfs, sysfs)?
To unsubscribe from this list: send the line "unsubscribe linux-fsdevel" in
the body of a message to email@example.com
More majordomo info at http://vger.kernel.org/majordomo-info.html