2006-12-16 07:46:15

by Chris Frey

[permalink] [raw]
Subject: [PATCH] fix to usbfs_snoop logging of user defined control urbs

Hi Greg KH,

According to a Linux Journal article, you were the original author of the
usbfs_snoop patch, so I'm sending this patch to you.

When sending CONTROL URB's using the usual CONTROL ioctl, logging works
fine, but when sending them via SUBMITURB, like VMWare does, the
control fields are not logged. This patch fixes that.

I didn't see any major changes to devio.c recently, so this patch should apply
cleanly to even the latest kernel. I can resubmit if it doesn't.

Take care,
- Chris


diff -ru linux-2.6.18.1/drivers/usb/core/devio.c linux-2.6.18.1-cdf/drivers/usb/core/devio.c
--- linux-2.6.18.1/drivers/usb/core/devio.c 2006-10-13 23:34:03.000000000 -0400
+++ linux-2.6.18.1-cdf/drivers/usb/core/devio.c 2006-12-15 17:00:48.000000000 -0500
@@ -950,7 +950,11 @@
kfree(dr);
return -EFAULT;
}
- snoop(&ps->dev->dev, "control urb\n");
+ snoop(&ps->dev->dev, "control urb: bRequest=%02x "
+ "bRrequestType=%02x wValue=%04x "
+ "wIndex=%04x wLength=%04x\n",
+ dr->bRequest, dr->bRequestType, dr->wValue,
+ dr->wIndex, dr->wLength);
break;

case USBDEVFS_URB_TYPE_BULK: