Commit a7c9f301 authored by Pavel Emelyanov's avatar Pavel Emelyanov

mnt: Read mount images early

Mappings from mount id to namespace will be required to
remove ghosts on restore failure.
Signed-off-by: 's avatarPavel Emelyanov <xemul@parallels.com>
parent b0e23c3d
...@@ -118,6 +118,7 @@ extern int depopulate_roots_yard(void); ...@@ -118,6 +118,7 @@ extern int depopulate_roots_yard(void);
extern int rst_get_mnt_root(int mnt_id, char *path, int plen); extern int rst_get_mnt_root(int mnt_id, char *path, int plen);
extern int ext_mount_add(char *key, char *val); extern int ext_mount_add(char *key, char *val);
extern int mntns_maybe_create_roots(void); extern int mntns_maybe_create_roots(void);
extern int read_mnt_ns_img(void);
extern void cleanup_mnt_ns(void); extern void cleanup_mnt_ns(void);
#endif /* __CR_MOUNT_H__ */ #endif /* __CR_MOUNT_H__ */
...@@ -2509,7 +2509,7 @@ err: ...@@ -2509,7 +2509,7 @@ err:
return -1; return -1;
} }
static int read_mnt_ns_img(void) int read_mnt_ns_img(void)
{ {
struct mount_info *pms = NULL; struct mount_info *pms = NULL;
struct ns_id *nsid; struct ns_id *nsid;
...@@ -2673,9 +2673,6 @@ static int populate_mnt_ns(void) ...@@ -2673,9 +2673,6 @@ static int populate_mnt_ns(void)
struct mount_info *pms; struct mount_info *pms;
struct ns_id *nsid; struct ns_id *nsid;
if (read_mnt_ns_img())
return -1;
pms = mnt_build_tree(mntinfo); pms = mnt_build_tree(mntinfo);
if (!pms) if (!pms)
return -1; return -1;
......
...@@ -1324,8 +1324,13 @@ int prepare_namespace_before_tasks(void) ...@@ -1324,8 +1324,13 @@ int prepare_namespace_before_tasks(void)
if (mntns_maybe_create_roots()) if (mntns_maybe_create_roots())
goto err_mnt; goto err_mnt;
if (read_mnt_ns_img())
goto err_img;
return 0; return 0;
err_img:
cleanup_mnt_ns();
err_mnt: err_mnt:
/* /*
* Nothing, netns' descriptor will be closed * Nothing, netns' descriptor will be closed
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment