Re: [LTP] [PATCH v4 07/10] Rewrite shmem_2nstest.c using new LTP API

Cyril Hrubis
2022-06-03T09:24:15Z

Hi!
Pushed with a few changes, thanks.

I did rearrange the code to make it a bit simpler and removed some
useless code.

Full diff:

diff --git a/testcases/kernel/containers/sysvipc/shmem_2nstest.c b/testcases/kernel/containers/sysvipc/shmem_2nstest.c
index e6c1a16fa..ea3de94bd 100644
--- a/testcases/kernel/containers/sysvipc/shmem_2nstest.c
+++ b/testcases/kernel/containers/sysvipc/shmem_2nstest.c
@@ -40,36 +40,28 @@
static char *str_op;
static int use_clone;

-/*
- * check_shmem1() does not read -- it writes to check_shmem2() when it's done.
- */
static int check_shmem1(LTP_ATTRIBUTE_UNUSED void *vtest)
{
- SAFE_SHMGET(TESTKEY, 100, IPC_CREAT);
+ int id;
+
+ id = SAFE_SHMGET(TESTKEY, 100, IPC_CREAT);

tst_res(TINFO, "container1: able to create shared mem segment");

- TST_CHECKPOINT_WAKE(0);
+ TST_CHECKPOINT_WAKE_AND_WAIT(0);
+
+ SAFE_SHMCTL(id, IPC_RMID, NULL);

return 0;
}

-/*
- * check_shmem2() reads from check_shmem1() and writes to main() when it's done.
- */
static int check_shmem2(LTP_ATTRIBUTE_UNUSED void *vtest)
{
- int id;
-
TST_CHECKPOINT_WAIT(0);

TEST(shmget(TESTKEY, 100, 0));

if (TST_RET < 0) {
- SAFE_SHMGET(TESTKEY, 100, IPC_CREAT);
-
- tst_res(TINFO, "container2: able to allocate shmem seg with the same key");
-
if (use_clone == T_NONE)
tst_res(TFAIL, "Plain cloned process didn't find shmem segment");
else
@@ -81,8 +73,7 @@ static int check_shmem2(LTP_ATTRIBUTE_UNUSED void *vtest)
tst_res(TFAIL, "%s: in namespace2 found the shmem segment created in namespace1", str_op);
}

- id = SAFE_SHMGET(TESTKEY, 100, 0);
- SAFE_SHMCTL(id, IPC_RMID, NULL);
+ TST_CHECKPOINT_WAKE(0);

return 0;
}

--
Cyril Hrubis
chrubis@suse.cz