Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 1ed5d3ff authored by Vamsi Krishna Samavedam's avatar Vamsi Krishna Samavedam Committed by Hemant Kumar
Browse files

usb: dwc3: replace %p with %pK



Format specifier %p can leak kernel addresses while not valuing the
kptr_restrict system settings. When kptr_restrict is set to (1), kernel
pointers printed using the %pK format specifier will be replaced with 0's.
Debugging Note : &pK prints only Zeros as address. If you need actual
address information, write 0 to kptr_restrict.

echo 0 > /proc/sys/kernel/kptr_restrict

Change-Id: Ib1f9a151e3cb186763541dc86cb5b67a7d739ece
Signed-off-by: default avatarVamsi Krishna Samavedam <vskrishn@codeaurora.org>
Signed-off-by: default avatarMayank Rana <mrana@codeaurora.org>
parent 9d4600a1
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -405,7 +405,7 @@ int dwc3_event_buffers_setup(struct dwc3 *dwc)

	evt = dwc->ev_buf;
	dwc3_trace(trace_dwc3_core,
			"Event buf %p dma %08llx length %d\n",
			"Event buf %pK dma %08llx length %d\n",
			evt->buf, (unsigned long long) evt->dma,
			evt->length);

+3 −3
Original line number Diff line number Diff line
@@ -792,7 +792,7 @@ static int dwc3_msm_ep_queue(struct usb_ep *ep,
	list_add_tail(&req_complete->list_item, &mdwc->req_complete_list);
	request->complete = dwc3_msm_req_complete_func;

	dev_vdbg(dwc->dev, "%s: queing request %p to ep %s length %d\n",
	dev_vdbg(dwc->dev, "%s: queing request %pK to ep %s length %d\n",
			__func__, request, ep->name, request->length);
	size = dwc3_msm_read_reg(mdwc->base, DWC3_GEVNTSIZ(0));
	dbm_event_buffer_config(mdwc->dbm,
@@ -992,7 +992,7 @@ static void gsi_ring_db(struct usb_ep *ep, struct usb_gsi_request *request)
		dev_dbg(mdwc->dev, "Failed to get GSI DBL address MSB\n");

	offset = dwc3_trb_dma_offset(dep, &dep->trb_pool[num_trbs-1]);
	dev_dbg(mdwc->dev, "Writing link TRB addr: %pa to %p (%x) for ep:%s\n",
	dev_dbg(mdwc->dev, "Writing link TRB addr: %pa to %pK (%x) for ep:%s\n",
		&offset, gsi_dbl_address_lsb, request->db_reg_phs_addr_lsb,
		ep->name);

@@ -1959,7 +1959,7 @@ static void dwc3_msm_notify_event(struct dwc3 *dwc, unsigned int event,
			if (!evt)
				break;

			dev_dbg(mdwc->dev, "Evt buf %p dma %08llx length %d\n",
			dev_dbg(mdwc->dev, "Evt buf %pK dma %08llx length %d\n",
				evt->buf, (unsigned long long) evt->dma,
				evt->length);
			memset(evt->buf, 0, evt->length);
+2 −2
Original line number Diff line number Diff line
@@ -240,7 +240,7 @@ int dwc3_gadget_ep0_queue(struct usb_ep *ep, struct usb_request *request,
	spin_lock_irqsave(&dwc->lock, flags);
	if (!dep->endpoint.desc) {
		dwc3_trace(trace_dwc3_ep0,
				"trying to queue request %p to disabled %s",
				"trying to queue request %pK to disabled %s",
				request, dep->name);
		ret = -ESHUTDOWN;
		goto out;
@@ -265,7 +265,7 @@ int dwc3_gadget_ep0_queue(struct usb_ep *ep, struct usb_request *request,
	}

	dwc3_trace(trace_dwc3_ep0,
			"queueing request %p to %s length %d state '%s'",
			"queueing request %pK to %s length %d state '%s'",
			request, dep->name, request->length,
			dwc3_ep0_state_string(dwc->ep0state));

+4 −4
Original line number Diff line number Diff line
@@ -937,7 +937,7 @@ static void dwc3_prepare_one_trb(struct dwc3_ep *dep,
	struct usb_gadget	*gadget = &dwc->gadget;
	enum usb_device_speed	speed = gadget->speed;

	dwc3_trace(trace_dwc3_gadget, "%s: req %p dma %08llx length %d%s",
	dwc3_trace(trace_dwc3_gadget, "%s: req %pK dma %08llx length %d%s%s",
			dep->name, req, (unsigned long long) dma,
			length, chain ? " chain" : "");

@@ -1293,7 +1293,7 @@ static int __dwc3_gadget_ep_queue(struct dwc3_ep *dep, struct dwc3_request *req)

	if (!dep->endpoint.desc) {
		dwc3_trace(trace_dwc3_gadget,
				"trying to queue request %p to disabled %s",
				"trying to queue request %pK to disabled %s",
				&req->request, dep->endpoint.name);
		return -ESHUTDOWN;
	}
@@ -1432,13 +1432,13 @@ static int dwc3_gadget_ep_queue(struct usb_ep *ep, struct usb_request *request,

	spin_lock_irqsave(&dwc->lock, flags);
	if (!dep->endpoint.desc) {
		dev_dbg(dwc->dev, "trying to queue request %p to disabled %s\n",
		dev_dbg(dwc->dev, "trying to queue request %pK to disabled %s\n",
				request, ep->name);
		ret = -ESHUTDOWN;
		goto out;
	}

	if (WARN(req->dep != dep, "request %p belongs to '%s'\n",
	if (WARN(req->dep != dep, "request %pK belongs to '%s'\n",
				request, req->dep->name)) {
		ret = -EINVAL;
		goto out;
+2 −2
Original line number Diff line number Diff line
@@ -40,7 +40,7 @@ static inline u32 dwc3_readl(void __iomem *base, u32 offset)
	 * documentation, so we revert it back to the proper addresses, the
	 * same way they are described on SNPS documentation
	 */
	dwc3_trace(trace_dwc3_readl, "addr %p value %08x",
	dwc3_trace(trace_dwc3_readl, "addr %pK value %08x",
			base - DWC3_GLOBALS_REGS_START + offset, value);

	return value;
@@ -60,7 +60,7 @@ static inline void dwc3_writel(void __iomem *base, u32 offset, u32 value)
	 * documentation, so we revert it back to the proper addresses, the
	 * same way they are described on SNPS documentation
	 */
	dwc3_trace(trace_dwc3_writel, "addr %p value %08x",
	dwc3_trace(trace_dwc3_writel, "addr %pK value %08x",
			base - DWC3_GLOBALS_REGS_START + offset, value);
}

Loading