mirror of
https://github.com/checkpoint-restore/criu
synced 2025-09-04 16:25:31 +00:00
restore: set buildinfo_tree for each mount namespace
On restore all namespaces are restored as one tree and a pointer on the root of this tree will be set on each namespace. Below you can find a call trace, where it's used: Signed-off-by: Andrey Vagin <avagin@openvz.org> Signed-off-by: Pavel Emelyanov <xemul@parallels.com>
This commit is contained in:
committed by
Pavel Emelyanov
parent
380c0d67fe
commit
03c69251ab
8
mount.c
8
mount.c
@@ -1672,6 +1672,7 @@ static int prepare_roots_yard(void)
|
|||||||
static int populate_mnt_ns(int ns_pid, struct mount_info *mis)
|
static int populate_mnt_ns(int ns_pid, struct mount_info *mis)
|
||||||
{
|
{
|
||||||
struct mount_info *pms;
|
struct mount_info *pms;
|
||||||
|
struct ns_id *nsid;
|
||||||
|
|
||||||
mntinfo_tree = NULL;
|
mntinfo_tree = NULL;
|
||||||
mntinfo = mis;
|
mntinfo = mis;
|
||||||
@@ -1683,6 +1684,13 @@ static int populate_mnt_ns(int ns_pid, struct mount_info *mis)
|
|||||||
if (!pms)
|
if (!pms)
|
||||||
return -1;
|
return -1;
|
||||||
|
|
||||||
|
for (nsid = ns_ids; nsid; nsid = nsid->next) {
|
||||||
|
if (nsid->nd != &mnt_ns_desc)
|
||||||
|
continue;
|
||||||
|
|
||||||
|
nsid->mnt.mntinfo_tree = pms;
|
||||||
|
}
|
||||||
|
|
||||||
if (validate_mounts(mis, false))
|
if (validate_mounts(mis, false))
|
||||||
return -1;
|
return -1;
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user