Re: [RFC/PATCH v2] usb: host: xhci: issue 'Reset Endpoint' for !CONTROL EPs from finish_td()

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

 



On 13.11.2014 20:46, Felipe Balbi wrote:
> On Thu, Nov 13, 2014 at 12:31:28PM -0600, Felipe Balbi wrote:
>> Hi,
>>
>> (your mailing is un-wrapping emails, I always end up with pretty long
>> lines and have to rewrap them)
>>
>> On Thu, Nov 13, 2014 at 07:58:28PM +0200, Mathias Nyman wrote:
>>>> The algorithm described in the DVB tuner bug is clearly wrong, since
>>>> it doesn't move the dequeue pointer until usb_clear_halt() is
>>>> called, which is far too late.  The right approach is to fix up the
>>>> dequeue pointer before giving back the URB (so there's no need to
>>>> save a "stopped TD" value).  Otherwise there will be TDs in the
>>>> endpoint ring containing stale DMA pointers to buffers that have
>>>> already been unmapped.
>>>
>>> Thats right, I cleaned up the patch and removed resetting the endpoint
>>> from the .endpoint_reset() callback which was called as a result of
>>> usb_clear_halt(). Now we queue a reset endpoint and set dequeue
>>> pointer before giving back the URB.
>>>
>>> I still set a "stopped td" value, but could as well just pass it as
>>> function parameter.  Actually I'll do that in later cleanup patch.
>>>
>>> Latest version of the patch is now in my tree in a reset-rework-v2
>>> branch, with fixes comments and removed The brach includes the other
>>> dorbell ringing patch as well.  both are on top of 3.18-rc4.
>>>
>>> I still need to test it before sending it further, the tree is here:
>>>
>>> git://git.kernel.org/pub/scm/linux/kernel/git/mnyman/xhci.git  reset-rework-v2
>>
>> I'll test this one.
> 
> for both commits on that branch, you can add my:
> 
> Tested-by: Felipe Balbi <balbi@xxxxxx>
> 
> But please also add proper fixes and Cc: stable, so older kernels can
> use those.
> 

Thanks a lot for testing again.

I'll CC stable and add your tested-by, but I still don't know exactly
which commit it Fixes. This might have been there since the early days
of xhci.

-Mathias 
--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux