blob: d9e0f1aaec9d46abf8425b345d77008139f5e3b6 [file] [log] [blame]
Dmitry V. Levin83576382014-12-11 19:25:02 +00001#include "defs.h"
2
Dmitry V. Levina0bd3742015-04-07 01:36:50 +00003SYS_FUNC(get_robust_list)
Dmitry V. Levin83576382014-12-11 19:25:02 +00004{
5 if (entering(tcp)) {
6 tprintf("%ld, ", (long) (pid_t) tcp->u_arg[0]);
7 } else {
8 void *addr;
9 size_t len;
10
11 if (syserror(tcp) ||
12 !tcp->u_arg[1] ||
13 umove(tcp, tcp->u_arg[1], &addr) < 0) {
14 tprintf("%#lx, ", tcp->u_arg[1]);
15 } else {
16 tprintf("[%p], ", addr);
17 }
18
19 if (syserror(tcp) ||
20 !tcp->u_arg[2] ||
21 umove(tcp, tcp->u_arg[2], &len) < 0) {
22 tprintf("%#lx", tcp->u_arg[2]);
23 } else {
24 tprintf("[%lu]", (unsigned long) len);
25 }
26 }
27 return 0;
28}