diff options
author | jhb <jhb@FreeBSD.org> | 2012-04-20 15:32:36 +0000 |
---|---|---|
committer | jhb <jhb@FreeBSD.org> | 2012-04-20 15:32:36 +0000 |
commit | aa85973504e8ab2a6d5b1ab434c06030e5302f7c (patch) | |
tree | 210aa794e2e54dd698b7426768c3c9db3207febd /sys/kern/kern_ktrace.c | |
parent | 58d2e125c4d6dc16535d5d50b8fa3eab9b287353 (diff) | |
download | FreeBSD-src-aa85973504e8ab2a6d5b1ab434c06030e5302f7c.zip FreeBSD-src-aa85973504e8ab2a6d5b1ab434c06030e5302f7c.tar.gz |
Include the associated wait channel message for context switch ktrace
records. kdump supports both the old and new messages.
Submitted by: Andrey Zonov andrey zonov org
MFC after: 1 week
Diffstat (limited to 'sys/kern/kern_ktrace.c')
-rw-r--r-- | sys/kern/kern_ktrace.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/sys/kern/kern_ktrace.c b/sys/kern/kern_ktrace.c index 363b8b8..d40fe51 100644 --- a/sys/kern/kern_ktrace.c +++ b/sys/kern/kern_ktrace.c @@ -733,8 +733,9 @@ ktrpsig(sig, action, mask, code) } void -ktrcsw(out, user) +ktrcsw(out, user, wmesg) int out, user; + const char *wmesg; { struct thread *td = curthread; struct ktr_request *req; @@ -746,6 +747,10 @@ ktrcsw(out, user) kc = &req->ktr_data.ktr_csw; kc->out = out; kc->user = user; + if (wmesg != NULL) + strlcpy(kc->wmesg, wmesg, sizeof(kc->wmesg)); + else + bzero(kc->wmesg, sizeof(kc->wmesg)); ktr_enqueuerequest(td, req); ktrace_exit(td); } |