xhci-mem: init list heads at the beginning of init
It is possible that we fail on xhci_mem_init, just before doing the INIT_LIST_HEAD, and calling xhci_mem_cleanup. Problem is that, the list_for_each_entry_safe macro, assumes list heads are initialized (not NULL), and dereferences their 'next' pointer, causing a kernel panic if this is not yet initialized. Let's protect from that by moving inits to the beginning. This patch should be backported to kernels as old as 3.2, that contain the commit 9574323c "xHCI: test USB2 software LPM". Signed-off-by: NSergio Aguirre <sergio.a.aguirre.rodriguez@intel.com> Acked-by: NDavid Cohen <david.a.cohen@intel.com> Signed-off-by: NSarah Sharp <sarah.a.sharp@linux.intel.com> Cc: stable@vger.kernel.org
Showing
想要评论请 注册 或 登录