]> git.baikalelectronics.ru Git - kernel.git/commit
xhci: Fix oops happening after address device timeout
authorMathias Nyman <mathias.nyman@linux.intel.com>
Thu, 5 Sep 2013 08:01:20 +0000 (11:01 +0300)
committerSarah Sharp <sarah.a.sharp@linux.intel.com>
Mon, 23 Sep 2013 22:43:30 +0000 (15:43 -0700)
commit0b607a3089bd2c5a7ff22c8fc7541972f5edee70
tree7b929fc25193a67c728614f417bd9cf0f437bb90
parent4889d329b7c45458d654b9a3772810ccd6600041
xhci: Fix oops happening after address device timeout

When a command times out, the command ring is first aborted,
and then stopped. If the command ring is empty when it is stopped
the stop event will point to next command which is not yet set.
xHCI tries to handle this next event often causing an oops.

Don't handle command completion events on stopped cmd ring if ring is
empty.

This patch should be backported to kernels as old as 3.7, that contain
the commit 4e07e76e317e1b7ea18252d92337fc361d574d30 "xHCI: add aborting
command ring function"

Signed-off-by: Mathias Nyman <mathias.nyman@linux.intel.com>
Reported-by: Giovanni <giovanni.nervi@yahoo.com>
Signed-off-by: Sarah Sharp <sarah.a.sharp@linux.intel.com>
Cc: stable@vger.kernel.org
drivers/usb/host/xhci-ring.c