diff options
author | Takashi Iwai <tiwai@suse.de> | 2012-06-01 10:06:24 +0200 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2012-06-22 11:36:57 -0700 |
commit | 708053a5a4e304915aae1ecab2e5fea9921c9f82 (patch) | |
tree | 4262235a6751f946bd7e24d448123977a9d68b99 /firmware/whiteheat_loader_debug.HEX | |
parent | b063a624f08cfa64c2d9162d1525da95519e6156 (diff) |
xhci: Don't free endpoints in xhci_mem_cleanup()
commit 32f1d2c536d0c26c5814cb0e6a0606c42d02fac1 upstream.
This patch fixes a few issues introduced in the recent fix
[f8a9e72d: USB: fix resource leak in xhci power loss path]
- The endpoints listed in bw table are just links and each entry is an
array member of dev->eps[]. But the commit above adds a kfree() call
to these instances, and thus it results in memory corruption.
- It clears only the first entry of rh_bw[], but there can be multiple
ports.
- It'd be safer to clear the list_head of ep as well, not only
removing from the list, as it's checked in
xhci_discover_or_reset_device().
This patch should be backported to kernels as old as 3.2, that contain
the commit 839c817ce67178ca3c7c7ad534c571bba1e69ebe "xhci: Store
information about roothubs and TTs."
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Sarah Sharp <sarah.a.sharp@linux.intel.com>
Reviewed-by: Oliver Neukum <oneukum@suse.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'firmware/whiteheat_loader_debug.HEX')
0 files changed, 0 insertions, 0 deletions