diff options
| author | Jeff Mahoney <[email protected]> | 2007-04-11 23:28:46 -0700 |
|---|---|---|
| committer | Linus Torvalds <[email protected]> | 2007-04-12 15:31:42 -0700 |
| commit | c3724b129b5a1a1789a2dc5348685a236ae02479 (patch) | |
| tree | d664a2d672b62c9bde71992cdd8e1b7904f5e3d0 /include/linux/debugobjects.h | |
| parent | 6d205f120547043de663315698dcf5f0eaa31b5c (diff) | |
[PATCH] autofs4: fix race in unhashed dentry code
Commit f50b6f8691cae2e0064c499dd3ef3f31142987f0 introduced a race in
autofs4 between autofs_lookup_unhashed() and autofs_dentry_release().
autofs_dentry_release() ends up clearing the ->dentry and ->inode members
of autofs_info before removing it from the rehash list. The list is
protected by the rehash lock in both functions, but since
autofs_dentry_release() starts tearing the autofs_info struct down before
removing it from the list, autofs_lookup_unhashed() can get a autofs_info
with a NULL dentry.
This patch moves the clearing of ->dentry and ->inode after the removal
from the rehash list.
Signed-off-by: Jeff Mahoney <[email protected]>
Acked-by: Ian Kent <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
Diffstat (limited to 'include/linux/debugobjects.h')
0 files changed, 0 insertions, 0 deletions