[CRIU] [PATCH 2/3] test: mntns_deleted -- Add bindmount for regular files

Cyrill Gorcunov gorcunov at openvz.org
Wed Aug 26 07:15:24 PDT 2015


Signed-off-by: Cyrill Gorcunov <gorcunov at openvz.org>
---
 test/zdtm/live/static/mntns_deleted.c | 29 +++++++++++++++++++++++++++++
 1 file changed, 29 insertions(+)

diff --git a/test/zdtm/live/static/mntns_deleted.c b/test/zdtm/live/static/mntns_deleted.c
index bd1a58b6dc27..c6e24d85d0e6 100644
--- a/test/zdtm/live/static/mntns_deleted.c
+++ b/test/zdtm/live/static/mntns_deleted.c
@@ -29,9 +29,13 @@ TEST_OPTION(dirname, string, "directory name", 1);
 #define TEST_DIR_SRC	"test-src"
 #define TEST_DIR_DST	"test-dst"
 
+#define TEST_FILE_SRC	"mntns-deleted-src"
+#define TEST_FILE_DST	"mntns-deleted-dst"
+
 int main(int argc, char *argv[])
 {
 	char path_src[PATH_MAX], path_dst[PATH_MAX];
+	int fd1, fd2;
 
 	test_init(argc, argv);
 
@@ -51,22 +55,47 @@ int main(int argc, char *argv[])
 	rmdir(path_src);
 	rmdir(path_dst);
 
+	unlink(TEST_FILE_SRC);
+	unlink(TEST_FILE_DST);
+
 	if (mkdir(path_src, 0700) ||
 	    mkdir(path_dst, 0700)) {
 		err("mkdir");
 		return 1;
 	}
 
+	if ((fd1 = open(TEST_FILE_SRC, O_WRONLY | O_CREAT | O_TRUNC) < 0)) {
+		err("touching %s", TEST_FILE_SRC);
+		return 1;
+	}
+	close(fd1);
+
+	if ((fd2 = open(TEST_FILE_DST, O_WRONLY | O_CREAT | O_TRUNC) < 0)) {
+		err("touching %s", TEST_FILE_DST);
+		return 1;
+	}
+	close(fd2);
+
 	if (mount(path_src, path_dst, NULL, MS_BIND | MS_MGC_VAL, NULL)) {
 		err("mount %s -> %s", path_src, path_dst);
 		return 1;
 	}
 
+	if (mount(TEST_FILE_SRC, TEST_FILE_DST, NULL, MS_BIND | MS_MGC_VAL, NULL)) {
+		err("mount %s -> %s", TEST_FILE_SRC, TEST_FILE_DST);
+		return 1;
+	}
+
 	if (rmdir(path_src)) {
 		err("rmdir %s", path_src);
 		return 1;
 	}
 
+	if (unlink(TEST_FILE_SRC)) {
+		err("unlink %s", TEST_FILE_SRC);
+		return 1;
+	}
+
 	test_daemon();
 	test_waitsig();
 
-- 
2.4.3



More information about the CRIU mailing list