On Tue, Jan 15, 2019 at 7:47 AM Lorenzo Bianconi <lorenzo.bianconi@xxxxxxxxxx> wrote: > > > On Tue, Jan 15, 2019 at 01:33:41PM +0100, Lorenzo Bianconi wrote: > > > Use linear fragment and not a single usb scatter-gather buffer in mt76u > > > {tx,rx} datapath if the usb controller has sg data length constraints. > > > Moreover add disable_usb_sg module parameter in order to explicitly > > > disable scatter-gather. Some users have reported sg issues on AMD IOMMU > > Hi Stanislaw, > > > > > Not sure what is the problem , but this patch set look like a workaround > > not fix. If this an issue with IOMMU and sg, seems there is something wrong > > in sg page mappings eigher on mt76 dirver or IOMMU driver. > > The main point here I guess is we do not need sg if fragment number is one (e.g > usb2.0). Moreover this can fix IOMMU reported issues. > > @Rosen: could you please try this series enabling IOMMU? I will try it later today. Note that the same behavior occurs with USB 2.0 ports as well. I do feel that the actual bug is in the IOMMU driver. > > > > > If things need to be fixed in mt76 I whould check if page mappings for > > sg are correct. Or remove sg usage from mt76_usb completly, mt76 MMIO > > version do not use sg for framgments, so most likely USB don't need it > > as well. > > usb scatter-gather is used to properly support non-linear skbs (A-MSDU, > with usb3.0) since the hw (unlike pci counterpart) does not support it, > so we need it. > > Regards, > Lorenzo > > > > > Thanks > > Stanislaw