linux-usb.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* usb: host: xhci_debugfs: Fix a null pointer dereference in xhci_debugfs_create_endpoint()
@ 2019-05-04  3:37 Jia-Ju Bai
  2019-05-04  3:37 ` [PATCH] " Jia-Ju Bai
  2019-05-04  6:33 ` Greg Kroah-Hartman
  0 siblings, 2 replies; 7+ messages in thread
From: Jia-Ju Bai @ 2019-05-04  3:37 UTC (permalink / raw)
  To: mathias.nyman, gregkh; +Cc: linux-usb, linux-kernel, Jia-Ju Bai

In xhci_debugfs_create_slot(), kzalloc() can fail and
dev->debugfs_private will be NULL.
In xhci_debugfs_create_endpoint(), dev->debugfs_private is used without
any null-pointer check, and can cause a null pointer dereference.

To fix this bug, a null-pointer check is added in
xhci_debugfs_create_endpoint().

This bug is found by a runtime fuzzing tool named FIZZER written by us.

Signed-off-by: Jia-Ju Bai <baijiaju1990@gmail.com>
---
 drivers/usb/host/xhci-debugfs.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/drivers/usb/host/xhci-debugfs.c b/drivers/usb/host/xhci-debugfs.c
index cadc01336bf8..7ba6afc7ef23 100644
--- a/drivers/usb/host/xhci-debugfs.c
+++ b/drivers/usb/host/xhci-debugfs.c
@@ -440,6 +440,9 @@ void xhci_debugfs_create_endpoint(struct xhci_hcd *xhci,
 	struct xhci_ep_priv	*epriv;
 	struct xhci_slot_priv	*spriv = dev->debugfs_private;
 
+	if (!spriv)
+		return;
+
 	if (spriv->eps[ep_index])
 		return;
 

^ permalink raw reply related	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2019-05-06 11:14 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2019-05-04  3:37 usb: host: xhci_debugfs: Fix a null pointer dereference in xhci_debugfs_create_endpoint() Jia-Ju Bai
2019-05-04  3:37 ` [PATCH] " Jia-Ju Bai
2019-05-04  6:33 ` Greg Kroah-Hartman
2019-05-04  6:33   ` [PATCH] " Greg KH
2019-05-04  7:30   ` Jia-Ju Bai
2019-05-04  7:30     ` [PATCH] " Jia-Ju Bai
2019-05-06 11:16     ` Mathias Nyman

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).