* [LTP] [PATCH v2 1/4] Convert nanosleep02 to newlib
@ 2018-08-27 9:30 Richard Palethorpe
2018-08-27 9:30 ` [LTP] [PATCH v2 2/4] Convert fcntl33 " Richard Palethorpe
` (3 more replies)
0 siblings, 4 replies; 9+ messages in thread
From: Richard Palethorpe @ 2018-08-27 9:30 UTC (permalink / raw)
To: ltp
Also add extra check that nanosleep exited with the expected return value and
errno for the user's information.
Signed-off-by: Richard Palethorpe <rpalethorpe@suse.com>
---
V2: Removed the falls through attribute for case statements and replace it with a comment
.../kernel/syscalls/nanosleep/nanosleep02.c | 123 ++++++------------
1 file changed, 40 insertions(+), 83 deletions(-)
diff --git a/testcases/kernel/syscalls/nanosleep/nanosleep02.c b/testcases/kernel/syscalls/nanosleep/nanosleep02.c
index 42c825190..2abe38a95 100644
--- a/testcases/kernel/syscalls/nanosleep/nanosleep02.c
+++ b/testcases/kernel/syscalls/nanosleep/nanosleep02.c
@@ -26,24 +26,10 @@
*/
#include <errno.h>
-#include <unistd.h>
-#include <fcntl.h>
-#include <signal.h>
-#include <time.h>
-#include <sys/wait.h>
-#include <sys/time.h>
-#include <stdint.h>
-#include <inttypes.h>
-#include "test.h"
-#include "safe_macros.h"
-
-char *TCID = "nanosleep02";
-int TST_TOTAL = 1;
-
-static void do_child(void);
-static void setup(void);
-static void sig_handler();
+#include "tst_test.h"
+#include "tst_timer.h"
+#include "tst_safe_macros.h"
/*
* Define here the "rem" precision in microseconds,
@@ -57,50 +43,6 @@ static void sig_handler();
*/
#define USEC_PRECISION 250000 /* Error margin allowed in usec */
-int main(int ac, char **av)
-{
- int lc;
- pid_t cpid;
-
- tst_parse_opts(ac, av, NULL, NULL);
-
-#ifdef UCLINUX
- maybe_run_child(&do_child, "");
-#endif
-
- setup();
-
- for (lc = 0; TEST_LOOPING(lc); lc++) {
-
- tst_count = 0;
-
- if ((cpid = FORK_OR_VFORK()) == -1) {
- tst_brkm(TBROK, NULL,
- "fork() failed to create child process");
- }
-
- if (cpid == 0) {
-#ifdef UCLINUX
- if (self_exec(av[0], "")) {
- tst_brkm(TBROK, NULL, "self_exec failed");
- }
-#else
- do_child();
-#endif
- }
-
- /* wait for child to time slot for execution */
- sleep(1);
-
- /* Now send signal to child */
- SAFE_KILL(NULL, cpid, SIGINT);
-
- tst_record_childstatus(NULL, cpid);
- }
-
- tst_exit();
-}
-
static void do_child(void)
{
struct timespec timereq = {.tv_sec = 5, .tv_nsec = 9999};
@@ -110,42 +52,57 @@ static void do_child(void)
TEST(nanosleep(&timereq, &timerem));
tst_timer_stop();
- if (tst_timespec_lt(timereq, tst_timer_elapsed())) {
- tst_resm(TFAIL, "nanosleep() slept more than timereq");
- return;
- }
+ if (!TST_RET)
+ tst_brk(TBROK, "nanosleep was not interrupted");
+ if (TST_ERR != EINTR)
+ tst_brk(TBROK | TTERRNO, "nanosleep() failed");
+
+ if (tst_timespec_lt(timereq, tst_timer_elapsed()))
+ tst_brk(TFAIL, "nanosleep() slept more than timereq");
exp_rem = tst_timespec_diff(timereq, tst_timer_elapsed());
if (tst_timespec_abs_diff_us(timerem, exp_rem) > USEC_PRECISION) {
- tst_resm(TFAIL,
- "nanosleep() remaining time %llius, expected %llius, diff %llius",
- tst_timespec_to_us(timerem), tst_timespec_to_us(exp_rem),
- tst_timespec_abs_diff_us(timerem, exp_rem));
+ tst_res(TFAIL,
+ "nanosleep() remaining time %llius, expected %llius, diff %llius",
+ tst_timespec_to_us(timerem), tst_timespec_to_us(exp_rem),
+ tst_timespec_abs_diff_us(timerem, exp_rem));
} else {
- tst_resm(TPASS,
- "nanosleep() slept for %llius, remaining time difference %llius",
- tst_timer_elapsed_us(),
- tst_timespec_abs_diff_us(timerem, exp_rem));
+ tst_res(TPASS,
+ "nanosleep() slept for %llius, remaining time difference %llius",
+ tst_timer_elapsed_us(),
+ tst_timespec_abs_diff_us(timerem, exp_rem));
}
-
- tst_exit();
}
-static void setup(void)
+void run(void)
{
- tst_sig(FORK, DEF_HANDLER, NULL);
+ pid_t cpid;
- tst_timer_check(CLOCK_MONOTONIC);
+ cpid = SAFE_FORK();
+ if (cpid == 0) {
+ do_child();
+ } else {
+ sleep(1);
- TEST_PAUSE;
+ SAFE_KILL(cpid, SIGINT);
- if (signal(SIGINT, sig_handler) == SIG_ERR) {
- tst_brkm(TBROK, NULL,
- "signal() fails to setup signal handler");
+ tst_reap_children();
}
}
-static void sig_handler(void)
+static void sig_handler(int si LTP_ATTRIBUTE_UNUSED)
+{
+}
+
+static void setup(void)
{
+ tst_timer_check(CLOCK_MONOTONIC);
+ SAFE_SIGNAL(SIGINT, sig_handler);
}
+
+static struct tst_test test = {
+ .forks_child = 1,
+ .setup = setup,
+ .test_all = run,
+};
--
2.18.0
^ permalink raw reply related [flat|nested] 9+ messages in thread
* [LTP] [PATCH v2 2/4] Convert fcntl33 to newlib
2018-08-27 9:30 [LTP] [PATCH v2 1/4] Convert nanosleep02 to newlib Richard Palethorpe
@ 2018-08-27 9:30 ` Richard Palethorpe
2018-08-27 13:19 ` Petr Vorel
2018-08-27 9:30 ` [LTP] [PATCH v2 3/4] Convert futex_wait_bitset tests " Richard Palethorpe
` (2 subsequent siblings)
3 siblings, 1 reply; 9+ messages in thread
From: Richard Palethorpe @ 2018-08-27 9:30 UTC (permalink / raw)
To: ltp
Also add extra checks that fcntl does not return success after trying to
downgrade a lease on a file where it can only be removed and that it can
downgrade a lease on a file opened as read only.
Signed-off-by: Richard Palethorpe <rpalethorpe@suse.com>
---
testcases/kernel/syscalls/fcntl/fcntl33.c | 168 +++++++++-------------
1 file changed, 71 insertions(+), 97 deletions(-)
diff --git a/testcases/kernel/syscalls/fcntl/fcntl33.c b/testcases/kernel/syscalls/fcntl/fcntl33.c
index 13616c65f..b45cd90b5 100644
--- a/testcases/kernel/syscalls/fcntl/fcntl33.c
+++ b/testcases/kernel/syscalls/fcntl/fcntl33.c
@@ -28,8 +28,9 @@
#include <errno.h>
-#include "test.h"
-#include "safe_macros.h"
+#include "tst_test.h"
+#include "tst_timer.h"
+#include "tst_safe_macros.h"
/*
* MIN_TIME_LIMIT is defined to 5 senconds as a minimal acceptable
@@ -50,10 +51,8 @@
#define FILE_MODE (S_IRWXU | S_IRWXG | S_IRWXO | S_ISUID | S_ISGID)
#define PATH_LS_BRK_T "/proc/sys/fs/lease-break-time"
-static void setup(void);
-static void do_test(int);
-static int do_child(int);
-static void cleanup(void);
+static void do_test(unsigned int);
+static void do_child(unsigned int);
static int fd;
static int ls_brk_t;
@@ -84,113 +83,86 @@ static struct test_case_t {
"truncate() conflicts with fcntl(F_SETLEASE, F_RDLCK)"},
};
-char *TCID = "fcntl33";
-int TST_TOTAL = ARRAY_SIZE(test_cases);
-
-int main(int ac, char **av)
-{
- int lc;
- int tc;
-
- tst_parse_opts(ac, av, NULL, NULL);
-
- setup();
-
- for (lc = 0; TEST_LOOPING(lc); lc++) {
- tst_count = 0;
-
- for (tc = 0; tc < TST_TOTAL; tc++)
- do_test(tc);
- }
-
- cleanup();
- tst_exit();
-}
-
static void setup(void)
{
- tst_sig(FORK, DEF_HANDLER, cleanup);
-
- tst_require_root();
-
tst_timer_check(CLOCK_MONOTONIC);
/* Backup and set the lease-break-time. */
- SAFE_FILE_SCANF(NULL, PATH_LS_BRK_T, "%d", &ls_brk_t);
- SAFE_FILE_PRINTF(NULL, PATH_LS_BRK_T, "%d", 45);
+ SAFE_FILE_SCANF(PATH_LS_BRK_T, "%d", &ls_brk_t);
+ SAFE_FILE_PRINTF(PATH_LS_BRK_T, "%d", 45);
- tst_tmpdir();
-
- switch ((type = tst_fs_type(cleanup, "."))) {
+ switch ((type = tst_fs_type("."))) {
case TST_NFS_MAGIC:
case TST_RAMFS_MAGIC:
case TST_TMPFS_MAGIC:
- tst_brkm(TCONF, cleanup,
- "Cannot do fcntl(F_SETLEASE, F_WRLCK) "
- "on %s filesystem",
- tst_fs_type_name(type));
+ tst_brk(TCONF,
+ "Cannot do fcntl(F_SETLEASE, F_WRLCK) on %s filesystem",
+ tst_fs_type_name(type));
default:
break;
}
- SAFE_TOUCH(cleanup, "file", FILE_MODE, NULL);
+ SAFE_TOUCH("file", FILE_MODE, NULL);
sigemptyset(&newset);
sigaddset(&newset, SIGIO);
if (sigprocmask(SIG_SETMASK, &newset, &oldset) < 0)
- tst_brkm(TBROK | TERRNO, cleanup, "sigprocmask() failed");
-
- TEST_PAUSE;
+ tst_brk(TBROK | TERRNO, "sigprocmask() failed");
}
-static void do_test(int i)
+static void do_test(unsigned int i)
{
- fd = SAFE_OPEN(cleanup, "file", O_RDONLY);
-
- pid_t cpid = tst_fork();
-
- if (cpid < 0)
- tst_brkm(TBROK | TERRNO, cleanup, "fork() failed");
+ pid_t cpid;
+ cpid = SAFE_FORK();
if (cpid == 0) {
- SAFE_CLOSE(NULL, fd);
do_child(i);
+ return;
}
+ fd = SAFE_OPEN("file", O_RDONLY);
+
TEST(fcntl(fd, F_SETLEASE, test_cases[i].lease_type));
- if (TEST_RETURN == -1) {
- tst_resm(TFAIL | TTERRNO, "fcntl() failed to set lease");
- SAFE_WAITPID(cleanup, cpid, NULL, 0);
- SAFE_CLOSE(cleanup, fd);
- fd = 0;
- return;
+ if (TST_RET == -1) {
+ tst_res(TFAIL | TTERRNO, "fcntl() failed to set lease");
+ goto exit;
}
/* Wait for SIGIO caused by lease breaker. */
TEST(sigtimedwait(&newset, NULL, &timeout));
- if (TEST_RETURN == -1) {
- if (TEST_ERRNO == EAGAIN) {
- tst_resm(TFAIL | TTERRNO, "failed to receive SIGIO "
- "within %lis", timeout.tv_sec);
- SAFE_WAITPID(cleanup, cpid, NULL, 0);
- SAFE_CLOSE(cleanup, fd);
- fd = 0;
- return;
+ if (TST_RET == -1) {
+ if (TST_ERR == EAGAIN) {
+ tst_res(TFAIL | TTERRNO,
+ "failed to receive SIGIO within %lis",
+ timeout.tv_sec);
+ goto exit;
}
- tst_brkm(TBROK | TTERRNO, cleanup, "sigtimedwait() failed");
+ tst_brk(TBROK | TTERRNO, "sigtimedwait() failed");
}
/* Try to downgrade or remove the lease. */
switch (test_cases[i].lease_type) {
case F_WRLCK:
TEST(fcntl(fd, F_SETLEASE, F_RDLCK));
- if (TEST_RETURN == 0)
- break;
+ if (TST_RET == 0) {
+ if (test_cases[i].op_type == OP_OPEN_RDONLY)
+ break;
+
+ tst_res(TFAIL,
+ "fcntl() downgraded lease when not read-only");
+ }
+
+ if (test_cases[i].op_type == OP_OPEN_RDONLY) {
+ tst_res(TFAIL | TTERRNO,
+ "fcntl() failed to downgrade lease");
+ }
+
+ /* Falls through */
case F_RDLCK:
TEST(fcntl(fd, F_SETLEASE, F_UNLCK));
- if (TEST_RETURN == -1) {
- tst_resm(TFAIL | TTERRNO,
+ if (TST_RET == -1) {
+ tst_res(TFAIL | TTERRNO,
"fcntl() failed to remove the lease");
}
break;
@@ -198,35 +170,31 @@ static void do_test(int i)
break;
}
- tst_record_childstatus(cleanup, cpid);
-
- SAFE_CLOSE(cleanup, fd);
- fd = 0;
+exit:
+ tst_reap_children();
+ SAFE_CLOSE(fd);
}
-static int do_child(int i)
+static void do_child(unsigned int i)
{
long long elapsed_ms;
- if (tst_process_state_wait2(getppid(), 'S') != 0) {
- tst_brkm(TBROK | TERRNO, NULL,
- "failed to wait for parent process's state");
- }
+ TST_PROCESS_STATE_WAIT(getppid(), 'S');
tst_timer_start(CLOCK_MONOTONIC);
switch (test_cases[i].op_type) {
case OP_OPEN_RDONLY:
- SAFE_OPEN(NULL, "file", O_RDONLY);
+ SAFE_OPEN("file", O_RDONLY);
break;
case OP_OPEN_WRONLY:
- SAFE_OPEN(NULL, "file", O_WRONLY);
+ SAFE_OPEN("file", O_WRONLY);
break;
case OP_OPEN_RDWR:
- SAFE_OPEN(NULL, "file", O_RDWR);
+ SAFE_OPEN("file", O_RDWR);
break;
case OP_TRUNCATE:
- SAFE_TRUNCATE(NULL, "file", 0);
+ SAFE_TRUNCATE("file", 0);
break;
default:
break;
@@ -237,27 +205,33 @@ static int do_child(int i)
elapsed_ms = tst_timer_elapsed_ms();
if (elapsed_ms < MIN_TIME_LIMIT * 1000) {
- tst_resm(TPASS, "%s, unblocked within %ds",
+ tst_res(TPASS, "%s, unblocked within %ds",
test_cases[i].desc, MIN_TIME_LIMIT);
} else {
- tst_resm(TFAIL, "%s, blocked too long %llims, "
- "expected within %ds",
- test_cases[i].desc, elapsed_ms, MIN_TIME_LIMIT);
+ tst_res(TFAIL,
+ "%s, blocked too long %llims, expected within %ds",
+ test_cases[i].desc, elapsed_ms, MIN_TIME_LIMIT);
}
-
- tst_exit();
}
static void cleanup(void)
{
if (sigprocmask(SIG_SETMASK, &oldset, NULL) < 0)
- tst_resm(TWARN | TERRNO, "sigprocmask restore oldset failed");
+ tst_res(TWARN | TERRNO, "sigprocmask restore oldset failed");
- if (fd > 0 && close(fd))
- tst_resm(TWARN | TERRNO, "failed to close file");
-
- tst_rmdir();
+ if (fd > 0)
+ SAFE_CLOSE(fd);
/* Restore the lease-break-time. */
FILE_PRINTF(PATH_LS_BRK_T, "%d", ls_brk_t);
}
+
+static struct tst_test test = {
+ .forks_child = 1,
+ .needs_root = 1,
+ .needs_tmpdir = 1,
+ .tcnt = ARRAY_SIZE(test_cases),
+ .setup = setup,
+ .test = do_test,
+ .cleanup = cleanup
+};
--
2.18.0
^ permalink raw reply related [flat|nested] 9+ messages in thread
* [LTP] [PATCH v2 3/4] Convert futex_wait_bitset tests to newlib
2018-08-27 9:30 [LTP] [PATCH v2 1/4] Convert nanosleep02 to newlib Richard Palethorpe
2018-08-27 9:30 ` [LTP] [PATCH v2 2/4] Convert fcntl33 " Richard Palethorpe
@ 2018-08-27 9:30 ` Richard Palethorpe
2018-08-27 13:46 ` Petr Vorel
2018-08-27 9:30 ` [LTP] [PATCH v2 4/4] tst_timer: Convert to new library Richard Palethorpe
2018-08-27 12:46 ` [LTP] [PATCH v2 1/4] Convert nanosleep02 to newlib Petr Vorel
3 siblings, 1 reply; 9+ messages in thread
From: Richard Palethorpe @ 2018-08-27 9:30 UTC (permalink / raw)
To: ltp
Signed-off-by: Richard Palethorpe <rpalethorpe@suse.com>
---
.../kernel/syscalls/futex/futex_wait_bitset.h | 54 ++++++++++++-------
.../syscalls/futex/futex_wait_bitset01.c | 22 ++------
.../syscalls/futex/futex_wait_bitset02.c | 23 ++------
3 files changed, 43 insertions(+), 56 deletions(-)
diff --git a/testcases/kernel/syscalls/futex/futex_wait_bitset.h b/testcases/kernel/syscalls/futex/futex_wait_bitset.h
index 81a5d93ab..090dc51d2 100644
--- a/testcases/kernel/syscalls/futex/futex_wait_bitset.h
+++ b/testcases/kernel/syscalls/futex/futex_wait_bitset.h
@@ -18,6 +18,7 @@
*/
#define TRESHOLD_US 100000
+#define DEFAULT_TIMEOUT_US 100010
static void verify_futex_wait_bitset(long long wait_us, clock_t clk_id)
{
@@ -26,8 +27,8 @@ static void verify_futex_wait_bitset(long long wait_us, clock_t clk_id)
u_int32_t bitset = 0xffffffff;
int flags = clk_id == CLOCK_REALTIME ? FUTEX_CLOCK_REALTIME : 0;
- tst_resm(TINFO, "testing futex_wait_bitset() timeout with %s",
- clk_id == CLOCK_REALTIME ? "CLOCK_REALTIME" : "CLOCK_MONOTONIC");
+ tst_res(TINFO, "testing futex_wait_bitset() timeout with %s",
+ clk_id == CLOCK_REALTIME ? "CLOCK_REALTIME" : "CLOCK_MONOTONIC");
clock_gettime(clk_id, &start);
to = tst_timespec_add_us(start, wait_us);
@@ -36,38 +37,53 @@ static void verify_futex_wait_bitset(long long wait_us, clock_t clk_id)
clock_gettime(clk_id, &end);
- if (TEST_RETURN != -1) {
- tst_resm(TFAIL, "futex_wait_bitset() returned %li, expected -1",
- TEST_RETURN);
+ if (TST_RET != -1) {
+ tst_res(TFAIL, "futex_wait_bitset() returned %li, expected -1",
+ TST_RET);
return;
}
- if (TEST_ERRNO == ENOSYS) {
- tst_resm(TCONF, "In this kernel, futex() does not support "
- "FUTEX_WAIT_BITSET operation");
+ if (TST_ERR == ENOSYS) {
+ tst_res(TCONF,
+ "In this kernel, futex() does not support FUTEX_WAIT_BITSET operation");
return;
}
- if (TEST_ERRNO != ETIMEDOUT) {
- tst_resm(TFAIL | TTERRNO, "expected %s",
- tst_strerrno(ETIMEDOUT));
+ if (TST_ERR != ETIMEDOUT) {
+ tst_res(TFAIL | TTERRNO, "expected %s",
+ tst_strerrno(ETIMEDOUT));
return;
}
if (tst_timespec_lt(end, to)) {
- tst_resm(TFAIL,
- "futex_wait_bitset() woken up prematurely %llius, expected %llius",
- tst_timespec_diff_us(end, start), wait_us);
+ tst_res(TFAIL,
+ "futex_wait_bitset() woken up prematurely %llius, expected %llius",
+ tst_timespec_diff_us(end, start), wait_us);
return;
}
if (tst_timespec_diff_us(end, to) > TRESHOLD_US) {
- tst_resm(TFAIL,
- "futex_wait_bitset() waited too long %llius, expected %llius",
- tst_timespec_diff_us(end, start), wait_us);
+ tst_res(TFAIL,
+ "futex_wait_bitset() waited too long %llius, expected %llius",
+ tst_timespec_diff_us(end, start), wait_us);
return;
}
- tst_resm(TPASS, "futex_wait_bitset() waited %llius, expected %llius",
- tst_timespec_diff_us(end, start), wait_us);
+ tst_res(TPASS, "futex_wait_bitset() waited %llius, expected %llius",
+ tst_timespec_diff_us(end, start), wait_us);
}
+
+static void setup(void)
+{
+ tst_timer_check(USE_CLOCK);
+}
+
+static void run(void)
+{
+ verify_futex_wait_bitset(DEFAULT_TIMEOUT_US, USE_CLOCK);
+}
+
+static struct tst_test test = {
+ .setup = setup,
+ .test_all = run,
+};
diff --git a/testcases/kernel/syscalls/futex/futex_wait_bitset01.c b/testcases/kernel/syscalls/futex/futex_wait_bitset01.c
index e5fd621e5..371febb3b 100644
--- a/testcases/kernel/syscalls/futex/futex_wait_bitset01.c
+++ b/testcases/kernel/syscalls/futex/futex_wait_bitset01.c
@@ -24,25 +24,11 @@
#include <errno.h>
-#include "test.h"
+#include "tst_test.h"
+#include "tst_timer.h"
#include "futextest.h"
-#include "futex_wait_bitset.h"
-
-const char *TCID="futex_wait_bitset01";
-const int TST_TOTAL=1;
-
-#define DEFAULT_TIMEOUT_US 100010
-int main(int argc, char *argv[])
-{
- int lc;
+#define USE_CLOCK CLOCK_MONOTONIC
- tst_timer_check(CLOCK_MONOTONIC);
-
- tst_parse_opts(argc, argv, NULL, NULL);
-
- for (lc = 0; TEST_LOOPING(lc); lc++)
- verify_futex_wait_bitset(DEFAULT_TIMEOUT_US, CLOCK_MONOTONIC);
+#include "futex_wait_bitset.h"
- tst_exit();
-}
diff --git a/testcases/kernel/syscalls/futex/futex_wait_bitset02.c b/testcases/kernel/syscalls/futex/futex_wait_bitset02.c
index 820c65c26..e727a1b38 100644
--- a/testcases/kernel/syscalls/futex/futex_wait_bitset02.c
+++ b/testcases/kernel/syscalls/futex/futex_wait_bitset02.c
@@ -24,25 +24,10 @@
#include <errno.h>
-#include "test.h"
+#include "tst_test.h"
+#include "tst_timer.h"
#include "futextest.h"
-#include "futex_wait_bitset.h"
-
-const char *TCID="futex_wait_bitset02";
-const int TST_TOTAL=1;
-
-#define DEFAULT_TIMEOUT_US 100010
-
-int main(int argc, char *argv[])
-{
- int lc;
- tst_timer_check(CLOCK_REALTIME);
+#define USE_CLOCK CLOCK_REALTIME
- tst_parse_opts(argc, argv, NULL, NULL);
-
- for (lc = 0; TEST_LOOPING(lc); lc++)
- verify_futex_wait_bitset(DEFAULT_TIMEOUT_US, CLOCK_REALTIME);
-
- tst_exit();
-}
+#include "futex_wait_bitset.h"
--
2.18.0
^ permalink raw reply related [flat|nested] 9+ messages in thread
* [LTP] [PATCH v2 4/4] tst_timer: Convert to new library
2018-08-27 9:30 [LTP] [PATCH v2 1/4] Convert nanosleep02 to newlib Richard Palethorpe
2018-08-27 9:30 ` [LTP] [PATCH v2 2/4] Convert fcntl33 " Richard Palethorpe
2018-08-27 9:30 ` [LTP] [PATCH v2 3/4] Convert futex_wait_bitset tests " Richard Palethorpe
@ 2018-08-27 9:30 ` Richard Palethorpe
2018-08-27 14:13 ` Petr Vorel
2018-08-27 12:46 ` [LTP] [PATCH v2 1/4] Convert nanosleep02 to newlib Petr Vorel
3 siblings, 1 reply; 9+ messages in thread
From: Richard Palethorpe @ 2018-08-27 9:30 UTC (permalink / raw)
To: ltp
So we can use functions from new lib.
Signed-off-by: Richard Palethorpe <rpalethorpe@suse.com>
---
include/old/test.h | 1 -
lib/tst_timer.c | 14 ++++++++------
2 files changed, 8 insertions(+), 7 deletions(-)
diff --git a/include/old/test.h b/include/old/test.h
index 5eef304ab..8597cb1c6 100644
--- a/include/old/test.h
+++ b/include/old/test.h
@@ -53,7 +53,6 @@
#include "tst_process_state.h"
#include "old_resource.h"
#include "tst_res_flags.h"
-#include "tst_timer.h"
#include "tst_kvercmp.h"
#include "tst_fs.h"
#include "tst_pid.h"
diff --git a/lib/tst_timer.c b/lib/tst_timer.c
index 53ff36777..d5e4c49d2 100644
--- a/lib/tst_timer.c
+++ b/lib/tst_timer.c
@@ -23,7 +23,9 @@
#include <errno.h>
-#include "test.h"
+#define TST_NO_DEFAULT_MAIN
+
+#include "tst_test.h"
#include "tst_timer.h"
#include "tst_clocks.h"
#include "lapi/posix_clocks.h"
@@ -59,13 +61,13 @@ void tst_timer_check(clockid_t clk_id)
{
if (tst_clock_gettime(clk_id, &start_time)) {
if (errno == EINVAL) {
- tst_brkm(TCONF, NULL,
+ tst_brk(TCONF,
"Clock id %s(%u) not supported by kernel",
clock_name(clk_id), clk_id);
return;
}
- tst_brkm(TBROK | TERRNO, NULL, "tst_clock_gettime() failed");
+ tst_brk(TBROK | TERRNO, "tst_clock_gettime() failed");
}
}
@@ -74,7 +76,7 @@ void tst_timer_start(clockid_t clk_id)
clock_id = clk_id;
if (tst_clock_gettime(clock_id, &start_time))
- tst_resm(TWARN | TERRNO, "tst_clock_gettime() failed");
+ tst_res(TWARN | TERRNO, "tst_clock_gettime() failed");
}
int tst_timer_expired_ms(long long ms)
@@ -82,7 +84,7 @@ int tst_timer_expired_ms(long long ms)
struct timespec cur_time;
if (tst_clock_gettime(clock_id, &cur_time))
- tst_resm(TWARN | TERRNO, "tst_clock_gettime() failed");
+ tst_res(TWARN | TERRNO, "tst_clock_gettime() failed");
return tst_timespec_diff_ms(cur_time, start_time) >= ms;
}
@@ -90,7 +92,7 @@ int tst_timer_expired_ms(long long ms)
void tst_timer_stop(void)
{
if (tst_clock_gettime(clock_id, &stop_time))
- tst_resm(TWARN | TERRNO, "tst_clock_gettime() failed");
+ tst_res(TWARN | TERRNO, "tst_clock_gettime() failed");
}
struct timespec tst_timer_elapsed(void)
--
2.18.0
^ permalink raw reply related [flat|nested] 9+ messages in thread
* [LTP] [PATCH v2 1/4] Convert nanosleep02 to newlib
2018-08-27 9:30 [LTP] [PATCH v2 1/4] Convert nanosleep02 to newlib Richard Palethorpe
` (2 preceding siblings ...)
2018-08-27 9:30 ` [LTP] [PATCH v2 4/4] tst_timer: Convert to new library Richard Palethorpe
@ 2018-08-27 12:46 ` Petr Vorel
3 siblings, 0 replies; 9+ messages in thread
From: Petr Vorel @ 2018-08-27 12:46 UTC (permalink / raw)
To: ltp
Hi Richard,
> Also add extra check that nanosleep exited with the expected return value and
> errno for the user's information.
> Signed-off-by: Richard Palethorpe <rpalethorpe@suse.com>
Reviewed-by: Petr Vorel <pvorel@suse.cz>
> ---
LGTM.
> V2: Removed the falls through attribute for case statements and replace it with a comment
> .../kernel/syscalls/nanosleep/nanosleep02.c | 123 ++++++------------
> 1 file changed, 40 insertions(+), 83 deletions(-)
Kind regards,
Petr
^ permalink raw reply [flat|nested] 9+ messages in thread
* [LTP] [PATCH v2 2/4] Convert fcntl33 to newlib
2018-08-27 9:30 ` [LTP] [PATCH v2 2/4] Convert fcntl33 " Richard Palethorpe
@ 2018-08-27 13:19 ` Petr Vorel
0 siblings, 0 replies; 9+ messages in thread
From: Petr Vorel @ 2018-08-27 13:19 UTC (permalink / raw)
To: ltp
Hi Richard,
> Also add extra checks that fcntl does not return success after trying to
> downgrade a lease on a file where it can only be removed and that it can
> downgrade a lease on a file opened as read only.
> Signed-off-by: Richard Palethorpe <rpalethorpe@suse.com>
Reviewed-by: Petr Vorel <pvorel@suse.cz>
LGTM :).
Kind regards,
Petr
^ permalink raw reply [flat|nested] 9+ messages in thread
* [LTP] [PATCH v2 3/4] Convert futex_wait_bitset tests to newlib
2018-08-27 9:30 ` [LTP] [PATCH v2 3/4] Convert futex_wait_bitset tests " Richard Palethorpe
@ 2018-08-27 13:46 ` Petr Vorel
0 siblings, 0 replies; 9+ messages in thread
From: Petr Vorel @ 2018-08-27 13:46 UTC (permalink / raw)
To: ltp
Hi Richard,
> Signed-off-by: Richard Palethorpe <rpalethorpe@suse.com>
Reviewed-by: Petr Vorel <pvorel@suse.cz>
> .../kernel/syscalls/futex/futex_wait_bitset.h | 54 ++++++++++++-------
> .../syscalls/futex/futex_wait_bitset01.c | 22 ++------
> .../syscalls/futex/futex_wait_bitset02.c | 23 ++------
> 3 files changed, 43 insertions(+), 56 deletions(-)
LGTM.
Kind regards,
Petr
^ permalink raw reply [flat|nested] 9+ messages in thread
* [LTP] [PATCH v2 4/4] tst_timer: Convert to new library
2018-08-27 9:30 ` [LTP] [PATCH v2 4/4] tst_timer: Convert to new library Richard Palethorpe
@ 2018-08-27 14:13 ` Petr Vorel
2018-08-28 6:24 ` Richard Palethorpe
0 siblings, 1 reply; 9+ messages in thread
From: Petr Vorel @ 2018-08-27 14:13 UTC (permalink / raw)
To: ltp
Hi Richard,
> So we can use functions from new lib.
> Signed-off-by: Richard Palethorpe <rpalethorpe@suse.com>
Reviewed-by: Petr Vorel <pvorel@suse.cz>
Thanks, merged whole patchset.
Kind regards,
Petr
^ permalink raw reply [flat|nested] 9+ messages in thread
* [LTP] [PATCH v2 4/4] tst_timer: Convert to new library
2018-08-27 14:13 ` Petr Vorel
@ 2018-08-28 6:24 ` Richard Palethorpe
0 siblings, 0 replies; 9+ messages in thread
From: Richard Palethorpe @ 2018-08-28 6:24 UTC (permalink / raw)
To: ltp
thanks
Petr Vorel <pvorel@suse.cz> writes:
> Hi Richard,
>
>> So we can use functions from new lib.
>
>> Signed-off-by: Richard Palethorpe <rpalethorpe@suse.com>
> Reviewed-by: Petr Vorel <pvorel@suse.cz>
>
> Thanks, merged whole patchset.
>
>
> Kind regards,
> Petr
--
Thank you,
Richard.
^ permalink raw reply [flat|nested] 9+ messages in thread
end of thread, other threads:[~2018-08-28 6:24 UTC | newest]
Thread overview: 9+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2018-08-27 9:30 [LTP] [PATCH v2 1/4] Convert nanosleep02 to newlib Richard Palethorpe
2018-08-27 9:30 ` [LTP] [PATCH v2 2/4] Convert fcntl33 " Richard Palethorpe
2018-08-27 13:19 ` Petr Vorel
2018-08-27 9:30 ` [LTP] [PATCH v2 3/4] Convert futex_wait_bitset tests " Richard Palethorpe
2018-08-27 13:46 ` Petr Vorel
2018-08-27 9:30 ` [LTP] [PATCH v2 4/4] tst_timer: Convert to new library Richard Palethorpe
2018-08-27 14:13 ` Petr Vorel
2018-08-28 6:24 ` Richard Palethorpe
2018-08-27 12:46 ` [LTP] [PATCH v2 1/4] Convert nanosleep02 to newlib Petr Vorel
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox