Search Linux Wireless

Re: [PATCH 0/4] do not use sg if not properly supported by usb controller

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, Feb 12, 2019 at 02:24:47PM +0100, LorenzoBianconilorenzo@xxxxxxxxxx wrote:
> From: Lorenzo Bianconi <lorenzo@xxxxxxxxxx>
> 
> 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. SG I/O is not supported by all host drivers and
> some users have reported sg issues on AMD IOMMU.

Again. This is not right approach. SG issues should be fixed
not workarounded.

> This series has been tested on AMD IOMMU cpus/motherboards and on rpi3+

> - rebased on top of 'fix multiple issues in mt76u error path'
>   https://patchwork.kernel.org/cover/10804919/
> 
> Lorenzo Bianconi (4):
>   mt76: usb: move mt76u_check_sg in usb.c
>   mt76: usb: do not use sg buffers for mcu messages
>   mt76: usb: use a linear buffer for tx/rx datapath if sg is not
>     supported
>   mt76: usb: introduce disable_usb_sg parameter
> 
>  drivers/net/wireless/mediatek/mt76/mt76.h     |  14 +-
>  .../net/wireless/mediatek/mt76/mt76x0/usb.c   |   2 +-
>  .../wireless/mediatek/mt76/mt76x02_usb_mcu.c  |   3 +-
>  .../wireless/mediatek/mt76/mt76x2/usb_init.c  |   2 +-
>  drivers/net/wireless/mediatek/mt76/usb.c      | 133 +++++++++++++-----
>  drivers/net/wireless/mediatek/mt76/usb_mcu.c  |   5 +-
>  6 files changed, 105 insertions(+), 54 deletions(-)

I really think my approach is simpler. Diffstat from my proposed patch is:

  drivers/net/wireless/mediatek/mt76/mt76.h |  1 +
  drivers/net/wireless/mediatek/mt76/usb.c  | 55 ++++++++++++++---------
  2 files changed, 36 insertions(+), 20 deletions(-)

Also this fix bug(s), presumably regression for mt76x0, should be
backported.

Stanislaw




[Index of Archives]     [Linux Host AP]     [ATH6KL]     [Linux Wireless Personal Area Network]     [Linux Bluetooth]     [Wireless Regulations]     [Linux Netdev]     [Kernel Newbies]     [Linux Kernel]     [IDE]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite Hiking]     [MIPS Linux]     [ARM Linux]     [Linux RAID]

  Powered by Linux