* print_time.c (timespec_fmt): New constant.
(print_timespec_t, sprint_timespec): Use it instead of time_fmt.
* tests/aio.c: Add field names to expected output.
* tests/clock_nanosleep.c (main): Likewise.
* tests/clock_xettime.c (main): Likewise.
* tests/futex.c (main): Likewise.
* tests/mq_sendrecv.c (do_send, do_recv): Likewise.
* tests/nanosleep.c (main): Likewise.
* tests/ppoll-v.expected: Likewise.
* tests/ppoll.expected: Likewise.
* tests/pselect6.c (main): Likewise.
* tests/recvmmsg-timeout.c (main): Likewise.
* tests/restart_syscall.c (main): Likewise.
* tests/rt_sigtimedwait.c (iterate, main): Likewise.
* tests/sched_rr_get_interval.c (main): Likewise.
* tests/semop.c (main): Likewise.
* tests/strace-T.expected: Likewise.
* tests/timer_xettime.c (main): Likewise.
* tests/timerfd_xettime.c (main): Likewise.
* tests/utimensat.c (print_ts): Likewise.
# define UTIME_OMIT ((1l << 30) - 2l)
#endif
+static const char timespec_fmt[] = "{tv_sec=%jd, tv_nsec=%jd}";
static const char time_fmt[] = "{%jd, %jd}";
static void
print_timespec_t(const timespec_t *t)
{
- tprintf(time_fmt, (intmax_t) t->tv_sec, (intmax_t) t->tv_nsec);
+ tprintf(timespec_fmt, (intmax_t) t->tv_sec, (intmax_t) t->tv_nsec);
}
static void
struct tcb *tcp, const long addr)
{
timespec_t t;
- static char buf[sizeof(time_fmt) + 3 * sizeof(t)];
+ static char buf[sizeof(timespec_fmt) + 3 * sizeof(t)];
if (!addr) {
strcpy(buf, "NULL");
umove(tcp, addr, &t)) {
snprintf(buf, sizeof(buf), "%#lx", addr);
} else {
- snprintf(buf, sizeof(buf), time_fmt,
+ snprintf(buf, sizeof(buf), timespec_fmt,
(intmax_t) t.tv_sec, (intmax_t) t.tv_nsec);
}
printf("io_getevents(%#lx, %ld, %ld, ["
"{data=%#" PRI__x64 ", obj=%p, res=%u, res2=0}, "
"{data=%#" PRI__x64 ", obj=%p, res=%u, res2=0}"
- "], {0, 123456789}) = %s\n",
+ "], {tv_sec=0, tv_nsec=123456789}) = %s\n",
*ctx, (long) nr, (long) (nr + 1),
cb[0].aio_data, &cb[0], sizeof_data0,
cb[1].aio_data, &cb[1], sizeof_data1,
if (syscall(__NR_clock_nanosleep, CLOCK_REALTIME, 0, &req.ts, NULL))
perror_msg_and_skip("clock_nanosleep CLOCK_REALTIME");
- printf("clock_nanosleep(CLOCK_REALTIME, 0, {%jd, %jd}, NULL) = 0\n",
+ printf("clock_nanosleep(CLOCK_REALTIME, 0, {tv_sec=%jd, tv_nsec=%jd}, "
+ "NULL) = 0\n",
(intmax_t) req.ts.tv_sec, (intmax_t) req.ts.tv_nsec);
assert(syscall(__NR_clock_nanosleep, CLOCK_REALTIME, 0,
assert(syscall(__NR_clock_nanosleep, CLOCK_REALTIME, 0,
&req.ts, &rem.ts) == 0);
- printf("clock_nanosleep(CLOCK_REALTIME, 0, {%jd, %jd}, %p) = 0\n",
+ printf("clock_nanosleep(CLOCK_REALTIME, 0, {tv_sec=%jd, tv_nsec=%jd}, "
+ "%p) = 0\n",
(intmax_t) req.ts.tv_sec, (intmax_t) req.ts.tv_nsec, &rem.ts);
req.ts.tv_nsec = 999999999 + 1;
assert(syscall(__NR_clock_nanosleep, CLOCK_MONOTONIC, 0,
&req.ts, &rem.ts) == -1);
printf("clock_nanosleep(CLOCK_MONOTONIC, 0"
- ", {%jd, %jd}, %p) = -1 EINVAL (%m)\n",
+ ", {tv_sec=%jd, tv_nsec=%jd}, %p) = -1 EINVAL (%m)\n",
(intmax_t) req.ts.tv_sec, (intmax_t) req.ts.tv_nsec, &rem.ts);
assert(sigaction(SIGALRM, &act, NULL) == 0);
--req.ts.tv_nsec;
assert(syscall(__NR_clock_nanosleep, CLOCK_REALTIME, 0,
&req.ts, &rem.ts) == -1);
- printf("clock_nanosleep(CLOCK_REALTIME, 0, {%jd, %jd}, {%jd, %jd})"
+ printf("clock_nanosleep(CLOCK_REALTIME, 0, {tv_sec=%jd, tv_nsec=%jd}, "
+ "{tv_sec=%jd, tv_nsec=%jd})"
" = ? ERESTART_RESTARTBLOCK (Interrupted by signal)\n",
(intmax_t) req.ts.tv_sec, (intmax_t) req.ts.tv_nsec,
(intmax_t) rem.ts.tv_sec, (intmax_t) rem.ts.tv_nsec);
puts("--- SIGALRM {si_signo=SIGALRM, si_code=SI_KERNEL} ---");
assert(syscall(__NR_clock_gettime, CLOCK_REALTIME, &req.ts) == 0);
- printf("clock_gettime(CLOCK_REALTIME, {%jd, %jd}) = 0\n",
+ printf("clock_gettime(CLOCK_REALTIME, {tv_sec=%jd, tv_nsec=%jd}) = 0\n",
(intmax_t) req.ts.tv_sec, (intmax_t) req.ts.tv_nsec);
++req.ts.tv_sec;
rem.ts.tv_nsec = 0xc0de5;
assert(syscall(__NR_clock_nanosleep, CLOCK_REALTIME, TIMER_ABSTIME,
&req.ts, &rem.ts) == -1);
- printf("clock_nanosleep(CLOCK_REALTIME, TIMER_ABSTIME, {%jd, %jd}, %p)"
+ printf("clock_nanosleep(CLOCK_REALTIME, TIMER_ABSTIME, {tv_sec=%jd, "
+ "tv_nsec=%jd}, %p)"
" = ? ERESTARTNOHAND (To be restarted if no handler)\n",
(intmax_t) req.ts.tv_sec, (intmax_t) req.ts.tv_nsec, &rem.ts);
puts("--- SIGALRM {si_signo=SIGALRM, si_code=SI_KERNEL} ---");
if (syscall(__NR_clock_getres, CLOCK_REALTIME, &t.ts))
perror_msg_and_skip("clock_getres CLOCK_REALTIME");
- printf("clock_getres(CLOCK_REALTIME, {%jd, %jd}) = 0\n",
+ printf("clock_getres(CLOCK_REALTIME, {tv_sec=%jd, tv_nsec=%jd}) = 0\n",
(intmax_t) t.ts.tv_sec,
(intmax_t) t.ts.tv_nsec);
if (syscall(__NR_clock_gettime, CLOCK_PROCESS_CPUTIME_ID, &t.ts))
perror_msg_and_skip("clock_gettime CLOCK_PROCESS_CPUTIME_ID");
- printf("clock_gettime(CLOCK_PROCESS_CPUTIME_ID, {%jd, %jd}) = 0\n",
+ printf("clock_gettime(CLOCK_PROCESS_CPUTIME_ID, "
+ "{tv_sec=%jd, tv_nsec=%jd}) = 0\n",
(intmax_t) t.ts.tv_sec,
(intmax_t) t.ts.tv_nsec);
if (!syscall(__NR_clock_settime, CLOCK_THREAD_CPUTIME_ID, &t.ts))
error_msg_and_skip("clock_settime CLOCK_THREAD_CPUTIME_ID:"
" EINVAL expected");
- printf("clock_settime(CLOCK_THREAD_CPUTIME_ID, {%jd, %jd})"
- " = -1 EINVAL (%m)\n",
+ printf("clock_settime(CLOCK_THREAD_CPUTIME_ID, {tv_sec=%jd, "
+ "tv_nsec=%jd}) = -1 EINVAL (%m)\n",
(intmax_t) t.ts.tv_sec,
(intmax_t) t.ts.tv_nsec);
/* uaddr is NULL */
CHECK_FUTEX(NULL, FUTEX_WAIT, VAL, tmout, uaddr2, VAL3,
(rc == -1) && (errno == EFAULT));
- printf("futex(NULL, FUTEX_WAIT, %u, {%jd, %jd}) = %s\n",
+ printf("futex(NULL, FUTEX_WAIT, %u, {tv_sec=%jd, tv_nsec=%jd}) = %s\n",
VAL_PR, (intmax_t) tmout->tv_sec, (intmax_t) tmout->tv_nsec,
sprintrc(rc));
/* uaddr is faulty */
CHECK_FUTEX(uaddr + 1, FUTEX_WAIT, VAL, tmout, uaddr2, VAL3,
(rc == -1) && (errno == EFAULT));
- printf("futex(%p, FUTEX_WAIT, %u, {%jd, %jd}) = %s\n",
+ printf("futex(%p, FUTEX_WAIT, %u, {tv_sec=%jd, tv_nsec=%jd}) = %s\n",
uaddr + 1, VAL_PR, (intmax_t) tmout->tv_sec,
(intmax_t) tmout->tv_nsec, sprintrc(rc));
/* uaddr is not as provided; uaddr2 is faulty but ignored */
CHECK_FUTEX(uaddr, FUTEX_WAIT, VAL, tmout, uaddr2 + 1, VAL3,
(rc == -1) && (errno == EAGAIN));
- printf("futex(%p, FUTEX_WAIT, %u, {%jd, %jd}) = %s\n",
+ printf("futex(%p, FUTEX_WAIT, %u, {tv_sec=%jd, tv_nsec=%jd}) = %s\n",
uaddr, VAL_PR, (intmax_t) tmout->tv_sec,
(intmax_t) tmout->tv_nsec, sprintrc(rc));
/* uaddr is not as provided; uaddr2 is faulty but ignored */
CHECK_FUTEX_ENOSYS(uaddr, FUTEX_PRIVATE_FLAG | FUTEX_WAIT, VAL, tmout,
uaddr2 + 1, VAL3, (rc == -1) && (errno == EAGAIN));
- printf("futex(%p, FUTEX_WAIT_PRIVATE, %u, {%jd, %jd}) = %s\n",
+ printf("futex(%p, FUTEX_WAIT_PRIVATE, %u, {tv_sec=%jd, tv_nsec=%jd}) = "
+ "%s\n",
uaddr, VAL_PR, (intmax_t) tmout->tv_sec,
(intmax_t) tmout->tv_nsec, sprintrc(rc));
FUTEX_CLOCK_REALTIME | FUTEX_WAIT,
VAL, tmout, uaddr2, VAL3, (rc == -1) && (errno == EAGAIN));
printf("futex(%p, FUTEX_WAIT|FUTEX_CLOCK_REALTIME, %u, "
- "{%jd, %jd}) = %s\n", uaddr, VAL_PR,
+ "{tv_sec=%jd, tv_nsec=%jd}) = %s\n", uaddr, VAL_PR,
(intmax_t) tmout->tv_sec, (intmax_t) tmout->tv_nsec,
sprintrc(rc));
FUTEX_CLOCK_REALTIME | FUTEX_PRIVATE_FLAG | FUTEX_WAIT ,
VAL, tmout, uaddr2, 0, (rc == -1) && (errno == EAGAIN));
printf("futex(%p, FUTEX_WAIT_PRIVATE|FUTEX_CLOCK_REALTIME, %u, "
- "{%jd, %jd}) = %s\n", uaddr, VAL_PR,
+ "{tv_sec=%jd, tv_nsec=%jd}) = %s\n", uaddr, VAL_PR,
(intmax_t) tmout->tv_sec, (intmax_t) tmout->tv_nsec,
sprintrc(rc));
CHECK_FUTEX_ENOSYS(uaddr, FUTEX_WAIT_BITSET, VAL, tmout, uaddr2 + 1,
VAL3, (rc == -1) && (errno == EAGAIN));
- printf("futex(%p, FUTEX_WAIT_BITSET, %u, {%jd, %jd}, %#x) = %s\n",
+ printf("futex(%p, FUTEX_WAIT_BITSET, %u, {tv_sec=%jd, tv_nsec=%jd}, "
+ "%#x) = %s\n",
uaddr, VAL_PR, (intmax_t) tmout->tv_sec,
(intmax_t) tmout->tv_nsec, VAL3_PR, sprintrc(rc));
/* val3 of 0 is invalid */
CHECK_FUTEX_ENOSYS(uaddr, FUTEX_WAIT_BITSET, VAL, tmout, uaddr2 + 1, 0,
(rc == -1) && (errno == EINVAL));
- printf("futex(%p, FUTEX_WAIT_BITSET, %u, {%jd, %jd}, %#x) = %s\n",
+ printf("futex(%p, FUTEX_WAIT_BITSET, %u, {tv_sec=%jd, tv_nsec=%jd}, "
+ "%#x) = %s\n",
uaddr, VAL_PR, (intmax_t) tmout->tv_sec,
(intmax_t) tmout->tv_nsec, 0, sprintrc(rc));
CHECK_FUTEX_ENOSYS(uaddr, FUTEX_PRIVATE_FLAG | FUTEX_WAIT_BITSET, VAL,
tmout, uaddr2 + 1, VAL3, (rc == -1) && (errno == EAGAIN));
- printf("futex(%p, FUTEX_WAIT_BITSET_PRIVATE, %u, {%jd, %jd}, %#x) = "
- "%s\n", uaddr, VAL_PR, (intmax_t) tmout->tv_sec,
+ printf("futex(%p, FUTEX_WAIT_BITSET_PRIVATE, %u, "
+ "{tv_sec=%jd, tv_nsec=%jd}, %#x) = %s\n",
+ uaddr, VAL_PR, (intmax_t) tmout->tv_sec,
(intmax_t) tmout->tv_nsec, VAL3_PR, sprintrc(rc));
/* Next 3 tests are with CLOCKRT bit set */
CHECK_FUTEX_ENOSYS(uaddr, FUTEX_CLOCK_REALTIME | FUTEX_WAIT_BITSET, VAL,
tmout, uaddr2 + 1, VAL3, (rc == -1) && (errno == EAGAIN));
printf("futex(%p, FUTEX_WAIT_BITSET|FUTEX_CLOCK_REALTIME, %u, "
- "{%jd, %jd}, %#x) = %s\n", uaddr, VAL_PR,
+ "{tv_sec=%jd, tv_nsec=%jd}, %#x) = %s\n", uaddr, VAL_PR,
(intmax_t) tmout->tv_sec, (intmax_t) tmout->tv_nsec, VAL3_PR,
sprintrc(rc));
CHECK_FUTEX_ENOSYS(uaddr, FUTEX_CLOCK_REALTIME | FUTEX_WAIT_BITSET, VAL,
tmout, uaddr2 + 1, 0, (rc == -1) && (errno == EINVAL));
printf("futex(%p, FUTEX_WAIT_BITSET|FUTEX_CLOCK_REALTIME, %u, "
- "{%jd, %jd}, %#x) = %s\n", uaddr, VAL_PR,
+ "{tv_sec=%jd, tv_nsec=%jd}, %#x) = %s\n", uaddr, VAL_PR,
(intmax_t) tmout->tv_sec, (intmax_t) tmout->tv_nsec, 0,
sprintrc(rc));
FUTEX_WAIT_BITSET, VAL, tmout, uaddr2 + 1, VAL3,
(rc == -1) && (errno == EAGAIN));
printf("futex(%p, FUTEX_WAIT_BITSET_PRIVATE|FUTEX_CLOCK_REALTIME, %u, "
- "{%jd, %jd}, %#x) = %s\n", uaddr, VAL_PR,
+ "{tv_sec=%jd, tv_nsec=%jd}, %#x) = %s\n", uaddr, VAL_PR,
(intmax_t) tmout->tv_sec, (intmax_t) tmout->tv_nsec, VAL3_PR,
sprintrc(rc));
CHECK_FUTEX_ENOSYS(uaddr + 1, FUTEX_LOCK_PI, VAL, tmout, uaddr2 + 1,
VAL3, (rc == -1) && (errno == EFAULT));
- printf("futex(%p, FUTEX_LOCK_PI, {%jd, %jd}) = %s\n",
+ printf("futex(%p, FUTEX_LOCK_PI, {tv_sec=%jd, tv_nsec=%jd}) = %s\n",
uaddr + 1, (intmax_t) tmout->tv_sec, (intmax_t) tmout->tv_nsec,
sprintrc(rc));
CHECK_FUTEX_ENOSYS(uaddr + 1, FUTEX_PRIVATE_FLAG | FUTEX_LOCK_PI, VAL,
tmout, uaddr2 + 1, VAL3, (rc == -1) && (errno == EFAULT));
- printf("futex(%p, FUTEX_LOCK_PI_PRIVATE, {%jd, %jd}) = %s\n",
+ printf("futex(%p, FUTEX_LOCK_PI_PRIVATE, {tv_sec=%jd, tv_nsec=%jd}) = "
+ "%s\n",
uaddr + 1, (intmax_t) tmout->tv_sec, (intmax_t) tmout->tv_nsec,
sprintrc(rc));
CHECK_FUTEX_ENOSYS(uaddr, FUTEX_WAIT_REQUEUE_PI, VAL, tmout, uaddr2,
VAL3, (rc == -1) && (errno == EAGAIN));
- printf("futex(%p, FUTEX_WAIT_REQUEUE_PI, %u, {%jd, %jd}, %p) = %s\n",
+ printf("futex(%p, FUTEX_WAIT_REQUEUE_PI, %u, "
+ "{tv_sec=%jd, tv_nsec=%jd}, %p) = %s\n",
uaddr, VAL_PR, (intmax_t) tmout->tv_sec,
(intmax_t) tmout->tv_nsec, uaddr2, sprintrc(rc));
CHECK_FUTEX_ENOSYS(uaddr, FUTEX_PRIVATE_FLAG | FUTEX_WAIT_REQUEUE_PI,
VAL, tmout, uaddr2, VAL3, (rc == -1) && (errno == EAGAIN));
- printf("futex(%p, FUTEX_WAIT_REQUEUE_PI_PRIVATE, %u, {%jd, %jd}, %p) "
+ printf("futex(%p, FUTEX_WAIT_REQUEUE_PI_PRIVATE, %u, "
+ "{tv_sec=%jd, tv_nsec=%jd}, %p) "
"= %s\n", uaddr, VAL_PR, (intmax_t) tmout->tv_sec,
(intmax_t) tmout->tv_nsec, uaddr2, sprintrc(rc));
CHECK_FUTEX_ENOSYS(uaddr, FUTEX_CLOCK_REALTIME | FUTEX_WAIT_REQUEUE_PI,
VAL, tmout, uaddr2, VAL3, (rc == -1) && (errno == EAGAIN));
printf("futex(%p, FUTEX_WAIT_REQUEUE_PI|FUTEX_CLOCK_REALTIME, %u, "
- "{%jd, %jd}, %p) = %s\n", uaddr, VAL_PR,
+ "{tv_sec=%jd, tv_nsec=%jd}, %p) = %s\n", uaddr, VAL_PR,
(intmax_t) tmout->tv_sec, (intmax_t) tmout->tv_nsec, uaddr2,
sprintrc(rc));
FUTEX_WAIT_REQUEUE_PI, VAL, tmout, uaddr2, VAL3,
(rc == -1) && (errno == EAGAIN));
printf("futex(%p, FUTEX_WAIT_REQUEUE_PI_PRIVATE|FUTEX_CLOCK_REALTIME, "
- "%u, {%jd, %jd}, %p) = %s\n", uaddr, VAL_PR,
+ "%u, {tv_sec=%jd, tv_nsec=%jd}, %p) = %s\n", uaddr, VAL_PR,
(intmax_t) tmout->tv_sec, (intmax_t) tmout->tv_nsec, uaddr2,
sprintrc(rc));
if (cropped)
printf("...");
errno = saved_errno;
- printf(", %u, 42, {%jd, %jd}) = %s\n", msg_size,
+ printf(", %u, 42, {tv_sec=%jd, tv_nsec=%jd}) = %s\n", msg_size,
(intmax_t) tmout->tv_sec, (intmax_t) tmout->tv_nsec,
sprintrc(rc));
errno = saved_errno;
printf("%p", msg);
}
errno = saved_errno;
- printf(", %u, [42], {%jd, %jd}) = %s\n", MSG_SIZE,
+ printf(", %u, [42], {tv_sec=%jd, tv_nsec=%jd}) = %s\n", MSG_SIZE,
(intmax_t) tmout->tv_sec,
(intmax_t) tmout->tv_nsec, sprintrc(rc));
errno = saved_errno;
/* Partially invalid message (memory only partially available) */
rc = syscall(__NR_mq_timedsend, bogus_fd, msg + MSG_SIZE - MSG_CUT,
MSG_SIZE, bogus_prio, bogus_tmout);
- printf("mq_timedsend(%d, %p, %llu, %u, {%jd, %jd}) = %s\n",
+ printf("mq_timedsend(%d, %p, %llu, %u, {tv_sec=%jd, tv_nsec=%jd}) = "
+ "%s\n",
(int) bogus_fd, msg + MSG_SIZE - MSG_CUT,
(unsigned long long) MSG_SIZE, (unsigned) bogus_prio,
(intmax_t) bogus_tmout->tv_sec, (intmax_t) bogus_tmout->tv_nsec,
errstr = sprintrc(rc);
printf("mq_timedsend(%d, ", (int) bogus_fd);
printstr(MSG_START + MSG_SIZE - MSG_CUT, MSG_CUT);
- printf(", %llu, %u, {%jd, %jd}) = %s\n",
+ printf(", %llu, %u, {tv_sec=%jd, tv_nsec=%jd}) = %s\n",
(unsigned long long) MSG_CUT, (unsigned) bogus_prio,
(intmax_t) bogus_tmout->tv_sec, (intmax_t) bogus_tmout->tv_nsec,
errstr);
errstr = sprintrc(rc);
printf("mq_timedsend(%d, ", (int) bogus_fd);
printstr(MSG_START + MSG_CUT, MSG_MAX_UNCUT);
- printf("..., %llu, %u, {%jd, %jd}) = %s\n",
+ printf("..., %llu, %u, {tv_sec=%jd, tv_nsec=%jd}) = %s\n",
(unsigned long long) MSG_SIZE, (unsigned) bogus_prio,
(intmax_t) bogus_tmout->tv_sec, (intmax_t) bogus_tmout->tv_nsec,
errstr);
/* Invalid fd, valid msg pointer */
rc = syscall(__NR_mq_timedreceive, bogus_fd, msg, bogus_size,
bogus_prio_ptr, bogus_tmout);
- printf("mq_timedreceive(%d, %p, %llu, %p, {%jd, %jd}) = %s\n",
+ printf("mq_timedreceive(%d, %p, %llu, %p, {tv_sec=%jd, tv_nsec=%jd}) = "
+ "%s\n",
(int) bogus_fd, msg, (unsigned long long) bogus_size,
bogus_prio_ptr, (intmax_t) bogus_tmout->tv_sec,
(intmax_t) bogus_tmout->tv_nsec, sprintrc(rc));
if (nanosleep(&req.ts, NULL))
perror_msg_and_fail("nanosleep");
- printf("nanosleep({%jd, %jd}, NULL) = 0\n",
+ printf("nanosleep({tv_sec=%jd, tv_nsec=%jd}, NULL) = 0\n",
(intmax_t) req.ts.tv_sec, (intmax_t) req.ts.tv_nsec);
assert(nanosleep(NULL, &rem.ts) == -1);
if (nanosleep(&req.ts, &rem.ts))
perror_msg_and_fail("nanosleep");
- printf("nanosleep({%jd, %jd}, %p) = 0\n",
+ printf("nanosleep({tv_sec=%jd, tv_nsec=%jd}, %p) = 0\n",
(intmax_t) req.ts.tv_sec, (intmax_t) req.ts.tv_nsec, &rem.ts);
req.ts.tv_nsec = 1000000000;
assert(nanosleep(&req.ts, &rem.ts) == -1);
- printf("nanosleep({%jd, %jd}, %p) = -1 EINVAL (%m)\n",
+ printf("nanosleep({tv_sec=%jd, tv_nsec=%jd}, %p) = -1 EINVAL (%m)\n",
(intmax_t) req.ts.tv_sec, (intmax_t) req.ts.tv_nsec, &rem.ts);
assert(sigaction(SIGALRM, &act, NULL) == 0);
req.ts.tv_nsec = 999999999;
assert(nanosleep(&req.ts, &rem.ts) == -1);
- printf("nanosleep({%jd, %jd}, {%jd, %jd})"
+ printf("nanosleep({tv_sec=%jd, tv_nsec=%jd}, {tv_sec=%jd, tv_nsec=%jd})"
" = ? ERESTART_RESTARTBLOCK (Interrupted by signal)\n",
(intmax_t) req.ts.tv_sec, (intmax_t) req.ts.tv_nsec,
(intmax_t) rem.ts.tv_sec, (intmax_t) rem.ts.tv_nsec);
-ppoll\(\[\{fd=0, events=POLLIN\|POLLPRI\|POLLRDNORM\|POLLRDBAND\}, \{fd=1, events=POLLOUT(\|POLLWRNORM)?\|POLLWRBAND\}, \{fd=3, events=POLLIN\|POLLPRI\}, \{fd=4, events=POLLOUT\}\], 4, \{42, 999999999\}, \[(USR2 CHLD|CHLD USR2)\], (4|8|16)\) = 2 \(\[\{fd=1, revents=POLLOUT(\|POLLWRNORM)?\}, \{fd=4, revents=POLLOUT\}\], left \{42, 9[0-9]{8}\}\)
-ppoll\(\[\{fd=1, events=POLLIN\|POLLPRI\|POLLRDNORM\|POLLRDBAND\}, \{fd=0, events=POLLOUT(\|POLLWRNORM)?\|POLLWRBAND\}\], 2, \{0, 999\}, ~\[HUP KILL STOP[^]]*\], (4|8|16)\) = 0 \(Timeout\)
+ppoll\(\[\{fd=0, events=POLLIN\|POLLPRI\|POLLRDNORM\|POLLRDBAND\}, \{fd=1, events=POLLOUT(\|POLLWRNORM)?\|POLLWRBAND\}, \{fd=3, events=POLLIN\|POLLPRI\}, \{fd=4, events=POLLOUT\}\], 4, \{tv_sec=42, tv_nsec=999999999\}, \[(USR2 CHLD|CHLD USR2)\], (4|8|16)\) = 2 \(\[\{fd=1, revents=POLLOUT(\|POLLWRNORM)?\}, \{fd=4, revents=POLLOUT\}\], left \{tv_sec=42, tv_nsec=9[0-9]{8}\}\)
+ppoll\(\[\{fd=1, events=POLLIN\|POLLPRI\|POLLRDNORM\|POLLRDBAND\}, \{fd=0, events=POLLOUT(\|POLLWRNORM)?\|POLLWRBAND\}\], 2, \{tv_sec=0, tv_nsec=999\}, ~\[HUP KILL STOP[^]]*\], (4|8|16)\) = 0 \(Timeout\)
ppoll\(NULL, 42, NULL, NULL, (4|8|16)\) = -1 EFAULT .*
-ppoll\(\[\{fd=0, events=POLLIN\|POLLPRI\|POLLRDNORM\|POLLRDBAND\}, \{fd=1, events=POLLOUT(\|POLLWRNORM)?\|POLLWRBAND\}, \.\.\.\], 4, \{42, 999999999\}, \[(USR2 CHLD|CHLD USR2)\], (4|8|16)\) = 2 \(\[\{fd=1, revents=POLLOUT(\|POLLWRNORM)?\}, \{fd=4, revents=POLLOUT\}\], left \{42, 9[0-9]{8}\}\)
-ppoll\(\[\{fd=1, events=POLLIN\|POLLPRI\|POLLRDNORM\|POLLRDBAND\}, \{fd=0, events=POLLOUT(\|POLLWRNORM)?\|POLLWRBAND\}\], 2, \{0, 999\}, ~\[HUP KILL STOP[^]]*\], (4|8|16)\) = 0 \(Timeout\)
+ppoll\(\[\{fd=0, events=POLLIN\|POLLPRI\|POLLRDNORM\|POLLRDBAND\}, \{fd=1, events=POLLOUT(\|POLLWRNORM)?\|POLLWRBAND\}, \.\.\.\], 4, \{tv_sec=42, tv_nsec=999999999\}, \[(USR2 CHLD|CHLD USR2)\], (4|8|16)\) = 2 \(\[\{fd=1, revents=POLLOUT(\|POLLWRNORM)?\}, \{fd=4, revents=POLLOUT\}\], left \{tv_sec=42, tv_nsec=9[0-9]{8}\}\)
+ppoll\(\[\{fd=1, events=POLLIN\|POLLPRI\|POLLRDNORM\|POLLRDBAND\}, \{fd=0, events=POLLOUT(\|POLLWRNORM)?\|POLLWRBAND\}\], 2, \{tv_sec=0, tv_nsec=999\}, ~\[HUP KILL STOP[^]]*\], (4|8|16)\) = 0 \(Timeout\)
ppoll\(NULL, 42, NULL, NULL, (4|8|16)\) = -1 EFAULT .*
FD_SET(fds[0], set[1]);
FD_SET(fds[1], set[1]);
assert(syscall(__NR_pselect6, fds[1] + 1, NULL, set[1], NULL, &tm.ts, NULL) == 3);
- printf("pselect6(%d, NULL, [1 2 %d %d], NULL, {%lld, %lld}, NULL)"
- " = 3 (out [1 2 %d], left {%lld, %lld})\n",
+ printf("pselect6(%d, NULL, [1 2 %d %d], NULL, "
+ "{tv_sec=%lld, tv_nsec=%lld}, NULL) = 3 (out [1 2 %d], left "
+ "{tv_sec=%lld, tv_nsec=%lld})\n",
fds[1] + 1, fds[0], fds[1],
(long long) tm_in.ts.tv_sec, (long long) tm_in.ts.tv_nsec,
fds[1],
tm.ts.tv_sec = 0;
tm.ts.tv_nsec = 123;
assert(pselect(FD_SETSIZE + 1, set[0], set[1], NULL, &tm.ts, &mask) == 0);
- printf("pselect6(%d, [%d], [], NULL, {0, 123}, {[HUP CHLD], %u}) "
- "= 0 (Timeout)\n", FD_SETSIZE + 1, fds[0], NSIG / 8);
+ printf("pselect6(%d, [%d], [], NULL, {tv_sec=0, tv_nsec=123}, "
+ "{[HUP CHLD], %u}) = 0 (Timeout)\n",
+ FD_SETSIZE + 1, fds[0], NSIG / 8);
/*
* See how timeouts are decoded.
tm.ts.tv_nsec = 222222222;
assert(pselect(0, NULL, NULL, NULL, &tm.ts, &mask) == -1);
- printf("pselect6(0, NULL, NULL, NULL, {0, 222222222}, {[HUP CHLD], %u})"
- " = ? ERESTARTNOHAND (To be restarted if no handler)\n",
+ printf("pselect6(0, NULL, NULL, NULL, {tv_sec=0, tv_nsec=222222222}, "
+ "{[HUP CHLD], %u}) = "
+ "? ERESTARTNOHAND (To be restarted if no handler)\n",
NSIG / 8);
puts("--- SIGALRM {si_signo=SIGALRM, si_code=SI_KERNEL} ---");
struct timespec t = { .tv_sec = 0, .tv_nsec = 12345678 };
int rc = recv_mmsg(-1, &mh, 1, 0, &t);
- printf("recvmmsg(-1, %p, 1, 0, {0, 12345678})"
+ printf("recvmmsg(-1, %p, 1, 0, {tv_sec=0, tv_nsec=12345678})"
" = %d %s (%m)\n", &mh, rc, errno2name());
rc = recv_mmsg(fds[0], &mh, 1, 0, &t);
printf("recvmmsg(%d, [{msg_hdr={msg_name=NULL, msg_namelen=0"
", msg_iov=[{iov_base=\"A\", iov_len=1}], msg_iovlen=1"
", msg_controllen=0, msg_flags=0}, msg_len=1}], 1, 0"
- ", {0, 12345678}) = %d (left {0, %d})\n",
+ ", {tv_sec=0, tv_nsec=12345678}) = "
+ "%d (left {tv_sec=0, tv_nsec=%d})\n",
fds[0], rc, (int) t.tv_nsec);
puts("+++ exited with 0 +++");
if (nanosleep(&req, &rem))
perror_msg_and_fail("nanosleep");
- printf("nanosleep\\(\\{%jd, %jd\\}, \\{%jd, %jd\\}\\)"
+ printf("nanosleep\\(\\{tv_sec=%jd, tv_nsec=%jd\\}, "
+ "\\{tv_sec=%jd, tv_nsec=%jd\\}\\)"
" = \\? ERESTART_RESTARTBLOCK \\(Interrupted by signal\\)\n",
(intmax_t) req.tv_sec, (intmax_t) req.tv_nsec,
(intmax_t) rem.tv_sec, (intmax_t) rem.tv_nsec);
#else
# define ALTERNATIVE_NANOSLEEP_REQ ""
#endif
- printf("(nanosleep\\((%s\\{%jd, %jd\\}), %p|restart_syscall\\(<\\.\\.\\."
+ printf("(nanosleep\\((%s\\{tv_sec=%jd, tv_nsec=%jd\\}), "
+ "%p|restart_syscall\\(<\\.\\.\\."
" resuming interrupted nanosleep \\.\\.\\.>)\\) = 0\n",
ALTERNATIVE_NANOSLEEP_REQ,
(intmax_t) req.tv_sec, (intmax_t) req.tv_nsec, &rem);
for (;;) {
assert(k_sigtimedwait(set, NULL, timeout, size) == -1);
if (EINTR == errno) {
- tprintf("rt_sigtimedwait(%s, NULL, {%jd, %jd}, %u)"
+ tprintf("rt_sigtimedwait(%s, NULL, "
+ "{tv_sec=%jd, tv_nsec=%jd}, %u)"
" = -1 EAGAIN (%m)\n", text,
(intmax_t) timeout->tv_sec,
(intmax_t) timeout->tv_nsec,
size);
} else {
if (size < sizeof(long))
- tprintf("rt_sigtimedwait(%p, NULL, {%jd, %jd}"
+ tprintf("rt_sigtimedwait(%p, NULL, "
+ "{tv_sec=%jd, tv_nsec=%jd}"
", %u) = -1 EINVAL (%m)\n",
set, (intmax_t) timeout->tv_sec,
(intmax_t) timeout->tv_nsec, size);
else
- tprintf("rt_sigtimedwait(%s, NULL, {%jd, %jd}"
+ tprintf("rt_sigtimedwait(%s, NULL, "
+ "{tv_sec=%jd, tv_nsec=%jd}"
", %u) = -1 EINVAL (%m)\n",
text, (intmax_t) timeout->tv_sec,
(intmax_t) timeout->tv_nsec, size);
assert(k_sigtimedwait(k_set, NULL, timeout, set_size) == -1);
if (EAGAIN == errno)
break;
- tprintf("rt_sigtimedwait(%p, NULL, {%jd, %jd}, %u)"
+ tprintf("rt_sigtimedwait(%p, NULL, {tv_sec=%jd, tv_nsec=%jd}, %u)"
" = -1 EINVAL (%m)\n",
k_set, (intmax_t) timeout->tv_sec,
(intmax_t) timeout->tv_nsec, set_size);
}
if (!set_size)
perror_msg_and_fail("rt_sigtimedwait");
- tprintf("rt_sigtimedwait([], NULL, {%jd, %jd}, %u) = -1 EAGAIN (%m)\n",
+ tprintf("rt_sigtimedwait([], NULL, {tv_sec=%jd, tv_nsec=%jd}, %u) = -1 EAGAIN (%m)\n",
(intmax_t) timeout->tv_sec, (intmax_t) timeout->tv_nsec,
set_size);
assert(k_sigtimedwait(k_set, info, timeout, set_size) == -1);
assert(EAGAIN == errno);
- tprintf("rt_sigtimedwait([HUP], %p, {%jd, %jd}, %u) = -1 EAGAIN (%m)\n",
+ tprintf("rt_sigtimedwait([HUP], %p, {tv_sec=%jd, tv_nsec=%jd}, %u) = -1 EAGAIN (%m)\n",
info, (intmax_t) timeout->tv_sec,
(intmax_t) timeout->tv_nsec, set_size);
assert(k_sigtimedwait(k_set, info, timeout, set_size) == -1);
assert(EAGAIN == errno);
- tprintf("rt_sigtimedwait([HUP INT], %p, {%jd, %jd}, %u)"
+ tprintf("rt_sigtimedwait([HUP INT], %p, {tv_sec=%jd, tv_nsec=%jd}, %u)"
" = -1 EAGAIN (%m)\n",
info, (intmax_t) timeout->tv_sec,
(intmax_t) timeout->tv_nsec, set_size);
assert(k_sigtimedwait(k_set, info, timeout, set_size) == -1);
assert(EAGAIN == errno);
- tprintf("rt_sigtimedwait(%s, %p, {%jd, %jd}, %u) = -1 EAGAIN (%m)\n",
+ tprintf("rt_sigtimedwait(%s, %p, {tv_sec=%jd, tv_nsec=%jd}, %u) = -1 EAGAIN (%m)\n",
"[HUP INT QUIT ALRM TERM]",
info, (intmax_t) timeout->tv_sec,
(intmax_t) timeout->tv_nsec, set_size);
memset(k_set - set_size, -1, set_size);
assert(k_sigtimedwait(k_set - set_size, info, timeout, set_size) == -1);
assert(EAGAIN == errno);
- tprintf("rt_sigtimedwait(~[], %p, {%jd, %jd}, %u) = -1 EAGAIN (%m)\n",
+ tprintf("rt_sigtimedwait(~[], %p, {tv_sec=%jd, tv_nsec=%jd}, %u) = -1 EAGAIN (%m)\n",
info, (intmax_t) timeout->tv_sec,
(intmax_t) timeout->tv_nsec, set_size);
raise(SIGALRM);
assert(k_sigtimedwait(k_set, info, timeout, set_size) == SIGALRM);
tprintf("rt_sigtimedwait(%s, {si_signo=%s, si_code=SI_TKILL"
- ", si_pid=%d, si_uid=%d}, {%jd, %jd}, %u) = %d (%s)\n",
+ ", si_pid=%d, si_uid=%d}, {tv_sec=%jd, tv_nsec=%jd}, %u) = %d (%s)\n",
"[HUP INT QUIT ALRM TERM]", "SIGALRM", getpid(), getuid(),
(intmax_t) timeout->tv_sec, (intmax_t) timeout->tv_nsec,
set_size, SIGALRM, "SIGALRM");
rc = syscall(__NR_sched_rr_get_interval, 0, tp);
if (rc == 0)
- printf("sched_rr_get_interval(0, {%jd, %jd}) = 0\n",
- (intmax_t)tp->tv_sec, (intmax_t)tp->tv_nsec);
+ printf("sched_rr_get_interval(0, {tv_sec=%jd, tv_nsec=%jd}) = "
+ "0\n", (intmax_t)tp->tv_sec, (intmax_t)tp->tv_nsec);
else
printf("sched_rr_get_interval(-1, %p) = %s\n", tp,
sprintrc(rc));
id, sem_b + 1, ts + 1, sprintrc(rc));
rc = semtimedop(bogus_semid, sem_b2, 2, ts);
- printf("semtimedop(%d, [{%hu, %hd, %s%s%#hx}, %p], %u, {%jd, %jd}) = "
- "%s\n",
+ printf("semtimedop(%d, [{%hu, %hd, %s%s%#hx}, %p], %u, "
+ "{tv_sec=%jd, tv_nsec=%jd}) = %s\n",
bogus_semid, sem_b2->sem_num, sem_b2->sem_op,
sem_b2->sem_flg & SEM_UNDO ? "SEM_UNDO|" : "",
sem_b2->sem_flg & IPC_NOWAIT ? "IPC_NOWAIT|" : "",
sem_b->sem_op = -1;
if (semtimedop(id, sem_b, 1, ts))
perror_msg_and_skip("semtimedop, -1");
- printf("semtimedop(%d, [{0, -1, SEM_UNDO}], 1, {%jd, %jd}) = 0\n", id,
+ printf("semtimedop(%d, [{0, -1, SEM_UNDO}], 1, "
+ "{tv_sec=%jd, tv_nsec=%jd}) = 0\n", id,
(intmax_t) ts->tv_sec, (intmax_t) ts->tv_nsec);
puts("+++ exited with 0 +++");
-nanosleep\(\{1, 0\}, NULL\) = 0 <(1\.[01]|0\.9)[[:digit:]]{5}>
+nanosleep\(\{tv_sec=1, tv_nsec=0\}, NULL\) = 0 <(1\.[01]|0\.9)[[:digit:]]{5}>
if (syscall(__NR_timer_settime, tid, 0, &new.its, &old.its))
perror_msg_and_skip("timer_settime");
printf("timer_settime(%d, 0"
- ", {it_interval={%jd, %jd}, it_value={%jd, %jd}}"
- ", {it_interval={%jd, %jd}, it_value={%jd, %jd}}"
+ ", {it_interval={tv_sec=%jd, tv_nsec=%jd}"
+ ", it_value={tv_sec=%jd, tv_nsec=%jd}}"
+ ", {it_interval={tv_sec=%jd, tv_nsec=%jd}"
+ ", it_value={tv_sec=%jd, tv_nsec=%jd}}"
") = 0\n",
tid,
(intmax_t) new.its.it_interval.tv_sec,
if (syscall(__NR_timer_gettime, tid, &old.its))
perror_msg_and_skip("timer_gettime");
printf("timer_gettime(%d"
- ", {it_interval={%jd, %jd}, it_value={%jd, %jd}}"
- ") = 0\n",
+ ", {it_interval={tv_sec=%jd, tv_nsec=%jd}"
+ ", it_value={tv_sec=%jd, tv_nsec=%jd}}) = 0\n",
tid,
(intmax_t) old.its.it_interval.tv_sec,
(intmax_t) old.its.it_interval.tv_nsec,
if (syscall(__NR_timerfd_settime, 0, 0, &new.its, &old.its))
perror_msg_and_skip("timerfd_settime");
printf("timerfd_settime(0, 0"
- ", {it_interval={%jd, %jd}, it_value={%jd, %jd}}"
- ", {it_interval={%jd, %jd}, it_value={%jd, %jd}}"
+ ", {it_interval={tv_sec=%jd, tv_nsec=%jd}"
+ ", it_value={tv_sec=%jd, tv_nsec=%jd}}"
+ ", {it_interval={tv_sec=%jd, tv_nsec=%jd}"
+ ", it_value={tv_sec=%jd, tv_nsec=%jd}}"
") = 0\n",
(intmax_t) new.its.it_interval.tv_sec,
(intmax_t) new.its.it_interval.tv_nsec,
if (syscall(__NR_timerfd_gettime, 0, &old.its))
perror_msg_and_skip("timerfd_gettime");
printf("timerfd_gettime(0"
- ", {it_interval={%jd, %jd}, it_value={%jd, %jd}}"
- ") = 0\n",
+ ", {it_interval={tv_sec=%jd, tv_nsec=%jd}"
+ ", it_value={tv_sec=%jd, tv_nsec=%jd}}) = 0\n",
(intmax_t) old.its.it_interval.tv_sec,
(intmax_t) old.its.it_interval.tv_nsec,
(intmax_t) old.its.it_value.tv_sec,
static void
print_ts(const struct timespec *ts)
{
- printf("{%ju, %ju}", (uintmax_t) ts->tv_sec, (uintmax_t) ts->tv_nsec);
+ printf("{tv_sec=%ju, tv_nsec=%ju}", (uintmax_t) ts->tv_sec,
+ (uintmax_t) ts->tv_nsec);
}
int