aboutsummaryrefslogtreecommitdiff
path: root/sys/conf/files.arm64
diff options
context:
space:
mode:
authorKonstantin Belousov <kib@FreeBSD.org>2021-04-01 17:42:14 +0000
committerKonstantin Belousov <kib@FreeBSD.org>2021-04-02 12:40:25 +0000
commit76b1b5ce6d81f66b09be8a20aecd064b65fd6b50 (patch)
treea37a34e19425d771008b2f7fa1961ac9c70482fc /sys/conf/files.arm64
parent9bad2638cc1882b44adb29a1cb1234f79e5c29f1 (diff)
downloadsrc-76b1b5ce6d81f66b09be8a20aecd064b65fd6b50.tar.gz
src-76b1b5ce6d81f66b09be8a20aecd064b65fd6b50.zip
nullfs: protect against user creating inconsistent state
The VFS conventions is that VOP_LOOKUP() methods do not need to handle ISDOTDOT lookups for VV_ROOT vnodes (since they cannot, after all). Nullfs bypasses VOP_LOOKUP() to lower filesystem, and there, due to user actions, it is possible to get into situation where - upper vnode does not have VV_ROOT set - lower vnode is root - ISDOTDOT is requested User just needs to nullfs-mount non-root of some filesystem, and then move some directory under mount, out of mount, using lower filesystem. In this case, nullfs cannot do much, but we still should and can ensure internal kernel structures are consistent. Avoid ISDOTDOT lookup forwarding when VV_ROOT is set on lower dvp, return somewhat arbitrary ENOENT. PR: 253593 Reported by: Gregor Koscak <elogin41@gmail.com> Test by: Patrick Sullivan <sulli00777@gmail.com> Tested by: pho Sponsored by: The FreeBSD Foundation MFC after: 1 week
Diffstat (limited to 'sys/conf/files.arm64')
0 files changed, 0 insertions, 0 deletions