On Tue, 3 May 2016, Josh Poimboeuf wrote:

> > 1. Do we really need a completion? If I am not missing something
> > kobject_del() always waits for sysfs callers to leave thanks to kernfs
> > active protection.
> 
> What do you mean by "kernfs active protection"?  I see that
> kernfs_remove() gets the kernfs_mutex lock, but I can't find anywhere
> that a write to a sysfs file uses that lock.
> 
> I'm probably missing something...

I don't want to speak on Miroslav's behalf, but I'm pretty sure that what 
he has on mind is per-kernfs_node active refcounting kernfs does (see 
kernfs_node->active, and especially it's usage in __kernfs_remove()).

More specifically, execution of store() and show() sysfs callbacks is 
guaranteed (by kernfs) to happen with that particular attribute's active 
reference held for reading (and that makes it impossible for that 
attribute to vanish prematurely).

-- 
Jiri Kosina
SUSE Labs

Reply via email to