mirror of
https://github.com/Fishwaldo/Star64_linux.git
synced 2025-06-22 14:41:27 +00:00
audit: ignore fcaps on umount
Don't fetch fcaps when umount2 is called to avoid a process hang while it waits for the missing resource to (possibly never) re-appear. Note the comment above user_path_mountpoint_at(): * A umount is a special case for path walking. We're not actually interested * in the inode in this situation, and ESTALE errors can be a problem. We * simply want track down the dentry and vfsmount attached at the mountpoint * and avoid revalidating the last component. This can happen on ceph, cifs, 9p, lustre, fuse (gluster) or NFS. Please see the github issue tracker https://github.com/linux-audit/audit-kernel/issues/100 Signed-off-by: Richard Guy Briggs <rgb@redhat.com> [PM: merge fuzz in audit_log_fcaps()] Signed-off-by: Paul Moore <paul@paul-moore.com>
This commit is contained in:
parent
05c7a9cb27
commit
57d4657716
7 changed files with 29 additions and 11 deletions
|
@ -1856,7 +1856,7 @@ out:
|
|||
n->type = AUDIT_TYPE_NORMAL;
|
||||
}
|
||||
handle_path(dentry);
|
||||
audit_copy_inode(n, dentry, inode);
|
||||
audit_copy_inode(n, dentry, inode, flags & AUDIT_INODE_NOEVAL);
|
||||
}
|
||||
|
||||
void __audit_file(const struct file *file)
|
||||
|
@ -1955,7 +1955,7 @@ void __audit_inode_child(struct inode *parent,
|
|||
n = audit_alloc_name(context, AUDIT_TYPE_PARENT);
|
||||
if (!n)
|
||||
return;
|
||||
audit_copy_inode(n, NULL, parent);
|
||||
audit_copy_inode(n, NULL, parent, 0);
|
||||
}
|
||||
|
||||
if (!found_child) {
|
||||
|
@ -1974,7 +1974,7 @@ void __audit_inode_child(struct inode *parent,
|
|||
}
|
||||
|
||||
if (inode)
|
||||
audit_copy_inode(found_child, dentry, inode);
|
||||
audit_copy_inode(found_child, dentry, inode, 0);
|
||||
else
|
||||
found_child->ino = AUDIT_INO_UNSET;
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue