lkml.org 
[lkml]   [2016]   [Jul]   [20]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
From
SubjectRe: [PATCH 1/1] usb: xhci: Fix panic if disconnect
Date

Hi Jim,

Jim Lin <jilin@nvidia.com> writes:
> After a device is disconnected, xhci_stop_device() will be invoked
> in xhci_bus_suspend().
> Also the "disconnect" IRQ will have ISR to invoke
> xhci_free_virt_device() in this sequence.
> xhci_irq -> xhci_handle_event -> handle_cmd_completion ->
> xhci_handle_cmd_disable_slot -> xhci_free_virt_device
>
> If xhci->devs[slot_id] has been assigned to NULL in
> xhci_free_virt_device(), then virt_dev->eps[i].ring in
> xhci_stop_device() may point to an invlid address to cause kernel
> panic.
>
> virt_dev = xhci->devs[slot_id];
> :
> if (virt_dev->eps[i].ring && virt_dev->eps[i].ring->dequeue)
>
> [] Unable to handle kernel paging request at virtual address 00001a68
> [] pgd=ffffffc001430000
> [] [00001a68] *pgd=000000013c807003, *pud=000000013c807003,
> *pmd=000000013c808003, *pte=0000000000000000
> [] Internal error: Oops: 96000006 [#1] PREEMPT SMP
> [] CPU: 0 PID: 39 Comm: kworker/0:1 Tainted: G U
> [] Workqueue: pm pm_runtime_work
> [] task: ffffffc0bc0e0bc0 ti: ffffffc0bc0ec000 task.ti:
> ffffffc0bc0ec000
> [] PC is at xhci_stop_device.constprop.11+0xb4/0x1a4
>
> This issue is found when running with realtek ethernet device
> (0bda:8153).
>
> Signed-off-by: Jim Lin <jilin@nvidia.com>

yes, I saw the previous version :-) So, we're pretty close to getting
the merge window opened. This will defer to v4.8-rc1.

Patch looks good, though. :-)

thanks

--
balbi
[unhandled content-type:application/pgp-signature]
\
 
 \ /
  Last update: 2016-07-20 10:41    [W:0.353 / U:0.064 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site