summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGerd Hoffmann <kraxel@redhat.com>2012-03-23 12:26:59 +0100
committerGerd Hoffmann <kraxel@redhat.com>2012-04-17 10:23:27 +0200
commit6aebe407968a0c7e0be2647391753471ed674c65 (patch)
tree5427388b2098271d5f36905882e2f2509ff3f78a
parente382e751ef7848b237be2d569815dcc4f8097306 (diff)
downloadqemu-6aebe407968a0c7e0be2647391753471ed674c65.tar.gz
usb-host: trace canceled requests
Add tracepoints to track canceled requests. Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
-rw-r--r--hw/usb/host-linux.c4
-rw-r--r--trace-events2
2 files changed, 5 insertions, 1 deletions
diff --git a/hw/usb/host-linux.c b/hw/usb/host-linux.c
index 912ce23928..6ea59a7af5 100644
--- a/hw/usb/host-linux.c
+++ b/hw/usb/host-linux.c
@@ -392,12 +392,14 @@ static void usb_host_async_cancel(USBDevice *dev, USBPacket *p)
USBHostDevice *s = DO_UPCAST(USBHostDevice, dev, dev);
AsyncURB *aurb;
+ trace_usb_host_req_canceled(s->bus_num, s->addr);
+
QLIST_FOREACH(aurb, &s->aurbs, next) {
if (p != aurb->packet) {
continue;
}
- DPRINTF("husb: async cancel: packet %p, aurb %p\n", p, aurb);
+ trace_usb_host_urb_canceled(s->bus_num, s->addr, aurb);
/* Mark it as dead (see async_complete above) */
aurb->packet = NULL;
diff --git a/trace-events b/trace-events
index 8ac1b62128..3e8da19fd8 100644
--- a/trace-events
+++ b/trace-events
@@ -316,8 +316,10 @@ usb_host_req_control(int bus, int addr, int req, int value, int index) "dev %d:%
usb_host_req_data(int bus, int addr, int in, int ep, int size) "dev %d:%d, in %d, ep %d, size %d"
usb_host_req_complete(int bus, int addr, int status) "dev %d:%d, status %d"
usb_host_req_emulated(int bus, int addr, int status) "dev %d:%d, status %d"
+usb_host_req_canceled(int bus, int addr) "dev %d:%d"
usb_host_urb_submit(int bus, int addr, void *aurb, int length, int more) "dev %d:%d, aurb %p, length %d, more %d"
usb_host_urb_complete(int bus, int addr, void *aurb, int status, int length, int more) "dev %d:%d, aurb %p, status %d, length %d, more %d"
+usb_host_urb_canceled(int bus, int addr, void *aurb) "dev %d:%d, aurb %p"
usb_host_ep_set_halt(int bus, int addr, int ep) "dev %d:%d, ep %d"
usb_host_ep_clear_halt(int bus, int addr, int ep) "dev %d:%d, ep %d"
usb_host_ep_start_iso(int bus, int addr, int ep) "dev %d:%d, ep %d"