Re: [S] Re: [linux-uwb] packet size problem

From: Jens Axboe
Date: Wed Jun 11 2008 - 10:54:28 EST


On Wed, Jun 11 2008, Alan Stern wrote:
> On Wed, 11 Jun 2008, AntonioLin wrote:
>
> > Hi All,
> >
> > I checked srb->device->request_queue->dma_alignment in usb_stor_bulk_Bulk_transport() routine. , the value is 1023.
> >
> > But in usb_stor_bulk_transfer_sglist, the length of first element in sg array is 3584 which is not divisible by 1024.
> >
> >
> > Can you post your /proc/bus/usb/devices ?
> >
> > I don't know how to do this, could you descript moe about it ?
> > (Sorry,I have few experience about Linux.)
>
> All you have to do is:
>
> cat /proc/bus/usb/devices
>
> Or even just tell your email client to include /proc/bus/usb/devices as
> an attachment. However some Linux distributions don't automatically
> mount /proc/bus/usb. If yours doesn't, you will have to do (as root):
>
> mount -t usbfs none /proc/bus/usb
>
> before you can access /proc/bus/usb/devices. But in any case it
> doesn't matter, since you have checked that the value of dma_alignment
> really is 1023.
>
> Jens, this is a question for you. How come we're getting an SG element
> whose lenth is 3584 when the request_queue's dma_alignment mask is set
> to 1023? Is dma_alignment not the right parameter to set?

dma_alignment mask is the buffer address alignment, so they are not
completely the same. But it does sound odd, since you would then be
spanning two pages for that sg element. Is this before or after dma
mapping the sg table?

--
Jens Axboe

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/