Messages in this thread | | | From | Kay Sievers <> | Date | Sat, 23 May 2009 22:46:27 +0200 | Subject | Re: [PATCH 04/20] sysfs: Handle the general case of removing of directories with subdirectories |
| |
On Sat, May 23, 2009 at 22:09, Eric W. Biederman <ebiederm@xmission.com> wrote: > Kay Sievers <kay.sievers@vrfy.org> writes: >> What's the problem in /sys/dev/? There are just a bunch of symlinks, >> one for every device with a dev_t, and all in flat directories, and no >> directory to remove. > > device_shutdown called during reboot removes /sys/dev/block and /sys/dev/char. > The current sysfs_remove_dir (because it empties directories) > removes all of those symlinks. > > The problem is that it is the device objects for each individual > device that owns those symlinks, and normally removes those symlinks. > > Which means that in theory we could have double deletion going on. > > In practice today it doesn't matter because this is at reboot. > > And as far as that goes it is wrong to remove anything from sysfs during > device_shutdown so the fix is just to not call kobject_put there.
Yes, that's just a bug. These directories should never be removed.
Thanks, Kay
| |