linux_dsm_epyc7002/fs/ocfs2
Al Viro 9e1f1de02c more conservative S_NOSEC handling
Caching "we have already removed suid/caps" was overenthusiastic as merged.
On network filesystems we might have had suid/caps set on another client,
silently picked by this client on revalidate, all of that *without* clearing
the S_NOSEC flag.

AFAICS, the only reasonably sane way to deal with that is
	* new superblock flag; unless set, S_NOSEC is not going to be set.
	* local block filesystems set it in their ->mount() (more accurately,
mount_bdev() does, so does btrfs ->mount(), users of mount_bdev() other than
local block ones clear it)
	* if any network filesystem (or a cluster one) wants to use S_NOSEC,
it'll need to set MS_NOSEC in sb->s_flags *AND* take care to clear S_NOSEC when
inode attribute changes are picked from other clients.

It's not an earth-shattering hole (anybody that can set suid on another client
will almost certainly be able to write to the file before doing that anyway),
but it's a bug that needs fixing.

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
2011-06-03 18:24:58 -04:00
..
cluster ocfs2: remove the /sys/o2cb symlink 2011-05-23 23:37:14 -07:00
dlm ocfs2/dlm: Do not migrate resource to a node that is leaving the domain 2011-05-25 21:05:22 -07:00
dlmfs ocfs2: change incorrect 'extern' keyword to 'static' in dlmfs 2011-05-23 23:59:40 -07:00
acl.c Merge branch 'upstream-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jlbec/ocfs2 2011-03-28 13:03:31 -07:00
acl.h
alloc.c ocfs2: Add trace event for trim. 2011-05-23 23:37:20 -07:00
alloc.h ocfs2: Add ocfs2_trim_fs for SSD trim support. 2011-05-23 23:37:18 -07:00
aops.c Merge branch 'upstream-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jlbec/ocfs2 2011-03-28 13:03:31 -07:00
aops.h Fix common misspellings 2011-03-31 11:26:23 -03:00
blockcheck.c
blockcheck.h
buffer_head_io.c
buffer_head_io.h
dcache.c
dcache.h
dir.c ocfs2: Initialize data_ac (might be used uninitialized) 2011-05-13 11:26:15 -07:00
dir.h
dlmglue.c Merge branch 'mlog_replace_for_39' of git://repo.or.cz/taoma-kernel into ocfs2-merge-window-fix 2011-03-28 09:44:26 -07:00
dlmglue.h
export.c
export.h
extent_map.c
extent_map.h
file.c Ocfs2: Teach local-mounted ocfs2 to handle unwritten_extents correctly. 2011-05-25 21:06:28 -07:00
file.h
heartbeat.c
heartbeat.h
inode.c Fix common misspellings 2011-03-31 11:26:23 -03:00
inode.h
ioctl.c Merge branch 'move_extents' of git://oss.oracle.com/git/tye/linux-2.6 into ocfs2-merge-window 2011-05-25 21:51:55 -07:00
ioctl.h
journal.c ocfs2: Skip mount recovery for hard-ro mounts 2011-05-13 11:27:14 -07:00
journal.h Fix common misspellings 2011-03-31 11:26:23 -03:00
Kconfig
localalloc.c
localalloc.h
locks.c
locks.h
Makefile Ocfs2/move_extents: Add basic framework and source files for extent moving. 2011-05-25 15:17:08 +08:00
mmap.c
mmap.h
move_extents.c Ocfs2/move_extents: Validate moving goal after the adjustment. 2011-05-27 14:52:57 +08:00
move_extents.h Ocfs2/move_extents: move/defrag extents within a certain range. 2011-05-25 15:17:12 +08:00
namei.c Fix common misspellings 2011-03-31 11:26:23 -03:00
namei.h
ocfs1_fs_compat.h
ocfs2_fs.h Revert wrong fixes for common misspellings 2011-04-26 23:31:11 -07:00
ocfs2_ioctl.h Ocfs2/move_extents: Adding new ioctl code 'OCFS2_IOC_MOVE_EXT' to ocfs2. 2011-05-25 15:17:08 +08:00
ocfs2_lockid.h
ocfs2_lockingver.h
ocfs2_trace.h ocfs2: Add trace event for trim. 2011-05-23 23:37:20 -07:00
ocfs2.h Merge branch 'upstream-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jlbec/ocfs2 2011-03-28 13:03:31 -07:00
quota_global.c Fix common misspellings 2011-03-31 11:26:23 -03:00
quota_local.c
quota.h
refcounttree.c Ocfs2/refcounttree: Publicize couple of funcs from refcounttree.c 2011-05-25 15:17:08 +08:00
refcounttree.h Ocfs2/refcounttree: Publicize couple of funcs from refcounttree.c 2011-05-25 15:17:08 +08:00
reservations.c
reservations.h Fix common misspellings 2011-03-31 11:26:23 -03:00
resize.c
resize.h
slot_map.c
slot_map.h
stack_o2cb.c
stack_user.c
stackglue.c
stackglue.h Fix common misspellings 2011-03-31 11:26:23 -03:00
suballoc.c Fix common misspellings 2011-03-31 11:26:23 -03:00
suballoc.h
super.c more conservative S_NOSEC handling 2011-06-03 18:24:58 -04:00
super.h
symlink.c
symlink.h
sysfile.c
sysfile.h
uptodate.c
uptodate.h
ver.c
ver.h
xattr.c Fix common misspellings 2011-03-31 11:26:23 -03:00
xattr.h