Skip to content

Commit

Permalink
usb-host: update tracing
Browse files Browse the repository at this point in the history
Now that we have separate status and length fields in USBPacket
update the completion tracepoint to log both.

Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
  • Loading branch information
kraxel committed Nov 16, 2012
1 parent 618fbc9 commit 8c908fc
Show file tree
Hide file tree
Showing 2 changed files with 13 additions and 9 deletions.
20 changes: 12 additions & 8 deletions hw/usb/host-linux.c
Expand Up @@ -385,10 +385,12 @@ static void async_complete(void *opaque)
}

if (aurb->urb.type == USBDEVFS_URB_TYPE_CONTROL) {
trace_usb_host_req_complete(s->bus_num, s->addr, p, p->status);
trace_usb_host_req_complete(s->bus_num, s->addr, p,
p->status, aurb->urb.actual_length);
usb_generic_async_ctrl_complete(&s->dev, p);
} else if (!aurb->more) {
trace_usb_host_req_complete(s->bus_num, s->addr, p, p->status);
trace_usb_host_req_complete(s->bus_num, s->addr, p,
p->status, aurb->urb.actual_length);
usb_packet_complete(&s->dev, p);
}
}
Expand Down Expand Up @@ -863,8 +865,9 @@ static void usb_host_handle_data(USBDevice *dev, USBPacket *p)
p->ep->nr, p->iov.size);

if (!is_valid(s, p->pid, p->ep->nr)) {
trace_usb_host_req_complete(s->bus_num, s->addr, p, USB_RET_NAK);
p->status = USB_RET_NAK;
trace_usb_host_req_complete(s->bus_num, s->addr, p,
p->status, p->actual_length);
return;
}

Expand All @@ -879,8 +882,9 @@ static void usb_host_handle_data(USBDevice *dev, USBPacket *p)
ret = ioctl(s->fd, USBDEVFS_CLEAR_HALT, &arg);
if (ret < 0) {
perror("USBDEVFS_CLEAR_HALT");
trace_usb_host_req_complete(s->bus_num, s->addr, p, USB_RET_NAK);
p->status = USB_RET_NAK;
trace_usb_host_req_complete(s->bus_num, s->addr, p,
p->status, p->actual_length);
return;
}
clear_halt(s, p->pid, p->ep->nr);
Expand Down Expand Up @@ -936,15 +940,15 @@ static void usb_host_handle_data(USBDevice *dev, USBPacket *p)

switch(errno) {
case ETIMEDOUT:
trace_usb_host_req_complete(s->bus_num, s->addr, p,
USB_RET_NAK);
p->status = USB_RET_NAK;
trace_usb_host_req_complete(s->bus_num, s->addr, p,
p->status, p->actual_length);
break;
case EPIPE:
default:
trace_usb_host_req_complete(s->bus_num, s->addr, p,
USB_RET_STALL);
p->status = USB_RET_STALL;
trace_usb_host_req_complete(s->bus_num, s->addr, p,
p->status, p->actual_length);
}
return;
}
Expand Down
2 changes: 1 addition & 1 deletion trace-events
Expand Up @@ -409,7 +409,7 @@ usb_host_claim_interfaces(int bus, int addr, int config, int nif) "dev %d:%d, co
usb_host_release_interfaces(int bus, int addr) "dev %d:%d"
usb_host_req_control(int bus, int addr, void *p, int req, int value, int index) "dev %d:%d, packet %p, req 0x%x, value %d, index %d"
usb_host_req_data(int bus, int addr, void *p, int in, int ep, int size) "dev %d:%d, packet %p, in %d, ep %d, size %d"
usb_host_req_complete(int bus, int addr, void *p, int status) "dev %d:%d, packet %p, status %d"
usb_host_req_complete(int bus, int addr, void *p, int status, int length) "dev %d:%d, packet %p, status %d, length %d"
usb_host_req_emulated(int bus, int addr, void *p, int status) "dev %d:%d, packet %p, status %d"
usb_host_req_canceled(int bus, int addr, void *p) "dev %d:%d, packet %p"
usb_host_urb_submit(int bus, int addr, void *aurb, int length, int more) "dev %d:%d, aurb %p, length %d, more %d"
Expand Down

0 comments on commit 8c908fc

Please sign in to comment.