From: Vardan Mikayelyan Date: Thu, 28 Apr 2016 03:20:51 +0000 (-0700) Subject: UPSTREAM: usb: dwc2: host: Setting qtd to NULL after freeing it X-Git-Tag: firefly_0821_release~856 X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=4b13398a4c7512631c71017d9c6897b4df2f4a73;p=firefly-linux-kernel-4.4.55.git UPSTREAM: usb: dwc2: host: Setting qtd to NULL after freeing it This is safety change added while doing slub debugging. Affected functions: dwc2_hcd_qtd_unlink_and_free() _dwc2_hcd_urb_enqueue() Change-Id: Ie541e0390fd5475852ede4216b2b90d7a87f5430 Signed-off-by: Vardan Mikayelyan Signed-off-by: John Youn Signed-off-by: Felipe Balbi Signed-off-by: Huang, Tao (cherry picked from commit b0d659022e5c96ee5c4bd62d22d3da2d66de306b) --- diff --git a/drivers/usb/dwc2/hcd.c b/drivers/usb/dwc2/hcd.c index 1f6255131857..2df3d04d26f5 100644 --- a/drivers/usb/dwc2/hcd.c +++ b/drivers/usb/dwc2/hcd.c @@ -4703,6 +4703,7 @@ fail2: spin_unlock_irqrestore(&hsotg->lock, flags); urb->hcpriv = NULL; kfree(qtd); + qtd = NULL; fail1: if (qh_allocated) { struct dwc2_qtd *qtd2, *qtd2_tmp; diff --git a/drivers/usb/dwc2/hcd.h b/drivers/usb/dwc2/hcd.h index 89fa26cb25f4..7758bfb644ff 100644 --- a/drivers/usb/dwc2/hcd.h +++ b/drivers/usb/dwc2/hcd.h @@ -552,6 +552,7 @@ static inline void dwc2_hcd_qtd_unlink_and_free(struct dwc2_hsotg *hsotg, { list_del(&qtd->qtd_list_entry); kfree(qtd); + qtd = NULL; } /* Descriptor DMA support functions */