mirror of
https://github.com/torvalds/linux.git
synced 2026-05-25 07:33:19 +02:00
fs: unconditionally use atime_needs_update() in pick_link()
Vast majority of the time the func returns false. This avoids a branch to determine whether we are in RCU mode. Signed-off-by: Mateusz Guzik <mjguzik@gmail.com> Link: https://lore.kernel.org/20250408073641.1799151-1-mjguzik@gmail.com Signed-off-by: Christian Brauner <brauner@kernel.org>
This commit is contained in:
parent
c9b380a017
commit
e45960c279
10
fs/namei.c
10
fs/namei.c
|
|
@ -1905,13 +1905,13 @@ static const char *pick_link(struct nameidata *nd, struct path *link,
|
|||
unlikely(link->mnt->mnt_flags & MNT_NOSYMFOLLOW))
|
||||
return ERR_PTR(-ELOOP);
|
||||
|
||||
if (!(nd->flags & LOOKUP_RCU)) {
|
||||
if (unlikely(atime_needs_update(&last->link, inode))) {
|
||||
if (nd->flags & LOOKUP_RCU) {
|
||||
if (!try_to_unlazy(nd))
|
||||
return ERR_PTR(-ECHILD);
|
||||
}
|
||||
touch_atime(&last->link);
|
||||
cond_resched();
|
||||
} else if (atime_needs_update(&last->link, inode)) {
|
||||
if (!try_to_unlazy(nd))
|
||||
return ERR_PTR(-ECHILD);
|
||||
touch_atime(&last->link);
|
||||
}
|
||||
|
||||
error = security_inode_follow_link(link->dentry, inode,
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user