From: David Laight > From: David Laight > > From: renevant@xxxxxxxxxxxx. > > But there are also further issues I'm about to look at. > > Short 'ping' requests work, but a 'netperf' tcp rr test with 8k blocks > > (which probably generates sg transmits) fails generating some > > 'TRB DMA ptr not part of current TD' errors. > > I think I've seem that when a 'TRB error' is reported (when I was using the > > wrong type of NOP). I'm about to investigate what is being errored here. > > In this case they happen when receive buffers cross 64k boundaries > and so are split into two TRBS. > The controller is generating one event for the 'short transfer' and > a second for the last TRB - by which time the TD and URB have already > been cleared up. >From the end of section 4.10.1.1 (Short transfers) - If the Short Packet occurred while processing a Transfer TRB with only an ISP flag set, then two events shall be generated for the transfer; one for the Transfer TRB that the short packet occurred on, and a second for the last TRB with the IOC flag set. - Software shall not interpret an Short Packet Event as indicating that the TD that it is associated with is “complete”, unless the TRB Pointer field of the Transfer Event references the last TRB of the TD. Which means that the controller is obeying the rules, and the software is wrong. David -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html