Messages in this thread | | | Date | Sun, 03 Jan 2010 09:02:24 +0900 | From | Tejun Heo <> | Subject | Re: [PATCH] sysfs: Add lockdep annotations for the sysfs active reference |
| |
On 01/03/2010 06:37 AM, Eric W. Biederman wrote: > > Holding locks over device_del -> kobject_del -> sysfs_deactivate can > cause deadlocks if those same locks are grabbed in sysfs show or store > methods. > > The I model s_active count + completion as a sleeping read/write lock. > I describe to lockdep sysfs_get_active as a read_trylock, > sysfs_put_active as a read_unlock, and sysfs_deactivate as a > write_lock and write_unlock pair. This seems to capture the essence > for purposes of finding deadlocks, and in my testing gives finds real > issues and ignores non-issues. > > This brings us back to holding locks over kobject_del is a problem > that ideally we should find a way of addressing, but at least lockdep > can tell us about the problems instead of requiring developers to debug > rare strange system deadlocks, that happen when sysfs files are removed > while being written to. > > Signed-off-by: Eric W. Biederman <ebiederm@xmission.com>
Looks good to me.
Acked-by: Tejun Heo <tj@kernel.org>
Thanks for doing this.
-- tejun
| |