All of lore.kernel.org
 help / color / mirror / Atom feed
* [LTP] [PATCH v2 0/2] new test for nice()
@ 2022-10-20 12:57 Zhao Gongyi via ltp
  2022-10-20 12:57 ` [LTP] [PATCH v2 1/2] syscalls/nice06: " Zhao Gongyi via ltp
  2022-10-20 12:57 ` [LTP] [PATCH v2 2/2] syscalls/nice07: " Zhao Gongyi via ltp
  0 siblings, 2 replies; 4+ messages in thread
From: Zhao Gongyi via ltp @ 2022-10-20 12:57 UTC (permalink / raw)
  To: ltp

1. Verify that user of root can decrease the nice value of
   the process successfully by passing a lower increment
   value (< min. applicable limits) to nice() system call.
2. Verify that the errno is zero when callling of nice
   legitimately return -1.

Changes in v2:
  - Adapt the number of testcases
  - Modify the description of patch 2/2

Zhao Gongyi (2):
  syscalls/nice06: new test for nice()
  syscalls/nice07: new test for nice()

 runtest/syscalls                          |  2 +
 testcases/kernel/syscalls/nice/.gitignore |  2 +
 testcases/kernel/syscalls/nice/nice06.c   | 54 +++++++++++++++++++++++
 testcases/kernel/syscalls/nice/nice07.c   | 46 +++++++++++++++++++
 4 files changed, 104 insertions(+)
 create mode 100644 testcases/kernel/syscalls/nice/nice06.c
 create mode 100644 testcases/kernel/syscalls/nice/nice07.c

--
2.17.1


-- 
Mailing list info: https://lists.linux.it/listinfo/ltp

^ permalink raw reply	[flat|nested] 4+ messages in thread

* [LTP] [PATCH v2 1/2] syscalls/nice06: new test for nice()
  2022-10-20 12:57 [LTP] [PATCH v2 0/2] new test for nice() Zhao Gongyi via ltp
@ 2022-10-20 12:57 ` Zhao Gongyi via ltp
  2022-10-24 11:27   ` Richard Palethorpe
  2022-10-20 12:57 ` [LTP] [PATCH v2 2/2] syscalls/nice07: " Zhao Gongyi via ltp
  1 sibling, 1 reply; 4+ messages in thread
From: Zhao Gongyi via ltp @ 2022-10-20 12:57 UTC (permalink / raw)
  To: ltp

Verify that user of root can decrease the nice value of
the process successfully by passing a lower increment
value (< min. applicable limits) to nice() system call.

Signed-off-by: Zhao Gongyi <zhaogongyi@huawei.com>
---
 runtest/syscalls                          |  1 +
 testcases/kernel/syscalls/nice/.gitignore |  1 +
 testcases/kernel/syscalls/nice/nice06.c   | 54 +++++++++++++++++++++++
 3 files changed, 56 insertions(+)
 create mode 100644 testcases/kernel/syscalls/nice/nice06.c

diff --git a/runtest/syscalls b/runtest/syscalls
index a52b93c92..557c946ec 100644
--- a/runtest/syscalls
+++ b/runtest/syscalls
@@ -902,6 +902,7 @@ nice02 nice02
 nice03 nice03
 nice04 nice04
 nice05 nice05
+nice06 nice06

 open01 open01
 open01A symlink01 -T open01
diff --git a/testcases/kernel/syscalls/nice/.gitignore b/testcases/kernel/syscalls/nice/.gitignore
index 58d64779e..c96064cdf 100644
--- a/testcases/kernel/syscalls/nice/.gitignore
+++ b/testcases/kernel/syscalls/nice/.gitignore
@@ -3,3 +3,4 @@
 /nice03
 /nice04
 /nice05
+/nice06
diff --git a/testcases/kernel/syscalls/nice/nice06.c b/testcases/kernel/syscalls/nice/nice06.c
new file mode 100644
index 000000000..92138f21e
--- /dev/null
+++ b/testcases/kernel/syscalls/nice/nice06.c
@@ -0,0 +1,54 @@
+// SPDX-License-Identifier: GPL-2.0-or-later
+/*
+ * Copyright(c) 2022 Huawei Technologies Co., Ltd
+ * Author: Zhao Gongyi <zhaogongyi@huawei.com>
+ */
+
+/*\
+ * [Description]
+ *
+ * Verify that user of root can decrease the nice value of
+ * the process successfully by passing a lower increment
+ * value (< min. applicable limits) to nice() system call.
+ */
+#include <unistd.h>
+#include "tst_test.h"
+
+#define	NICEINC -50
+#define MIN_PRIO  -20
+#define DEFAULT_PRIO 0
+
+static void verify_nice(void)
+{
+	int new_nice;
+
+	TEST(nice(NICEINC));
+	if (TST_RET == -1) {
+		tst_res(TFAIL | TTERRNO, "nice(%d) returned -1", NICEINC);
+		return;
+	}
+
+	if (TST_ERR) {
+		tst_res(TFAIL | TTERRNO, "nice(%d) failed", NICEINC);
+		return;
+	}
+
+	new_nice = SAFE_GETPRIORITY(PRIO_PROCESS, 0);
+
+	if (new_nice != MIN_PRIO) {
+		tst_res(TFAIL, "Process priority %i, expected %i",
+			new_nice, MIN_PRIO);
+		return;
+	}
+
+	tst_res(TPASS, "nice(%d) passed", NICEINC);
+
+	TEST(nice(DEFAULT_PRIO));
+	if (TST_ERR)
+		tst_brk(TBROK | TTERRNO, "nice(%d) failed", DEFAULT_PRIO);
+}
+
+static struct tst_test test = {
+	.test_all = verify_nice,
+	.needs_root = 1,
+};
--
2.17.1


-- 
Mailing list info: https://lists.linux.it/listinfo/ltp

^ permalink raw reply related	[flat|nested] 4+ messages in thread

* [LTP] [PATCH v2 2/2] syscalls/nice07: new test for nice()
  2022-10-20 12:57 [LTP] [PATCH v2 0/2] new test for nice() Zhao Gongyi via ltp
  2022-10-20 12:57 ` [LTP] [PATCH v2 1/2] syscalls/nice06: " Zhao Gongyi via ltp
@ 2022-10-20 12:57 ` Zhao Gongyi via ltp
  1 sibling, 0 replies; 4+ messages in thread
From: Zhao Gongyi via ltp @ 2022-10-20 12:57 UTC (permalink / raw)
  To: ltp

Verify that the errno is zero when callling of nice
legitimately return -1.

Signed-off-by: Zhao Gongyi <zhaogongyi@huawei.com>
---
 runtest/syscalls                          |  1 +
 testcases/kernel/syscalls/nice/.gitignore |  1 +
 testcases/kernel/syscalls/nice/nice07.c   | 46 +++++++++++++++++++++++
 3 files changed, 48 insertions(+)
 create mode 100644 testcases/kernel/syscalls/nice/nice07.c

diff --git a/runtest/syscalls b/runtest/syscalls
index 557c946ec..7a425439a 100644
--- a/runtest/syscalls
+++ b/runtest/syscalls
@@ -903,6 +903,7 @@ nice03 nice03
 nice04 nice04
 nice05 nice05
 nice06 nice06
+nice07 nice07

 open01 open01
 open01A symlink01 -T open01
diff --git a/testcases/kernel/syscalls/nice/.gitignore b/testcases/kernel/syscalls/nice/.gitignore
index c96064cdf..a92595f2a 100644
--- a/testcases/kernel/syscalls/nice/.gitignore
+++ b/testcases/kernel/syscalls/nice/.gitignore
@@ -4,3 +4,4 @@
 /nice04
 /nice05
 /nice06
+/nice07
diff --git a/testcases/kernel/syscalls/nice/nice07.c b/testcases/kernel/syscalls/nice/nice07.c
new file mode 100644
index 000000000..8d098de60
--- /dev/null
+++ b/testcases/kernel/syscalls/nice/nice07.c
@@ -0,0 +1,46 @@
+// SPDX-License-Identifier: GPL-2.0-or-later
+/*
+ * Copyright(c) 2022 Huawei Technologies Co., Ltd
+ * Author: Zhao Gongyi <zhaogongyi@huawei.com>
+ */
+
+/*\
+ * [Description]
+ *
+ * Verify that the errno is zero when callling of nice
+ * legitimately return -1.
+ */
+#include <unistd.h>
+#include "tst_test.h"
+
+static void verify_nice(void)
+{
+	int orig_nice;
+	int niceinc;
+
+	orig_nice = SAFE_GETPRIORITY(PRIO_PROCESS, 0);
+	niceinc = -1 - orig_nice;
+
+	TEST(nice(niceinc));
+	if (TST_RET != -1) {
+		tst_res(TFAIL | TTERRNO,
+				"nice(%d) returned %ld", niceinc, TST_RET);
+		return;
+	}
+
+	if (TST_ERR) {
+		tst_res(TFAIL | TTERRNO, "nice(%d) failed", niceinc);
+		return;
+	}
+
+	tst_res(TPASS, "nice(%d) passed", niceinc);
+
+	TEST(nice(-niceinc));
+	if (TST_ERR)
+		tst_brk(TBROK | TTERRNO, "nice(%d) failed", -niceinc);
+}
+
+static struct tst_test test = {
+	.test_all = verify_nice,
+	.needs_root = 1,
+};
--
2.17.1


-- 
Mailing list info: https://lists.linux.it/listinfo/ltp

^ permalink raw reply related	[flat|nested] 4+ messages in thread

* Re: [LTP] [PATCH v2 1/2] syscalls/nice06: new test for nice()
  2022-10-20 12:57 ` [LTP] [PATCH v2 1/2] syscalls/nice06: " Zhao Gongyi via ltp
@ 2022-10-24 11:27   ` Richard Palethorpe
  0 siblings, 0 replies; 4+ messages in thread
From: Richard Palethorpe @ 2022-10-24 11:27 UTC (permalink / raw)
  To: Zhao Gongyi; +Cc: ltp

Hello,

Zhao Gongyi via ltp <ltp@lists.linux.it> writes:

> Verify that user of root can decrease the nice value of
> the process successfully by passing a lower increment
> value (< min. applicable limits) to nice() system call.
>
> Signed-off-by: Zhao Gongyi <zhaogongyi@huawei.com>
> ---
>  runtest/syscalls                          |  1 +
>  testcases/kernel/syscalls/nice/.gitignore |  1 +
>  testcases/kernel/syscalls/nice/nice06.c   | 54 +++++++++++++++++++++++
>  3 files changed, 56 insertions(+)
>  create mode 100644 testcases/kernel/syscalls/nice/nice06.c
>
> diff --git a/runtest/syscalls b/runtest/syscalls
> index a52b93c92..557c946ec 100644
> --- a/runtest/syscalls
> +++ b/runtest/syscalls
> @@ -902,6 +902,7 @@ nice02 nice02
>  nice03 nice03
>  nice04 nice04
>  nice05 nice05
> +nice06 nice06

Ah I see you resubmitted nice05 with a new test name. Please see
my comments on V1.

>
>  open01 open01
>  open01A symlink01 -T open01
> diff --git a/testcases/kernel/syscalls/nice/.gitignore b/testcases/kernel/syscalls/nice/.gitignore
> index 58d64779e..c96064cdf 100644
> --- a/testcases/kernel/syscalls/nice/.gitignore
> +++ b/testcases/kernel/syscalls/nice/.gitignore
> @@ -3,3 +3,4 @@
>  /nice03
>  /nice04
>  /nice05
> +/nice06
> diff --git a/testcases/kernel/syscalls/nice/nice06.c b/testcases/kernel/syscalls/nice/nice06.c
> new file mode 100644
> index 000000000..92138f21e
> --- /dev/null
> +++ b/testcases/kernel/syscalls/nice/nice06.c
> @@ -0,0 +1,54 @@
> +// SPDX-License-Identifier: GPL-2.0-or-later
> +/*
> + * Copyright(c) 2022 Huawei Technologies Co., Ltd
> + * Author: Zhao Gongyi <zhaogongyi@huawei.com>
> + */
> +
> +/*\
> + * [Description]
> + *
> + * Verify that user of root can decrease the nice value of
> + * the process successfully by passing a lower increment
> + * value (< min. applicable limits) to nice() system call.
> + */
> +#include <unistd.h>
> +#include "tst_test.h"
> +
> +#define	NICEINC -50
> +#define MIN_PRIO  -20
> +#define DEFAULT_PRIO 0
> +
> +static void verify_nice(void)
> +{
> +	int new_nice;
> +
> +	TEST(nice(NICEINC));
> +	if (TST_RET == -1) {
> +		tst_res(TFAIL | TTERRNO, "nice(%d) returned -1", NICEINC);
> +		return;
> +	}
> +
> +	if (TST_ERR) {
> +		tst_res(TFAIL | TTERRNO, "nice(%d) failed", NICEINC);
> +		return;
> +	}
> +
> +	new_nice = SAFE_GETPRIORITY(PRIO_PROCESS, 0);
> +
> +	if (new_nice != MIN_PRIO) {
> +		tst_res(TFAIL, "Process priority %i, expected %i",
> +			new_nice, MIN_PRIO);
> +		return;
> +	}
> +
> +	tst_res(TPASS, "nice(%d) passed", NICEINC);
> +
> +	TEST(nice(DEFAULT_PRIO));
> +	if (TST_ERR)
> +		tst_brk(TBROK | TTERRNO, "nice(%d) failed", DEFAULT_PRIO);
> +}
> +
> +static struct tst_test test = {
> +	.test_all = verify_nice,
> +	.needs_root = 1,
> +};
> --
> 2.17.1


-- 
Thank you,
Richard.

-- 
Mailing list info: https://lists.linux.it/listinfo/ltp

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2022-10-24 11:28 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2022-10-20 12:57 [LTP] [PATCH v2 0/2] new test for nice() Zhao Gongyi via ltp
2022-10-20 12:57 ` [LTP] [PATCH v2 1/2] syscalls/nice06: " Zhao Gongyi via ltp
2022-10-24 11:27   ` Richard Palethorpe
2022-10-20 12:57 ` [LTP] [PATCH v2 2/2] syscalls/nice07: " Zhao Gongyi via ltp

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.