[LTP] [PATCH] sched_getattr02: refactor with new LTP API
Petr Vorel
pvorel@suse.cz
Mon Dec 16 23:04:54 CET 2024
Hi Ma Xinjian,
There was missing static:
$ make check-sched_getattr02
CHECK testcases/kernel/syscalls/sched_getattr/sched_getattr02.c
sched_getattr02.c:28:19: warning: Symbol 'attr_copy' has no prototype or library ('tst_') prefix. Should it be static?
> +static void verify_sched_getattr(unsigned int n)
> {
> - TEST(sched_getattr(*(test->pid), test->a, test->size,
> - test->flags));
> + struct test_case *tc = tcase + n;
> +
> + TEST(sched_getattr(*(tc->pid), tc->a, tc->size, tc->flags));
> - if (TEST_RETURN != -1) {
> - tst_resm(TFAIL, "sched_getattr() succeeded unexpectedly.");
> + if (TST_RET != -1) {
> + tst_res(TFAIL, "sched_getattr() succeeded unexpectedly.");
> return;
> }
> - if (TEST_ERRNO == test->exp_errno) {
> - tst_resm(TPASS | TTERRNO,
> - "sched_getattr() failed expectedly");
> + if (TST_ERR == tc->exp_errno) {
> + tst_res(TPASS | TTERRNO, "sched_getattr() failed expectedly");
> return;
> }
> - tst_resm(TFAIL | TTERRNO, "sched_getattr() failed unexpectedly "
> + tst_res(TFAIL | TTERRNO, "sched_getattr() failed unexpectedly "
> ": expected: %d - %s",
> - test->exp_errno, tst_strerrno(test->exp_errno));
> + tc->exp_errno, tst_strerrno(tc->exp_errno));
> }
We have TST_EXP_FAIL() for it. Merged with following diff.
Thanks!
Kind regards,
Petr
+++ testcases/kernel/syscalls/sched_getattr/sched_getattr02.c
@@ -7,7 +7,7 @@
/*\
* [Description]
*
- * Verify that, sched_getattr(2) returns -1 and sets errno to
+ * Verify that, sched_getattr(2) returns -1 and sets errno to:
*
* 1. ESRCH if pid is unused.
* 2. EINVAL if address is NULL.
@@ -18,18 +18,16 @@
#define _GNU_SOURCE
#include <errno.h>
-#include <string.h>
-
#include "tst_test.h"
#include "lapi/sched.h"
static pid_t pid;
static pid_t unused_pid;
-struct sched_attr attr_copy;
+static struct sched_attr attr_copy;
static struct test_case {
pid_t *pid;
- struct sched_attr *a;
+ struct sched_attr *attr;
unsigned int size;
unsigned int flags;
int exp_errno;
@@ -42,23 +40,11 @@ static struct test_case {
static void verify_sched_getattr(unsigned int n)
{
- struct test_case *tc = tcase + n;
-
- TEST(sched_getattr(*(tc->pid), tc->a, tc->size, tc->flags));
-
- if (TST_RET != -1) {
- tst_res(TFAIL, "sched_getattr() succeeded unexpectedly.");
- return;
- }
-
- if (TST_ERR == tc->exp_errno) {
- tst_res(TPASS | TTERRNO, "sched_getattr() failed expectedly");
- return;
- }
+ struct test_case *tc = &tcase[n];
- tst_res(TFAIL | TTERRNO, "sched_getattr() failed unexpectedly "
- ": expected: %d - %s",
- tc->exp_errno, tst_strerrno(tc->exp_errno));
+ TST_EXP_FAIL(sched_getattr(*(tc->pid), tc->attr, tc->size, tc->flags),
+ tc->exp_errno, "sched_getattr(%d, ..., %d, %d)", *tc->pid,
+ tc->size, tc->flags);
}
static void setup(void)
More information about the ltp
mailing list