linux/drivers/usb/host
Vivek Gautam 457a73d346 usb: host: xhci: Fix Null pointer dereferencing with 71c731a for non-x86 systems
In 71c731a: usb: host: xhci: Fix Compliance Mode on SN65LVPE502CP Hardware
when extracting DMI strings (vendor or product_name) to mark them as quirk
we may get NULL pointer in case of non-x86 systems which won't define
CONFIG_DMI. Hence susbsequent strstr() calls crash while driver probing.

So, returning 'false' here in case we get a NULL vendor or product_name.

This is tested with ARM (exynos) system.

This patch should be backported to stable kernels as old as 3.6, that
contain the commit 71c731a296 "usb: host:
xhci: Fix Compliance Mode on SN65LVPE502CP Hardware"

Signed-off-by: Vivek Gautam <gautam.vivek@samsung.com>
Signed-off-by: Sarah Sharp <sarah.a.sharp@linux.intel.com>
Reported-by: Sebastian Gottschall (DD-WRT) <s.gottschall@dd-wrt.com>
Cc: stable@vger.kernel.org
2012-09-24 12:11:10 -07:00
..
whci USB: whci-hcd: fix NULL dereference on allocation failure 2012-08-15 15:17:39 -07:00
alchemy-common.c MIPS: Alchemy: Au1300 SoC support 2011-12-07 22:02:05 +00:00
bcma-hcd.c usb/bcma: Add missing #include <linux/slab.h> 2012-04-23 13:22:00 -07:00
ehci-atmel.c drivers/usb/host/ehci-atmel.c: use devm_ functions 2012-08-10 12:01:32 -07:00
ehci-au1xxx.c drivers/usb/host/ehci-au1xxx.c: use devm_ functions 2012-08-10 12:01:33 -07:00
ehci-cns3xxx.c drivers/usb/host/ehci-cns3xxx.c: use devm_ functions 2012-08-10 12:01:33 -07:00
ehci-dbg.c USB: EHCI: remove useless test 2012-09-21 09:37:53 -07:00
ehci-fsl.c powerpc/usb: fix bug of CPU hang when missing USB PHY clock 2012-09-05 16:52:08 -07:00
ehci-fsl.h powerpc/usb: fix bug of CPU hang when missing USB PHY clock 2012-09-05 16:52:08 -07:00
ehci-grlib.c drivers/usb/host/ehci-grlib.c: use devm_ functions 2012-08-10 12:01:33 -07:00
ehci-hcd.c USB EHCI/Xen: propagate controller reset information to hypervisor 2012-09-18 17:20:48 +01:00
ehci-hub.c USB EHCI/Xen: propagate controller reset information to hypervisor 2012-09-18 17:20:48 +01:00
ehci-ixp4xx.c drivers/usb/host/ehci-ixp4xx.c: use devm_ functions 2012-08-10 12:01:33 -07:00
ehci-lpm.c
ehci-ls1x.c USB/host: Cleanup unneccessary irq disable code 2012-09-10 20:22:35 -07:00
ehci-mem.c USB: EHCI: use hrtimer for (s)iTD deallocation 2012-07-16 16:54:25 -07:00
ehci-msm.c drivers/usb/host/ehci-msm.c: use devm_ functions 2012-08-10 12:01:33 -07:00
ehci-mv.c drivers/usb/host/ehci-mv.c: use devm_ functions 2012-08-10 12:01:34 -07:00
ehci-mxc.c drivers/usb/host/ehci-mxc.c: use devm_ functions 2012-08-10 12:01:34 -07:00
ehci-octeon.c EHCI: centralize controller initialization 2012-07-09 13:35:05 -07:00
ehci-omap.c OMAP: USB : Fix the EHCI enumeration and core retention issue 2012-08-10 11:49:12 -07:00
ehci-orion.c ARM: SoC fixes 2012-07-26 20:29:52 -07:00
ehci-pci.c USB: EHCI: use hrtimer for the periodic schedule 2012-07-16 16:53:16 -07:00
ehci-platform.c drivers/usb/host/ehci-platform.c: fix error return code 2012-08-15 15:17:40 -07:00
ehci-pmcmsp.c EHCI: centralize controller initialization 2012-07-09 13:35:05 -07:00
ehci-ppc-of.c drivers/usb/host/ehci-ppc-of.c: use devm_ functions 2012-08-10 12:04:09 -07:00
ehci-ps3.c EHCI: centralize controller initialization 2012-07-09 13:35:05 -07:00
ehci-q.c EHCI: Update qTD next pointer in QH overlay region during unlink 2012-09-10 16:01:37 -07:00
ehci-s5p.c drivers/usb/host/ehci-s5p.c: use devm_ functions 2012-08-10 12:04:09 -07:00
ehci-sched.c USB: EHCI: simplify isochronous scanning 2012-07-16 16:56:47 -07:00
ehci-sead3.c Merge v3.6-rc3 into usb-next 2012-08-27 07:15:30 -07:00
ehci-sh.c drivers/usb/host/ehci-sh.c: use devm_ functions 2012-08-10 12:04:09 -07:00
ehci-spear.c EHCI: centralize controller initialization 2012-07-09 13:35:05 -07:00
ehci-sysfs.c
ehci-tegra.c usb: xceiv: patches for v3.7 merge window 2012-09-11 13:48:01 -07:00
ehci-tilegx.c usb: add host support for the tilegx architecture 2012-07-18 16:40:29 -04:00
ehci-timer.c USB: EHCI: convert warning messages to debug-level 2012-09-21 09:37:53 -07:00
ehci-vt8500.c ARM: vt8500: Update vt8500-ehci driver to support device tree. 2012-08-16 14:00:37 -07:00
ehci-w90x900.c EHCI: centralize controller initialization 2012-07-09 13:35:05 -07:00
ehci-xilinx-of.c drivers/usb/host/ehci-xilinx-of.c: use devm_ functions 2012-08-10 12:04:10 -07:00
ehci-xls.c usb: host: tegra: pass correct pointer in ehci_setup() 2012-07-16 17:13:39 -07:00
ehci.h USB: EHCI: resolve some unlikely races 2012-07-16 16:56:48 -07:00
fhci-dbg.c USB: FHCI: Reusing QUICC Engine USB Controller registers from immap_qe.h 2012-06-26 19:42:11 -07:00
fhci-hcd.c USB: FHCI: Reusing QUICC Engine USB Controller registers from immap_qe.h 2012-06-26 19:42:11 -07:00
fhci-hub.c USB: FHCI: Reusing QUICC Engine USB Controller registers from immap_qe.h 2012-06-26 19:42:11 -07:00
fhci-mem.c
fhci-q.c
fhci-sched.c USB: FHCI: use list_move_tail instead of list_del/list_add_tail 2012-09-05 16:55:18 -07:00
fhci-tds.c USB: FHCI: Reusing QUICC Engine USB Controller registers from immap_qe.h 2012-06-26 19:42:11 -07:00
fhci.h USB: FHCI: Reusing QUICC Engine USB Controller registers from immap_qe.h 2012-06-26 19:42:11 -07:00
fsl-mph-dr-of.c fsl/usb: Add support for USB controller version 2.4 2012-09-21 09:43:55 -07:00
hwa-hc.c Merge branch 'usb-next' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb 2012-01-09 12:09:47 -08:00
imx21-dbg.c usb: Fix typo in imx21-dbg.c 2012-02-13 14:32:34 -08:00
imx21-hcd.c usb: imx21-hcd.c: Use clk_prepare_enable/clk_disable_unprepare 2012-06-12 13:31:03 +03:00
imx21-hcd.h
isp116x-hcd.c Remove all #inclusions of asm/system.h 2012-03-28 18:30:03 +01:00
isp116x.h
isp1362-hcd.c USB: isp1362-hcd.c: usb message always saved in case of underrun 2012-08-10 11:49:13 -07:00
isp1362.h
isp1760-hcd.c isp1760-hcd: fix possible memory leak if urb could not be enqueued 2012-04-18 13:51:19 -07:00
isp1760-hcd.h
isp1760-if.c isp1760-if: make module unloads correctly 2012-04-18 13:50:44 -07:00
Kconfig USB: remove CONFIG_EXPERIMENTAL dependancies 2012-09-17 23:00:15 -07:00
Makefile USB: Add driver for the ssb bus 2012-04-18 13:43:30 -07:00
octeon2-common.c
ohci-at91.c USB: ohci-at91: fix null pointer in ohci_hcd_at91_overcurrent_irq 2012-09-24 10:42:25 -07:00
ohci-au1xxx.c usb: [MIPS] fix unresolved err() reference in host/ohci-au1xxx.c 2012-05-01 18:36:09 -04:00
ohci-cns3xxx.c USB: ohci-cns3xxx.c: remove err() usage 2012-04-27 11:24:40 -07:00
ohci-da8xx.c ohci-da8xx: set MODULE_ALIAS to allow autoloading 2012-05-08 09:26:10 -07:00
ohci-dbg.c USB: ohci-dbg.c: remove dbg() usage 2012-05-01 21:33:37 -07:00
ohci-ep93xx.c USB: ohci-ep93xx.c: remove dbg() usage 2012-05-01 21:33:38 -07:00
ohci-exynos.c USB: ohci-exynos: Add support for device tree 2012-07-16 17:16:17 -07:00
ohci-hcd.c usb: add host support for the tilegx architecture 2012-07-18 16:40:29 -04:00
ohci-hub.c USB: ohci-hub: Mark ohci_finish_controller_resume() as __maybe_unused 2012-06-13 17:26:11 -07:00
ohci-jz4740.c
ohci-mem.c
ohci-nxp.c drivers/usb/host/ohci-nxp.c: adjust inconsistent IS_ERR and PTR_ERR 2012-09-05 16:52:08 -07:00
ohci-octeon.c
ohci-omap3.c ARM: OMAP: USBHOST: Replace usbhs core driver APIs by Runtime pm APIs 2011-12-16 04:29:57 -07:00
ohci-omap.c usb/ohci-omap: remove unused variable 2012-08-08 21:13:01 +02:00
ohci-pci.c usb: add support for STA2X11 host driver 2012-01-24 14:15:37 -08:00
ohci-platform.c drivers/usb/host/ohci-platform.c: fix error return code 2012-08-15 15:17:40 -07:00
ohci-pnx8550.c usb: [MIPS] fix unresolved err() reference in host/ohci-pnx8550.c 2012-05-01 18:36:09 -04:00
ohci-ppc-of.c USB: ohci-ppc-of.c: remove err() usage 2012-04-27 11:24:42 -07:00
ohci-ppc-soc.c USB: ohci-ppc-soc.c: remove err() usage 2012-04-27 11:24:42 -07:00
ohci-ps3.c USB: ohci-ps3.c: remove err() usage 2012-04-27 11:24:43 -07:00
ohci-pxa27x.c USB: ohci-pxa27x: add DT bindings 2012-08-10 11:59:32 -07:00
ohci-q.c
ohci-s3c2410.c USB: ohci-s3c2410.c: remove err() usage 2012-04-27 11:24:43 -07:00
ohci-sa1111.c USB: ohci-sa1111.c: remove dbg() usage 2012-05-01 21:33:39 -07:00
ohci-sh.c USB: ohci-sh.c: remove err() usage 2012-04-27 11:24:44 -07:00
ohci-sm501.c
ohci-spear.c USB: ehci: ohci: Add clk_{un}prepare() support 2012-04-18 14:33:43 -07:00
ohci-tilegx.c usb: add host support for the tilegx architecture 2012-07-18 16:40:29 -04:00
ohci-tmio.c USB: ohci-tmio.c: remove err() usage 2012-04-27 11:24:44 -07:00
ohci-xls.c USB/host: Cleanup unneccessary irq disable code 2012-09-10 20:22:35 -07:00
ohci.h USB: move transceiver from ehci_hcd and ohci_hcd to hcd and rename it as phy 2012-06-13 12:38:36 -07:00
oxu210hp-hcd.c USB: oxu210hp-hcd.c: remove dbg() usage 2012-05-01 21:33:43 -07:00
oxu210hp.h
pci-quirks.c xhci: Make handover code more robust 2012-09-05 12:07:17 -07:00
pci-quirks.h usb: host: xhci: fix compilation error for non-PCI based stacks 2012-09-05 12:26:11 -07:00
r8a66597-hcd.c usb: move children to struct usb_port 2012-09-10 12:59:42 -07:00
r8a66597.h usb/host/r8a66597: remove conditional compilation of clk code 2012-07-30 17:25:12 -07:00
sl811_cs.c
sl811-hcd.c drivers/usb/host/sl811-hcd.c: removes unnecessary semicolon 2012-09-13 21:48:48 -07:00
sl811.h
ssb-hcd.c usb/ssb: Add missing #include <linux/slab.h> 2012-04-23 13:22:00 -07:00
u132-hcd.c Remove all #inclusions of asm/system.h 2012-03-28 18:30:03 +01:00
uhci-debug.c
uhci-grlib.c
uhci-hcd.c ARM: vt8500: Add support for UHCI companion controller 2012-08-16 14:00:37 -07:00
uhci-hcd.h
uhci-hub.c UHCI: hub_status_data should indicate if ports are resuming 2012-04-09 15:43:21 -07:00
uhci-pci.c
uhci-platform.c ARM: vt8500: Add support for UHCI companion controller 2012-08-16 14:00:37 -07:00
uhci-q.c usb: fix number of mapped SG DMA entries 2011-12-09 16:18:19 -08:00
xhci-dbg.c xHCI: correct to print the true HSEE of USBCMD 2012-04-10 15:21:52 -07:00
xhci-ext-caps.h xHCI: Correct the #define XHCI_LEGACY_DISABLE_SMI 2012-04-11 08:31:06 -07:00
xhci-hub.c Merge 3.6-rc6 into usb-next 2012-09-16 20:42:46 -07:00
xhci-mem.c xHCI: add aborting command ring function 2012-09-13 15:49:28 -07:00
xhci-pci.c xhci: Switch PPT ports to EHCI on shutdown. 2012-08-09 12:43:28 -07:00
xhci-plat.c usb: host: xhci-plat: use ioremap_nocache 2012-09-05 12:07:19 -07:00
xhci-ring.c drivers/usb/host/xhci-ring.c: removes unnecessary semicolon 2012-09-13 15:50:03 -07:00
xhci.c usb: host: xhci: Fix Null pointer dereferencing with 71c731a for non-x86 systems 2012-09-24 12:11:10 -07:00
xhci.h Merge 3.6-rc6 into usb-next 2012-09-16 20:42:46 -07:00