The Design and Implementation of the FreeBSD Operating System, Second Edition
Now available: The Design and Implementation of the FreeBSD Operating System (Second Edition)


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]

FreeBSD/Linux Kernel Cross Reference
sys/fs/pnode.h

Version: -  FREEBSD  -  FREEBSD-13-STABLE  -  FREEBSD-13-0  -  FREEBSD-12-STABLE  -  FREEBSD-12-0  -  FREEBSD-11-STABLE  -  FREEBSD-11-0  -  FREEBSD-10-STABLE  -  FREEBSD-10-0  -  FREEBSD-9-STABLE  -  FREEBSD-9-0  -  FREEBSD-8-STABLE  -  FREEBSD-8-0  -  FREEBSD-7-STABLE  -  FREEBSD-7-0  -  FREEBSD-6-STABLE  -  FREEBSD-6-0  -  FREEBSD-5-STABLE  -  FREEBSD-5-0  -  FREEBSD-4-STABLE  -  FREEBSD-3-STABLE  -  FREEBSD22  -  l41  -  OPENBSD  -  linux-2.6  -  MK84  -  PLAN9  -  xnu-8792 
SearchContext: -  none  -  3  -  10 

    1 /*
    2  *  linux/fs/pnode.h
    3  *
    4  * (C) Copyright IBM Corporation 2005.
    5  *      Released under GPL v2.
    6  *
    7  */
    8 #ifndef _LINUX_PNODE_H
    9 #define _LINUX_PNODE_H
   10 
   11 #include <linux/list.h>
   12 #include "mount.h"
   13 
   14 #define IS_MNT_SHARED(m) ((m)->mnt.mnt_flags & MNT_SHARED)
   15 #define IS_MNT_SLAVE(m) ((m)->mnt_master)
   16 #define IS_MNT_NEW(m)  (!(m)->mnt_ns)
   17 #define CLEAR_MNT_SHARED(m) ((m)->mnt.mnt_flags &= ~MNT_SHARED)
   18 #define IS_MNT_UNBINDABLE(m) ((m)->mnt.mnt_flags & MNT_UNBINDABLE)
   19 
   20 #define CL_EXPIRE               0x01
   21 #define CL_SLAVE                0x02
   22 #define CL_COPY_ALL             0x04
   23 #define CL_MAKE_SHARED          0x08
   24 #define CL_PRIVATE              0x10
   25 #define CL_SHARED_TO_SLAVE      0x20
   26 
   27 static inline void set_mnt_shared(struct mount *mnt)
   28 {
   29         mnt->mnt.mnt_flags &= ~MNT_SHARED_MASK;
   30         mnt->mnt.mnt_flags |= MNT_SHARED;
   31 }
   32 
   33 void change_mnt_propagation(struct mount *, int);
   34 int propagate_mnt(struct mount *, struct dentry *, struct mount *,
   35                 struct list_head *);
   36 int propagate_umount(struct list_head *);
   37 int propagate_mount_busy(struct mount *, int);
   38 void mnt_release_group_id(struct mount *);
   39 int get_dominating_id(struct mount *mnt, const struct path *root);
   40 unsigned int mnt_get_count(struct mount *mnt);
   41 void mnt_set_mountpoint(struct mount *, struct dentry *,
   42                         struct mount *);
   43 void release_mounts(struct list_head *);
   44 void umount_tree(struct mount *, int, struct list_head *);
   45 struct mount *copy_tree(struct mount *, struct dentry *, int);
   46 bool is_path_reachable(struct mount *, struct dentry *,
   47                          const struct path *root);
   48 #endif /* _LINUX_PNODE_H */

Cache object: e3c883ee07d276f21b60fea2f4aed7f8


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]


This page is part of the FreeBSD/Linux Linux Kernel Cross-Reference, and was automatically generated using a modified version of the LXR engine.