sysfs: refill attribute buffer when reading from offset 0
authorDan Williams <dan.j.williams@intel.com>
Mon, 7 Apr 2008 22:35:01 +0000 (15:35 -0700)
committerGreg Kroah-Hartman <gregkh@suse.de>
Sun, 20 Apr 2008 02:10:29 +0000 (19:10 -0700)
commit2424b5dd062cbe3e0578ae7b11a1b360ad22f451
tree75b6d67412969074237a371947280b419c5d43db
parentb844eba292b477cda14582bfc6f535deed57a82d
sysfs: refill attribute buffer when reading from offset 0

Requiring userspace to close and re-open sysfs attributes has been the
policy since before 2.6.12.  It allows userspace to get a consistent
snapshot of kernel state and consume it with incremental reads and seeks.

Now, if the file position is zero the kernel assumes userspace wants to see
the new value.  The application for this change is to allow a userspace
RAID metadata handler to check the state of an array without causing any
memory allocations.  Thus not causing writeback to a raid array that might
be blocked waiting for userspace to take action.

Cc: Neil Brown <neilb@suse.de>
Acked-by: Tejun Heo <htejun@gmail.com>
Signed-off-by: Dan Williams <dan.j.williams@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Documentation/filesystems/sysfs.txt
fs/sysfs/file.c