mirror of
git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2025-09-04 20:19:47 +08:00
pstore: switch to locked_recursive_removal()
rather than playing with manual d_invalidate() Reviewed-by: Christian Brauner <brauner@kernel.org> Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
This commit is contained in:
parent
eacb58fdca
commit
7b7a8ca43f
@ -300,7 +300,7 @@ static struct dentry *psinfo_lock_root(void)
|
||||
return NULL;
|
||||
|
||||
root = pstore_sb->s_root;
|
||||
inode_lock(d_inode(root));
|
||||
inode_lock_nested(d_inode(root), I_MUTEX_PARENT);
|
||||
|
||||
return root;
|
||||
}
|
||||
@ -318,8 +318,7 @@ int pstore_put_backend_records(struct pstore_info *psi)
|
||||
list_for_each_entry_safe(pos, tmp, &records_list, list) {
|
||||
if (pos->record->psi == psi) {
|
||||
list_del_init(&pos->list);
|
||||
d_invalidate(pos->dentry);
|
||||
simple_unlink(d_inode(root), pos->dentry);
|
||||
locked_recursive_removal(pos->dentry, NULL);
|
||||
pos->dentry = NULL;
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user