diff options
author | jhb <jhb@FreeBSD.org> | 2014-12-16 21:57:55 +0000 |
---|---|---|
committer | jhb <jhb@FreeBSD.org> | 2014-12-16 21:57:55 +0000 |
commit | 9adaeb545214b0236fb6cee72c68ecda8a52605c (patch) | |
tree | 488576a8e9270f897180c0b768f8c3d6f97c1f5d /usr.bin/kdump/kdump.c | |
parent | 7cc43d5ff85217e4aff8929e976bc2a175891fca (diff) | |
download | FreeBSD-src-9adaeb545214b0236fb6cee72c68ecda8a52605c.zip FreeBSD-src-9adaeb545214b0236fb6cee72c68ecda8a52605c.tar.gz |
MFC 273053:
Decode the arguments passed to _umtx_op(). In particular, decode the
opcode.
Diffstat (limited to 'usr.bin/kdump/kdump.c')
-rw-r--r-- | usr.bin/kdump/kdump.c | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/usr.bin/kdump/kdump.c b/usr.bin/kdump/kdump.c index 8076ae5..673db53 100644 --- a/usr.bin/kdump/kdump.c +++ b/usr.bin/kdump/kdump.c @@ -57,6 +57,7 @@ extern int errno; #include <sys/socket.h> #include <sys/stat.h> #include <sys/sysent.h> +#include <sys/umtx.h> #include <sys/un.h> #include <sys/queue.h> #include <sys/wait.h> @@ -1187,6 +1188,26 @@ ktrsyscall(struct ktr_syscall *ktr, u_int flags) ip++; narg--; break; + case SYS__umtx_op: + print_number(ip, narg, c); + putchar(','); + umtxopname(*ip); + switch (*ip) { + case UMTX_OP_CV_WAIT: + ip++; + narg--; + putchar(','); + umtxcvwaitflags(*ip); + break; + case UMTX_OP_RW_RDLOCK: + ip++; + narg--; + putchar(','); + umtxrwlockflags(*ip); + break; + } + ip++; + narg--; } } while (narg > 0) { |