linux/fs/sysfs
Neil Brown f1282c844e sysfs: Support sysfs_notify from atomic context with new sysfs_notify_dirent
Support sysfs_notify from atomic context with new sysfs_notify_dirent

sysfs_notify currently takes sysfs_mutex.
This means that it cannot be called in atomic context.
sysfs_mutex  is sometimes held over a malloc (sysfs_rename_dir)
so it can block on low memory.

In md I want to be able to notify on a sysfs attribute from
atomic context, and I don't want to block on low memory because I
could be in the writeout path for freeing memory.

So:
 - export the "sysfs_dirent" structure along with sysfs_get, sysfs_put
   and sysfs_get_dirent so I can get the sysfs_dirent that I want to
   notify on and hold it in an md structure.
 - split sysfs_notify_dirent out of sysfs_notify so the sysfs_dirent
   can be notified on with no blocking (just a spinlock).

Signed-off-by: Neil Brown <neilb@suse.de>
Acked-by: Tejun Heo <tj@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2008-10-16 09:24:47 -07:00
..
Makefile Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
bin.c sysfs: add copyrights 2007-10-12 14:51:12 -07:00
dir.c sysfs: Support sysfs_notify from atomic context with new sysfs_notify_dirent 2008-10-16 09:24:47 -07:00
file.c sysfs: Support sysfs_notify from atomic context with new sysfs_notify_dirent 2008-10-16 09:24:47 -07:00
group.c Use WARN() in fs/sysfs 2008-07-26 12:00:07 -07:00
inode.c sysfs: Disallow truncation of files in sysfs 2008-04-30 16:52:46 -07:00
mount.c sysfs: Support sysfs_notify from atomic context with new sysfs_notify_dirent 2008-10-16 09:24:47 -07:00
symlink.c driver core: Suppress sysfs warnings for device_rename(). 2008-07-21 21:55:01 -07:00
sysfs.h sysfs: Support sysfs_notify from atomic context with new sysfs_notify_dirent 2008-10-16 09:24:47 -07:00