From: Sarah Sharp
Greg, Dave, Freddy, question about cross-subsystem reverts below:
On Fri, Feb 28, 2014 at 04:15:12PM -0500, Alan Stern wrote:
On Fri, 28 Feb 2014, Sarah Sharp wrote:
When testing 3.14-rc1 with a USB 3.0 Lexar flash drive, the drive fails
to be mounted. I added a
On Tue, 4 Mar 2014, David Laight wrote:
Notice the request length: 1536. That's three 512-byte sectors. A
little unusual, since most I/O is done in units of pages, which are
4096 bytes.
Ok, we can't have SuperSpeed mass storage devices broken, so it looks
like we'll have to revert
On Tue, Mar 4, 2014 at 10:56 PM, David Laight david.lai...@aculab.com wrote:
From: Bjørn Mork
If xHCI won't plan to support arbitrary-length scatter-gather any more,
that
is fine to revert the commit forever. Otherwise, it should be better to
just
clear no_sg_constraint in xhcd,
From: Alan Stern
There are only two reasonable ways to fix this: Add appropriate TRB
fragment handling into xhci-hcd, or use bounce buffers for non-aligned
requests.
In theory the block layer could be taught about the need for these
bounce buffers, but that would be only a partial solution.
On Tue, Mar 4, 2014 at 11:21 PM, David Laight david.lai...@aculab.com wrote:
Actually most of the block layer code could be taught to split requests
into multiple URBs. Or even resubmit bounced requests split in two.
Although splitting requests won't help the network code.
It might not help
On Tue, 4 Mar 2014, David Laight wrote:
An alternative is to work around this particular problem by identifying
the code that submits the 3-sector SG element, and changing it to use
an even number of sectors. But obviously that doesn't solve the
underlying issue.
Actually most of the
On Tue, 4 Mar 2014, Sarah Sharp wrote:
Scatter-gather under xHCI seems to work fine on mass storage, but it
fails with that particular ASIX device, because of how the xHCI driver
sets up the buffers on the endpoint rings. We need to implement the TD
fragment rules to avoid breaking this
From: Sarah Sharp
...
The block layer may submit scatter-gather lists with entries that
are multiples of 512-byte blocks. That's fine for USB 2.0 devices,
where the bulk endpoint max packet size is 512 bytes. But USB 3.0
devices have bulk endpoints with a 1024 byte max packet size.
That
On Tue, Mar 04, 2014 at 10:00:16AM -0500, Alan Stern wrote:
On Tue, 4 Mar 2014, David Laight wrote:
Notice the request length: 1536. That's three 512-byte sectors. A
little unusual, since most I/O is done in units of pages, which are
4096 bytes.
Ok, we can't have SuperSpeed
On Tue, 4 Mar 2014, Sarah Sharp wrote:
David is right; this problem can't be fixed simply by reverting
patches. The real problem is that the block layer has handed the USB
stack an SG list that xhci-hcd cannot handle at all, in its current
form.
We do not know if the driver not
From: Alan Stern
When testing 3.14-rc1 with a USB 3.0 Lexar flash drive, the drive fails
to be mounted.
...
That revealed the SCSI request fails because the USB core is rejecting a
scatter-gather list with an entry that isn't aligned to the max packet size:
Feb 28 09:45:30 xanatos
Greg, Dave, Freddy, question about cross-subsystem reverts below:
On Fri, Feb 28, 2014 at 04:15:12PM -0500, Alan Stern wrote:
On Fri, 28 Feb 2014, Sarah Sharp wrote:
When testing 3.14-rc1 with a USB 3.0 Lexar flash drive, the drive fails
to be mounted. I added a bit of debugging to the
On Tue, Mar 4, 2014 at 5:47 AM, Sarah Sharp
sarah.a.sh...@linux.intel.com wrote:
Greg, Dave, Freddy, question about cross-subsystem reverts below:
On Fri, Feb 28, 2014 at 04:15:12PM -0500, Alan Stern wrote:
On Fri, 28 Feb 2014, Sarah Sharp wrote:
When testing 3.14-rc1 with a USB 3.0 Lexar
When testing 3.14-rc1 with a USB 3.0 Lexar flash drive, the drive fails
to be mounted. I added a bit of debugging to the USB core:
diff --git a/drivers/usb/core/urb.c b/drivers/usb/core/urb.c
index 9ff665f1322f..eff59ac37865 100644
--- a/drivers/usb/core/urb.c
+++ b/drivers/usb/core/urb.c
@@
On Fri, 28 Feb 2014, Sarah Sharp wrote:
When testing 3.14-rc1 with a USB 3.0 Lexar flash drive, the drive fails
to be mounted. I added a bit of debugging to the USB core:
diff --git a/drivers/usb/core/urb.c b/drivers/usb/core/urb.c
index 9ff665f1322f..eff59ac37865 100644
---
15 matches
Mail list logo