lkml.org 
[lkml]   [2019]   [Jan]   [8]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 13/16] tools include uapi: Grab a copy of linux/mount.h
    Date
    From: Arnaldo Carvalho de Melo <acme@redhat.com>

    We were using a copy of uapi/linux/fs.h to create the mount syscall
    'flags' string table to use in 'perf trace', to convert from the number
    obtained via the raw_syscalls:sys_enter into a string, using
    tools/perf/trace/beauty/mount_flags.sh, but in e262e32d6bde ("vfs:
    Suppress MS_* flag defs within the kernel unless explicitly enabled")
    those defines got moved to linux/mount.h, so grab a copy of mount.h too.

    Keep the uapi/linux/fs.h as we'll use it for the SEEK_ constants.

    Cc: Adrian Hunter <adrian.hunter@intel.com>
    Cc: David Howells <dhowells@redhat.com>
    Cc: Jiri Olsa <jolsa@kernel.org>
    Cc: Luis Cláudio Gonçalves <lclaudio@redhat.com>
    Cc: Namhyung Kim <namhyung@kernel.org>
    Cc: Wang Nan <wangnan0@huawei.com>
    Link: https://lkml.kernel.org/n/tip-i2ricmpwpdrpukfq3298jr1z@git.kernel.org
    Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
    ---
    tools/include/uapi/linux/mount.h | 58 ++++++++++++++++++++++++++++++++
    tools/perf/check-headers.sh | 1 +
    2 files changed, 59 insertions(+)
    create mode 100644 tools/include/uapi/linux/mount.h

    diff --git a/tools/include/uapi/linux/mount.h b/tools/include/uapi/linux/mount.h
    new file mode 100644
    index 000000000000..3f9ec42510b0
    --- /dev/null
    +++ b/tools/include/uapi/linux/mount.h
    @@ -0,0 +1,58 @@
    +#ifndef _UAPI_LINUX_MOUNT_H
    +#define _UAPI_LINUX_MOUNT_H
    +
    +/*
    + * These are the fs-independent mount-flags: up to 32 flags are supported
    + *
    + * Usage of these is restricted within the kernel to core mount(2) code and
    + * callers of sys_mount() only. Filesystems should be using the SB_*
    + * equivalent instead.
    + */
    +#define MS_RDONLY 1 /* Mount read-only */
    +#define MS_NOSUID 2 /* Ignore suid and sgid bits */
    +#define MS_NODEV 4 /* Disallow access to device special files */
    +#define MS_NOEXEC 8 /* Disallow program execution */
    +#define MS_SYNCHRONOUS 16 /* Writes are synced at once */
    +#define MS_REMOUNT 32 /* Alter flags of a mounted FS */
    +#define MS_MANDLOCK 64 /* Allow mandatory locks on an FS */
    +#define MS_DIRSYNC 128 /* Directory modifications are synchronous */
    +#define MS_NOATIME 1024 /* Do not update access times. */
    +#define MS_NODIRATIME 2048 /* Do not update directory access times */
    +#define MS_BIND 4096
    +#define MS_MOVE 8192
    +#define MS_REC 16384
    +#define MS_VERBOSE 32768 /* War is peace. Verbosity is silence.
    + MS_VERBOSE is deprecated. */
    +#define MS_SILENT 32768
    +#define MS_POSIXACL (1<<16) /* VFS does not apply the umask */
    +#define MS_UNBINDABLE (1<<17) /* change to unbindable */
    +#define MS_PRIVATE (1<<18) /* change to private */
    +#define MS_SLAVE (1<<19) /* change to slave */
    +#define MS_SHARED (1<<20) /* change to shared */
    +#define MS_RELATIME (1<<21) /* Update atime relative to mtime/ctime. */
    +#define MS_KERNMOUNT (1<<22) /* this is a kern_mount call */
    +#define MS_I_VERSION (1<<23) /* Update inode I_version field */
    +#define MS_STRICTATIME (1<<24) /* Always perform atime updates */
    +#define MS_LAZYTIME (1<<25) /* Update the on-disk [acm]times lazily */
    +
    +/* These sb flags are internal to the kernel */
    +#define MS_SUBMOUNT (1<<26)
    +#define MS_NOREMOTELOCK (1<<27)
    +#define MS_NOSEC (1<<28)
    +#define MS_BORN (1<<29)
    +#define MS_ACTIVE (1<<30)
    +#define MS_NOUSER (1<<31)
    +
    +/*
    + * Superblock flags that can be altered by MS_REMOUNT
    + */
    +#define MS_RMT_MASK (MS_RDONLY|MS_SYNCHRONOUS|MS_MANDLOCK|MS_I_VERSION|\
    + MS_LAZYTIME)
    +
    +/*
    + * Old magic mount flag and mask
    + */
    +#define MS_MGC_VAL 0xC0ED0000
    +#define MS_MGC_MSK 0xffff0000
    +
    +#endif /* _UAPI_LINUX_MOUNT_H */
    diff --git a/tools/perf/check-headers.sh b/tools/perf/check-headers.sh
    index 6cb98f8570a2..b51e952ab35f 100755
    --- a/tools/perf/check-headers.sh
    +++ b/tools/perf/check-headers.sh
    @@ -10,6 +10,7 @@ include/uapi/linux/fs.h
    include/uapi/linux/kcmp.h
    include/uapi/linux/kvm.h
    include/uapi/linux/in.h
    +include/uapi/linux/mount.h
    include/uapi/linux/perf_event.h
    include/uapi/linux/prctl.h
    include/uapi/linux/sched.h
    --
    2.20.1
    \
     
     \ /
      Last update: 2019-01-08 21:01    [W:4.120 / U:0.304 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site