VisionFive2 Linux kernel

StarFive Tech Linux Kernel for VisionFive (JH7110) boards (mirror)

More than 9999 Commits   32 Branches   54 Tags
59bd9ded4d780 (Thomas Gleixner   2019-05-28 10:10:12 -0700  1) /* SPDX-License-Identifier: GPL-2.0-only */
07b20889e3052 (Ram Pai           2005-11-07 17:19:07 -0500  2) /*
07b20889e3052 (Ram Pai           2005-11-07 17:19:07 -0500  3)  *  linux/fs/pnode.h
07b20889e3052 (Ram Pai           2005-11-07 17:19:07 -0500  4)  *
07b20889e3052 (Ram Pai           2005-11-07 17:19:07 -0500  5)  * (C) Copyright IBM Corporation 2005.
07b20889e3052 (Ram Pai           2005-11-07 17:19:07 -0500  6)  */
07b20889e3052 (Ram Pai           2005-11-07 17:19:07 -0500  7) #ifndef _LINUX_PNODE_H
07b20889e3052 (Ram Pai           2005-11-07 17:19:07 -0500  8) #define _LINUX_PNODE_H
07b20889e3052 (Ram Pai           2005-11-07 17:19:07 -0500  9) 
07b20889e3052 (Ram Pai           2005-11-07 17:19:07 -0500 10) #include <linux/list.h>
b2dba1af3c415 (Al Viro           2011-11-23 19:26:23 -0500 11) #include "mount.h"
03e06e68ff762 (Ram Pai           2005-11-07 17:19:33 -0500 12) 
fc7be130c7e91 (Al Viro           2011-11-25 01:05:37 -0500 13) #define IS_MNT_SHARED(m) ((m)->mnt.mnt_flags & MNT_SHARED)
fc7be130c7e91 (Al Viro           2011-11-25 01:05:37 -0500 14) #define IS_MNT_SLAVE(m) ((m)->mnt_master)
ee2e3f50629f1 (Christian Brauner 2021-03-06 11:10:10 +0100 15) #define IS_MNT_NEW(m)  (!(m)->mnt_ns || is_anon_ns((m)->mnt_ns))
fc7be130c7e91 (Al Viro           2011-11-25 01:05:37 -0500 16) #define CLEAR_MNT_SHARED(m) ((m)->mnt.mnt_flags &= ~MNT_SHARED)
fc7be130c7e91 (Al Viro           2011-11-25 01:05:37 -0500 17) #define IS_MNT_UNBINDABLE(m) ((m)->mnt.mnt_flags & MNT_UNBINDABLE)
f2ebb3a921c1c (Al Viro           2014-02-27 09:35:45 -0500 18) #define IS_MNT_MARKED(m) ((m)->mnt.mnt_flags & MNT_MARKED)
f2ebb3a921c1c (Al Viro           2014-02-27 09:35:45 -0500 19) #define SET_MNT_MARK(m) ((m)->mnt.mnt_flags |= MNT_MARKED)
f2ebb3a921c1c (Al Viro           2014-02-27 09:35:45 -0500 20) #define CLEAR_MNT_MARK(m) ((m)->mnt.mnt_flags &= ~MNT_MARKED)
0c56fe31420ca (Eric W. Biederman 2015-01-05 13:38:04 -0600 21) #define IS_MNT_LOCKED(m) ((m)->mnt.mnt_flags & MNT_LOCKED)
03e06e68ff762 (Ram Pai           2005-11-07 17:19:33 -0500 22) 
b90fa9ae8f51f (Ram Pai           2005-11-07 17:19:50 -0500 23) #define CL_EXPIRE    		0x01
a58b0eb8e64b7 (Ram Pai           2005-11-07 17:20:48 -0500 24) #define CL_SLAVE     		0x02
4ce5d2b1a8fde (Eric W. Biederman 2013-03-30 01:35:18 -0700 25) #define CL_COPY_UNBINDABLE	0x04
b90fa9ae8f51f (Ram Pai           2005-11-07 17:19:50 -0500 26) #define CL_MAKE_SHARED 		0x08
796a6b521d0ea (Al Viro           2010-01-16 13:28:47 -0500 27) #define CL_PRIVATE 		0x10
7a472ef4be838 (Eric W. Biederman 2012-07-31 13:13:04 -0700 28) #define CL_SHARED_TO_SLAVE	0x20
3bd045cc9c4be (Al Viro           2019-01-30 13:15:45 -0500 29) #define CL_COPY_MNT_NS_FILE	0x40
4ce5d2b1a8fde (Eric W. Biederman 2013-03-30 01:35:18 -0700 30) 
4ce5d2b1a8fde (Eric W. Biederman 2013-03-30 01:35:18 -0700 31) #define CL_COPY_ALL		(CL_COPY_UNBINDABLE | CL_COPY_MNT_NS_FILE)
b90fa9ae8f51f (Ram Pai           2005-11-07 17:19:50 -0500 32) 
0f0afb1dcf01a (Al Viro           2011-11-24 20:43:10 -0500 33) static inline void set_mnt_shared(struct mount *mnt)
b90fa9ae8f51f (Ram Pai           2005-11-07 17:19:50 -0500 34) {
0f0afb1dcf01a (Al Viro           2011-11-24 20:43:10 -0500 35) 	mnt->mnt.mnt_flags &= ~MNT_SHARED_MASK;
0f0afb1dcf01a (Al Viro           2011-11-24 20:43:10 -0500 36) 	mnt->mnt.mnt_flags |= MNT_SHARED;
b90fa9ae8f51f (Ram Pai           2005-11-07 17:19:50 -0500 37) }
b90fa9ae8f51f (Ram Pai           2005-11-07 17:19:50 -0500 38) 
0f0afb1dcf01a (Al Viro           2011-11-24 20:43:10 -0500 39) void change_mnt_propagation(struct mount *, int);
84d17192d2afd (Al Viro           2013-03-15 10:53:28 -0400 40) int propagate_mnt(struct mount *, struct mountpoint *, struct mount *,
38129a13e6e71 (Al Viro           2014-03-20 21:10:51 -0400 41) 		struct hlist_head *);
c003b26ff98ca (Eric W. Biederman 2014-12-18 13:10:48 -0600 42) int propagate_umount(struct list_head *);
1ab597386205f (Al Viro           2011-11-24 21:35:16 -0500 43) int propagate_mount_busy(struct mount *, int);
5d88457eb5b86 (Eric W. Biederman 2015-01-03 05:39:35 -0600 44) void propagate_mount_unlock(struct mount *);
4b8b21f4fe16e (Al Viro           2011-11-24 19:54:23 -0500 45) void mnt_release_group_id(struct mount *);
6fc7871fed915 (Al Viro           2011-11-24 23:35:54 -0500 46) int get_dominating_id(struct mount *mnt, const struct path *root);
edf7ddbf1c5eb (Eric Biggers      2020-10-31 21:40:21 -0700 47) int mnt_get_count(struct mount *mnt);
84d17192d2afd (Al Viro           2013-03-15 10:53:28 -0400 48) void mnt_set_mountpoint(struct mount *, struct mountpoint *,
44d964d609c7c (Al Viro           2011-11-24 21:28:22 -0500 49) 			struct mount *);
1064f874abc0d (Eric W. Biederman 2017-01-20 18:28:35 +1300 50) void mnt_change_mountpoint(struct mount *parent, struct mountpoint *mp,
1064f874abc0d (Eric W. Biederman 2017-01-20 18:28:35 +1300 51) 			   struct mount *mnt);
87129cc0e3fcd (Al Viro           2011-11-24 21:24:27 -0500 52) struct mount *copy_tree(struct mount *, struct dentry *, int);
643822b41e5e0 (Al Viro           2011-11-24 22:00:28 -0500 53) bool is_path_reachable(struct mount *, struct dentry *,
afac7cba7ed31 (Al Viro           2011-11-23 19:34:49 -0500 54) 			 const struct path *root);
d29216842a85c (Eric W. Biederman 2016-09-28 00:27:17 -0500 55) int count_mounts(struct mnt_namespace *ns, struct mount *mnt);
07b20889e3052 (Ram Pai           2005-11-07 17:19:07 -0500 56) #endif /* _LINUX_PNODE_H */