Messages in this thread | | | From | "J. R. Okajima" <> | Subject | Re: [autofs] [PATCH 04/38] autofs4: Save autofs trigger's vfsmount in super block info | Date | Wed, 23 Jun 2010 11:07:13 +0900 |
| |
Ian Kent: > I may be missing something about this, but why is it safe to use > iterate_mounts(), since it doesn't take the vfsmount_lock when > traversing the list of mounts?
The sample code was not correct. We need to acquire vfsmount_lock or down_read(namespace_sem).
Or it may be better to extract the body of iterate_mounts() and create a new function __iterate_mounts() such like that.
__iterate_mounts() { /* equiv to the current iterate_mounts */ }
iterate_mount() { down_read(namespace_sem); or spin_lock(&vfsmount_lock);
__iterate_mount();
spin_unlock(&vfsmount_lock); or up_read(namespace_sem); }
J. R. Okajima
| |