pnode.c 622 Bytes
Newer Older
1 2 3 4 5 6 7 8 9 10 11 12 13
/*
 *  linux/fs/pnode.c
 *
 * (C) Copyright IBM Corporation 2005.
 *	Released under GPL v2.
 *	Author : Ram Pai (linuxram@us.ibm.com)
 *
 */
#include <linux/namespace.h>
#include <linux/mount.h>
#include <linux/fs.h>
#include "pnode.h"

Ram Pai's avatar
Ram Pai committed
14 15 16 17 18 19
/* return the next shared peer mount of @p */
static inline struct vfsmount *next_peer(struct vfsmount *p)
{
	return list_entry(p->mnt_share.next, struct vfsmount, mnt_share);
}

20 21
void change_mnt_propagation(struct vfsmount *mnt, int type)
{
Ram Pai's avatar
Ram Pai committed
22 23 24 25 26 27
	if (type == MS_SHARED) {
		mnt->mnt_flags |= MNT_SHARED;
	} else {
		list_del_init(&mnt->mnt_share);
		mnt->mnt_flags &= ~MNT_PNODE_MASK;
	}
28
}