Subject: Re: PROBLEM: usbnet / ax88179_178a: Panic in usb_hcd_map_urb_for_dma

From: Bjørn Mork <[email-masked]>
Date: Fri, 10 Jan 2014 23:09:08 +0100

Ben Hutchings <bhutchings-s/n/[email-masked]> writes:
> On Sat, 2014-01-11 at 08:56 +1300, Thomas Kear wrote:
>> USB3 gigabit ethernet adapters with the ASIX AX88179 chipset (LevelOne
>> USB0401-V3, Plugable USB3-E1000, SIIG JU-NE0211-S1 and others) are
>> experiencing kernel panics in usb_hcd_map_urb_for_dma since 3.12.
> [...]
>> So far as I can tell, the driver is unaffected as late as 3.11.6, but
>> problematic as of 3.12 (and still affected in 3.13-rc5).  The history
>> of drivers/net/usb/ax88179_178a.c for this time period yields this
>> patch, which at least in my somewhat limited understanding appeared a
>> likely candidate.  I've reverted this on my system - against several
>> linux-next builds from the last 3-4 weeks - and have had no issues
>> with this network controller since.
>> 
>> commit 3804fad45411b48233b48003e33a78f290d227c8
>> Author: Ming Lei <[email-masked]>
>> Date:   Thu Aug 8 21:48:25 2013 +0800
>> 
>>     USBNET: ax88179_178a: enable tso if usb host supports sg dma
>
> Enabling SG DMA here has unfortunately caused a number of regressions as
> the XHCI (USB 3 controller) hardware is a bit inflexible and the driver
> wasn't quite ready to handle the SG lists generated for net devices.
>
> I don't think I've seen this particular symptom though, and it might
> indicate a bug in usbnet.

Yes, I believe this code in usbnet is still somewhat unmature and not
much tested.  Unfortunately I don't have any PC with xhci, so I can't do
much about that.

But looking at the code I think I found and obvious miss in the SG list
initialisation.  I'll post a proposed fix for that.  Would be good if
someone was able to test it.

Bjørn
--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to [email-masked]
More majordomo info at  http://vger.kernel.org/majordomo-info.html