aboutsummaryrefslogtreecommitdiff
path: root/sys/fs/tmpfs/tmpfs_vnops.c
diff options
context:
space:
mode:
Diffstat (limited to 'sys/fs/tmpfs/tmpfs_vnops.c')
-rw-r--r--sys/fs/tmpfs/tmpfs_vnops.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/sys/fs/tmpfs/tmpfs_vnops.c b/sys/fs/tmpfs/tmpfs_vnops.c
index 3b64b73ab4fb..3ee90251f2fc 100644
--- a/sys/fs/tmpfs/tmpfs_vnops.c
+++ b/sys/fs/tmpfs/tmpfs_vnops.c
@@ -331,6 +331,12 @@ tmpfs_access(struct vop_access_args *v)
node = VP_TO_TMPFS_NODE(vp);
+ /*
+ * Common case path lookup.
+ */
+ if (__predict_true(accmode == VEXEC && (node->tn_mode & 0111) == 0111))
+ return (0);
+
switch (vp->v_type) {
case VDIR:
/* FALLTHROUGH */