linux/arch
David Howells 93766fbd26 vfs: syscall: Add fsmount() to create a mount for a superblock
Provide a system call by which a filesystem opened with fsopen() and
configured by a series of fsconfig() calls can have a detached mount object
created for it.  This mount object can then be attached to the VFS mount
hierarchy using move_mount() by passing the returned file descriptor as the
from directory fd.

The system call looks like:

	int mfd = fsmount(int fsfd, unsigned int flags,
			  unsigned int attr_flags);

where fsfd is the file descriptor returned by fsopen().  flags can be 0 or
FSMOUNT_CLOEXEC.  attr_flags is a bitwise-OR of the following flags:

	MOUNT_ATTR_RDONLY	Mount read-only
	MOUNT_ATTR_NOSUID	Ignore suid and sgid bits
	MOUNT_ATTR_NODEV	Disallow access to device special files
	MOUNT_ATTR_NOEXEC	Disallow program execution
	MOUNT_ATTR__ATIME	Setting on how atime should be updated
	MOUNT_ATTR_RELATIME	- Update atime relative to mtime/ctime
	MOUNT_ATTR_NOATIME	- Do not update access times
	MOUNT_ATTR_STRICTATIME	- Always perform atime updates
	MOUNT_ATTR_NODIRATIME	Do not update directory access times

In the event that fsmount() fails, it may be possible to get an error
message by calling read() on fsfd.  If no message is available, ENODATA
will be reported.

Signed-off-by: David Howells <dhowells@redhat.com>
cc: linux-api@vger.kernel.org
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
2019-03-20 18:49:06 -04:00
..
alpha Kbuild updates for v5.1 (2nd) 2019-03-17 13:25:26 -07:00
arc kbuild: force all architectures except um to include mandatory-y 2019-03-17 12:56:32 +09:00
arm Make anon_inodes unconditional 2019-03-20 18:49:06 -04:00
arm64 Make anon_inodes unconditional 2019-03-20 18:49:06 -04:00
c6x kbuild: force all architectures except um to include mandatory-y 2019-03-17 12:56:32 +09:00
csky kbuild: force all architectures except um to include mandatory-y 2019-03-17 12:56:32 +09:00
h8300 kbuild: force all architectures except um to include mandatory-y 2019-03-17 12:56:32 +09:00
hexagon kbuild: force all architectures except um to include mandatory-y 2019-03-17 12:56:32 +09:00
ia64 Kbuild updates for v5.1 (2nd) 2019-03-17 13:25:26 -07:00
m68k kbuild: force all architectures except um to include mandatory-y 2019-03-17 12:56:32 +09:00
microblaze Kbuild updates for v5.1 (2nd) 2019-03-17 13:25:26 -07:00
mips Make anon_inodes unconditional 2019-03-20 18:49:06 -04:00
nds32 kbuild: force all architectures except um to include mandatory-y 2019-03-17 12:56:32 +09:00
nios2 kbuild: force all architectures except um to include mandatory-y 2019-03-17 12:56:32 +09:00
openrisc kbuild: force all architectures except um to include mandatory-y 2019-03-17 12:56:32 +09:00
parisc Kbuild updates for v5.1 (2nd) 2019-03-17 13:25:26 -07:00
powerpc Make anon_inodes unconditional 2019-03-20 18:49:06 -04:00
riscv kbuild: force all architectures except um to include mandatory-y 2019-03-17 12:56:32 +09:00
s390 Make anon_inodes unconditional 2019-03-20 18:49:06 -04:00
sh kbuild: force all architectures except um to include mandatory-y 2019-03-17 12:56:32 +09:00
sparc Kbuild updates for v5.1 (2nd) 2019-03-17 13:25:26 -07:00
um Merge branch 'for-linus-5.1-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rw/uml 2019-03-15 15:07:32 -07:00
unicore32 kbuild: force all architectures except um to include mandatory-y 2019-03-17 12:56:32 +09:00
x86 vfs: syscall: Add fsmount() to create a mount for a superblock 2019-03-20 18:49:06 -04:00
xtensa kbuild: force all architectures except um to include mandatory-y 2019-03-17 12:56:32 +09:00
.gitignore
Kconfig Char/Misc driver patches for 5.1-rc1 2019-03-06 14:18:59 -08:00