Re: net/usb/ax88179_178a driver broken in linux-3.12

2013-12-02 Thread Greg KH
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

2013-12-02 Thread Mark Lord
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

2013-12-02 Thread Sarah Sharp
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

2013-12-02 Thread Mark Lord
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

2013-12-02 Thread David Laight
> 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

2013-11-29 Thread Mark Lord
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

2013-11-20 Thread Sarah Sharp
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