mnt->mnt_writers = 0;
#endif
- INIT_LIST_HEAD(&p->mnt.mnt_hash);
+ INIT_LIST_HEAD(&p->mnt_hash);
INIT_LIST_HEAD(&mnt->mnt_child);
INIT_LIST_HEAD(&mnt->mnt_mounts);
INIT_LIST_HEAD(&mnt->mnt_list);
p = NULL;
if (tmp == head)
break;
- p = list_entry(tmp, struct mount, mnt.mnt_hash);
+ p = list_entry(tmp, struct mount, mnt_hash);
if (p->mnt.mnt_parent == mnt && p->mnt.mnt_mountpoint == dentry) {
found = p;
break;
for (u = 0; u < HASH_SIZE; u++) {
struct mount *p;
- list_for_each_entry(p, &mount_hashtable[u], mnt.mnt_hash) {
+ list_for_each_entry(p, &mount_hashtable[u], mnt_hash) {
if (p->mnt.mnt_mountpoint == dentry)
return;
}
mnt->mnt.mnt_parent = &mnt->mnt;
mnt->mnt.mnt_mountpoint = mnt->mnt.mnt_root;
list_del_init(&mnt->mnt.mnt_child);
- list_del_init(&mnt->mnt.mnt_hash);
+ list_del_init(&mnt->mnt_hash);
dentry_reset_mounted(old_path->dentry);
}
static void attach_mnt(struct mount *mnt, struct path *path)
{
mnt_set_mountpoint(path->mnt, path->dentry, &mnt->mnt);
- list_add_tail(&mnt->mnt.mnt_hash, mount_hashtable +
+ list_add_tail(&mnt->mnt_hash, mount_hashtable +
hash(path->mnt, path->dentry));
list_add_tail(&mnt->mnt.mnt_child, &path->mnt->mnt_mounts);
}
list_splice(&head, n->list.prev);
- list_add_tail(&mnt->mnt.mnt_hash, mount_hashtable +
+ list_add_tail(&mnt->mnt_hash, mount_hashtable +
hash(parent, mnt->mnt.mnt_mountpoint));
list_add_tail(&mnt->mnt.mnt_child, &parent->mnt_mounts);
touch_mnt_namespace(n);
{
struct mount *mnt;
while (!list_empty(head)) {
- mnt = list_first_entry(head, struct mount, mnt.mnt_hash);
- list_del_init(&mnt->mnt.mnt_hash);
+ mnt = list_first_entry(head, struct mount, mnt_hash);
+ list_del_init(&mnt->mnt_hash);
if (mnt_has_parent(&mnt->mnt)) {
struct dentry *dentry;
struct vfsmount *m;
struct mount *p;
for (p = real_mount(mnt); p; p = next_mnt(p, mnt))
- list_move(&p->mnt.mnt_hash, &tmp_list);
+ list_move(&p->mnt_hash, &tmp_list);
if (propagate)
propagate_umount(&tmp_list);
- list_for_each_entry(p, &tmp_list, mnt.mnt_hash) {
+ list_for_each_entry(p, &tmp_list, mnt_hash) {
list_del_init(&p->mnt.mnt_expire);
list_del_init(&p->mnt.mnt_list);
__touch_mnt_namespace(p->mnt.mnt_ns);
commit_tree(source_mnt);
}
- list_for_each_entry_safe(child, p, &tree_list, mnt.mnt_hash) {
- list_del_init(&child->mnt.mnt_hash);
+ list_for_each_entry_safe(child, p, &tree_list, mnt_hash) {
+ list_del_init(&child->mnt_hash);
commit_tree(child);
}
br_write_unlock(vfsmount_lock);
if (is_subdir(dest_dentry, m->mnt_root)) {
mnt_set_mountpoint(m, dest_dentry, &child->mnt);
- list_add_tail(&child->mnt.mnt_hash, tree_list);
+ list_add_tail(&child->mnt_hash, tree_list);
} else {
/*
* This can happen if the parent mount was bind mounted
* on some subdirectory of a shared/slave mount.
*/
- list_add_tail(&child->mnt.mnt_hash, &tmp_list);
+ list_add_tail(&child->mnt_hash, &tmp_list);
}
prev_dest_mnt = m;
prev_src_mnt = &child->mnt;
out:
br_write_lock(vfsmount_lock);
while (!list_empty(&tmp_list)) {
- child = list_first_entry(&tmp_list, struct mount, mnt.mnt_hash);
+ child = list_first_entry(&tmp_list, struct mount, mnt_hash);
umount_tree(&child->mnt, 0, &umount_list);
}
br_write_unlock(vfsmount_lock);
* other children
*/
if (child && list_empty(&child->mnt.mnt_mounts))
- list_move_tail(&child->mnt.mnt_hash, &mnt->mnt.mnt_hash);
+ list_move_tail(&child->mnt_hash, &mnt->mnt_hash);
}
}
{
struct mount *mnt;
- list_for_each_entry(mnt, list, mnt.mnt_hash)
+ list_for_each_entry(mnt, list, mnt_hash)
__propagate_umount(mnt);
return 0;
}