Re: net/usb/ax88179_178a driver broken in linux-3.12
On Mon, Dec 02, 2013 at 11:08:36AM -0800, Sarah Sharp wrote: > On Mon, Dec 02, 2013 at 10:05:54AM -0500, Mark Lord wrote: > > On 13-12-02 04:30 AM, David Laight wrote: > > >> From: Mark Lord > > >> Sent: 30 November 2013 02:59 > > >> To: Sarah Sharp; David Laight > > >> Cc: David Miller; eric.duma...@gmail.com; ming@canonical.com; > > >> net...@vger.kernel.org; linux- > > >> u...@vger.kernel.org > > >> Subject: Re: net/usb/ax88179_178a driver broken in linux-3.12 > > >> > > >> On 13-11-19 08:44 AM, Mark Lord wrote: > > >>> On 13-11-19 05:04 AM, David Laight wrote: > > >>>> > > >>>> Which changes did you revert? > > >>> > > >>> Just the bits that changed how the headroom/tailroom sizes > > >>> were checked and adjusted. See attachment for the revert patch > > >>> I am using here. My mailer unfortunately likes to mangle inline > > >>> patches. > > >>> > > > ... > > >> > > >> Two kernels later, and this regression has still not been fixed. > > >> > > >> A simple revert, folks. > > > > > > Reverting the ax88179_178a driver doesn't fix the problem. > > > I'm seen tx/rx issues with it on much older kernels that don't > > > appear with a current kernel and the fixed xhci code. > > > > > > Sarah needs to feed the xhci_ring.c fix through into stable. > > > > Oh, I agree. But Linus makes a MASSIVE distinction between things > > that have always been broken, and REGRESSIONS from the immediately > > prior kernel that can be tracked to a single update. > > > > Let's see some action, here folks! > > I'm working on it. You will probably have to wait for -rc3, depending > on when Greg sends his next pull request. I will Cc you on the pull > request and patch, which should be sent out today. It's impossible to get into -rc2 given that it was released last week :) -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: net/usb/ax88179_178a driver broken in linux-3.12
On 13-12-02 02:08 PM, Sarah Sharp wrote: >> On 13-12-02 04:30 AM, David Laight wrote: .. >>> Sarah needs to feed the xhci_ring.c fix through into stable. .. > I'm working on it. You will probably have to wait for -rc3, depending > on when Greg sends his next pull request. I will Cc you on the pull > request and patch, which should be sent out today. Super, exactly what we need, thanks! -- Mark Lord Real-Time Remedies Inc. ml...@pobox.com -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: net/usb/ax88179_178a driver broken in linux-3.12
On Mon, Dec 02, 2013 at 10:05:54AM -0500, Mark Lord wrote: > On 13-12-02 04:30 AM, David Laight wrote: > >> From: Mark Lord > >> Sent: 30 November 2013 02:59 > >> To: Sarah Sharp; David Laight > >> Cc: David Miller; eric.duma...@gmail.com; ming@canonical.com; > >> net...@vger.kernel.org; linux- > >> u...@vger.kernel.org > >> Subject: Re: net/usb/ax88179_178a driver broken in linux-3.12 > >> > >> On 13-11-19 08:44 AM, Mark Lord wrote: > >>> On 13-11-19 05:04 AM, David Laight wrote: > >>>> > >>>> Which changes did you revert? > >>> > >>> Just the bits that changed how the headroom/tailroom sizes > >>> were checked and adjusted. See attachment for the revert patch > >>> I am using here. My mailer unfortunately likes to mangle inline patches. > >>> > > ... > >> > >> Two kernels later, and this regression has still not been fixed. > >> > >> A simple revert, folks. > > > > Reverting the ax88179_178a driver doesn't fix the problem. > > I'm seen tx/rx issues with it on much older kernels that don't > > appear with a current kernel and the fixed xhci code. > > > > Sarah needs to feed the xhci_ring.c fix through into stable. > > Oh, I agree. But Linus makes a MASSIVE distinction between things > that have always been broken, and REGRESSIONS from the immediately > prior kernel that can be tracked to a single update. > > Let's see some action, here folks! I'm working on it. You will probably have to wait for -rc3, depending on when Greg sends his next pull request. I will Cc you on the pull request and patch, which should be sent out today. Sarah Sharp -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: net/usb/ax88179_178a driver broken in linux-3.12
On 13-12-02 04:30 AM, David Laight wrote: >> From: Mark Lord >> Sent: 30 November 2013 02:59 >> To: Sarah Sharp; David Laight >> Cc: David Miller; eric.duma...@gmail.com; ming@canonical.com; >> net...@vger.kernel.org; linux- >> u...@vger.kernel.org >> Subject: Re: net/usb/ax88179_178a driver broken in linux-3.12 >> >> On 13-11-19 08:44 AM, Mark Lord wrote: >>> On 13-11-19 05:04 AM, David Laight wrote: >>>> >>>> Which changes did you revert? >>> >>> Just the bits that changed how the headroom/tailroom sizes >>> were checked and adjusted. See attachment for the revert patch >>> I am using here. My mailer unfortunately likes to mangle inline patches. >>> > ... >> >> Two kernels later, and this regression has still not been fixed. >> >> A simple revert, folks. > > Reverting the ax88179_178a driver doesn't fix the problem. > I'm seen tx/rx issues with it on much older kernels that don't > appear with a current kernel and the fixed xhci code. > > Sarah needs to feed the xhci_ring.c fix through into stable. Oh, I agree. But Linus makes a MASSIVE distinction between things that have always been broken, and REGRESSIONS from the immediately prior kernel that can be tracked to a single update. Let's see some action, here folks! -- Mark Lord Real-Time Remedies Inc. ml...@pobox.com -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
RE: net/usb/ax88179_178a driver broken in linux-3.12
> From: Mark Lord > Sent: 30 November 2013 02:59 > To: Sarah Sharp; David Laight > Cc: David Miller; eric.duma...@gmail.com; ming@canonical.com; > net...@vger.kernel.org; linux- > u...@vger.kernel.org > Subject: Re: net/usb/ax88179_178a driver broken in linux-3.12 > > On 13-11-19 08:44 AM, Mark Lord wrote: > > On 13-11-19 05:04 AM, David Laight wrote: > >> > >> Which changes did you revert? > > > > Just the bits that changed how the headroom/tailroom sizes > > were checked and adjusted. See attachment for the revert patch > > I am using here. My mailer unfortunately likes to mangle inline patches. > > ... > > Two kernels later, and this regression has still not been fixed. > > A simple revert, folks. Reverting the ax88179_178a driver doesn't fix the problem. I'm seen tx/rx issues with it on much older kernels that don't appear with a current kernel and the fixed xhci code. Sarah needs to feed the xhci_ring.c fix through into stable. David
Re: net/usb/ax88179_178a driver broken in linux-3.12
On 13-11-19 08:44 AM, Mark Lord wrote: > On 13-11-19 05:04 AM, David Laight wrote: >> >> Which changes did you revert? > > Just the bits that changed how the headroom/tailroom sizes > were checked and adjusted. See attachment for the revert patch > I am using here. My mailer unfortunately likes to mangle inline patches. > > =snip=== > Revert USB 3.0 network driver changes that break the adapter (lockups) > in 3.12. This just puts back the original code from previous kernels. > > Signed-off-by: Mark Lord > > --- linux/drivers/net/usb/ax88179_178a.c.orig 2013-11-03 18:41:51.0 > -0500 > +++ linux/drivers/net/usb/ax88179_178a.c2013-11-17 13:23:39.525734277 > -0500 > @@ -1177,18 +1177,31 @@ > int frame_size = dev->maxpacket; > int mss = skb_shinfo(skb)->gso_size; > int headroom; > + int tailroom; > > tx_hdr1 = skb->len; > tx_hdr2 = mss; > if (((skb->len + 8) % frame_size) == 0) > tx_hdr2 |= 0x80008000; /* Enable padding */ > > - headroom = skb_headroom(skb) - 8; > + headroom = skb_headroom(skb); > + tailroom = skb_tailroom(skb); > > - if ((skb_header_cloned(skb) || headroom < 0) && > - pskb_expand_head(skb, headroom < 0 ? 8 : 0, 0, GFP_ATOMIC)) { > + if (!skb_header_cloned(skb) && > + !skb_cloned(skb) && > + (headroom + tailroom) >= 8) { > + if (headroom < 8) { > + skb->data = memmove(skb->head + 8, skb->data, > skb->len); > + skb_set_tail_pointer(skb, skb->len); > + } > + } else { > + struct sk_buff *skb2; > + > + skb2 = skb_copy_expand(skb, 8, 0, flags); > dev_kfree_skb_any(skb); > - return NULL; > + skb = skb2; > + if (!skb) > + return NULL; > } > > skb_push(skb, 4); > Two kernels later, and this regression has still not been fixed. A simple revert, folks. -- Mark Lord Real-Time Remedies Inc. ml...@pobox.com -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: net/usb/ax88179_178a driver broken in linux-3.12
On Wed, Nov 20, 2013 at 09:54:02AM -, David Laight wrote: > > From: Of David Miller > > > From: "David Laight" > > > Date: Tue, 19 Nov 2013 10:04:11 - > > > > > There is a patch to xhci-ring.c that should fix the SG problem. > > > http://www.spinics.net/lists/linux-usb/msg97176.html > > > > > > I think it should apply to the 3.12 sources. > > > > David, please get this into Linus's tree and queued up for -stable > > as soon as possible, thank you. > > What do I have to do to expedite it? > I thought that Sarah would have to push the patch through. Yes, I think the patch should come through my tree. > It might be necessary to limit the number of SG fragments that > the mass storage (etc) can generate to 63 (from unlimited). > That should be a 1 line change somewhere. Greg's USB tree is frozen until after 3.13-rc1. The patch will have to wait until then, but it will be marked for stable. I have no objection to the methodology of the patch, but we do need to figure out how to limit the number of scatter-gather list entries in the mass storage driver. We're still figuring out the exact limitation we need to use, and then the patch can be queued in my for-usb-linus branch for 3.13-rc1. Note that the patch is a bandaid fix, and will only help bulk endpoints that are submitting scatter-gather transfers. Interrupt endpoints using scatter-gather will still run into these issues, but with David's patch, the URB submission will now fail, rather than allowing the transfer to be silently corrupted. The real fix for this will probably be too large for stable, and is likely to take at least a kernel revision to fix. Sarah Sharp -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html