On Tue, 5 Feb 2008, Pete Zaitcev wrote:

> The problem stems from the fact that usbmon's hooks may not have
> access to the virtual address of the data. On cache-coherent
> architectures, such as x86, usbmon works around it by remapping
> data temporarily. I think the problem should be transparent if
> you look at the code in and around usb_hcd_submit_urb().
> 
> You can change usb-storage to not pre-map commands and replies
> easily, but data often comes from the highmem zone and thus
> kernel does not have its virtual address.

In such cases the page number is stored in a scatter-gather entry.  
Should we modify the core to keep a copy of the page number in the URB,
for use by mon_dmapeek()?

Of course, this could be confusing.  If an URB is pre-mapped for DMA, 
then usbmon wouldn't know whether to look in the transfer_buffer field 
for the virtual address or in the new page-number field.  Sometimes 
neither might be valid.

Alan Stern

-
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to