Files
ubports_kernel_google_msm/include/linux
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
..
2008-07-25 10:53:30 -07:00
2008-10-13 21:51:51 +01:00
2008-09-12 16:30:20 -07:00
2008-08-12 10:13:38 +10:00
2008-07-24 10:47:33 -07:00
2008-07-24 10:47:33 -07:00
2008-10-09 08:56:22 +02:00
2008-08-04 21:56:09 -07:00
2008-07-25 10:53:33 -07:00
2008-10-10 13:37:12 +01:00
2008-08-28 11:49:15 -05:00
2008-10-12 12:05:55 +02:00
2008-07-24 10:47:29 -07:00
2008-08-20 13:19:51 -07:00
2008-10-08 19:44:18 -04:00
2008-08-12 16:07:31 -07:00
2008-07-26 20:53:20 -04:00
2008-07-25 10:53:48 -07:00
2008-09-22 07:29:31 +01:00
2008-07-25 10:53:30 -07:00
2008-10-14 23:51:02 +02:00
2008-07-31 18:45:41 +02:00
2008-08-08 15:13:27 +01:00
2008-08-28 08:33:23 +02:00
2008-07-25 10:53:42 -07:00
2008-10-09 11:59:55 -07:00
2008-09-22 21:28:11 -07:00
2008-08-02 18:36:10 +01:00
2008-10-07 15:34:37 -07:00
2008-07-25 10:53:39 -07:00
2008-07-30 09:41:45 -07:00
2008-10-12 11:44:37 -07:00
2008-08-25 17:28:25 +03:00
2008-09-01 09:47:16 +02:00
2008-08-11 15:25:07 +02:00
2008-10-13 09:47:43 +11:00
2008-10-09 08:56:06 +02:00
2008-07-27 01:56:38 +02:00
2008-07-27 01:54:58 +02:00
2008-08-02 16:28:50 +02:00
2008-07-28 16:30:21 -07:00
2008-10-14 23:50:47 +02:00
2008-07-25 10:53:34 -07:00
2008-08-26 10:37:20 -07:00
2008-10-01 07:03:24 -07:00
2008-07-26 11:48:04 +02:00
2008-08-04 21:31:34 -07:00
2008-08-04 21:31:34 -07:00
2008-07-26 12:00:03 -07:00
2008-10-08 16:38:41 -07:00
2008-08-05 14:33:50 -07:00
2008-09-16 19:35:05 -07:00
2008-08-07 17:18:47 -07:00
2008-10-02 15:53:13 -07:00
2008-07-25 10:53:29 -07:00
2008-08-15 17:03:06 +02:00
2008-08-22 16:29:57 -04:00
2008-08-20 15:40:32 -07:00
2008-09-22 19:51:15 -07:00
2008-10-12 12:37:32 +02:00
2008-07-25 10:53:42 -07:00
2008-10-07 14:22:33 -07:00
2008-08-05 09:28:47 +03:00
2008-07-25 10:53:30 -07:00
2008-09-09 17:41:42 +02:00
2008-08-11 09:30:24 +02:00
2008-07-26 12:00:12 -07:00
2008-07-26 20:53:12 -04:00
2008-10-07 14:43:06 -07:00
2008-10-13 09:51:40 -07:00
2008-09-05 14:39:38 -07:00
2008-08-16 16:45:56 -07:00
2008-07-25 10:53:40 -07:00