Re: [patch 11/12] usb: core: Replace in_interrupt() in comments
From: Alan Stern <stern@rowland.harvard.edu>
Date: 2020-10-14 16:27:28
Also in:
linux-omap, linux-samsung-soc, linux-usb, lkml
On Wed, Oct 14, 2020 at 04:52:26PM +0200, Thomas Gleixner wrote:
From: Ahmed S. Darwish <redacted> The usage of in_interrupt() in drivers is phased out for various reasons. Various comments use !in_interrupt() to describe calling context for functions which might sleep. That's wrong because the calling context has to be preemptible task context, which is not what !in_interrupt() describes. Replace !in_interrupt() with more accurate plain text descriptions. The comment for usb_hcd_poll_rh_status() is misleading as this function is called from all kinds of contexts including preemptible task context. Remove it as there is obviously no restriction. Signed-off-by: Ahmed S. Darwish <redacted> Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de> Signed-off-by: Thomas Gleixner <redacted> Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org> Cc: linux-usb@vger.kernel.org ---
quoted hunk ↗ jump to hunk
--- a/drivers/usb/core/hcd.c +++ b/drivers/usb/core/hcd.c@@ -746,9 +746,6 @@ static int rh_call_control (struct usb_h * Root Hub interrupt transfers are polled using a timer if the * driver requests it; otherwise the driver is responsible for * calling usb_hcd_poll_rh_status() when an event occurs. - * - * Completions are called in_interrupt(), but they may or may not - * be in_irq().
This comment should not be removed; instead it should be changed to say that completion handlers are called with interrupts disabled.
quoted hunk ↗ jump to hunk
@@ -1691,7 +1690,6 @@ static void usb_giveback_urb_bh(unsigned * @hcd: host controller returning the URB * @urb: urb being returned to the USB device driver. * @status: completion status code for the URB. - * Context: in_interrupt()
The comment should be changed to say that the routine runs in a BH handler (or however you want to express it).
quoted hunk ↗ jump to hunk
--- a/drivers/usb/core/message.c +++ b/drivers/usb/core/message.c
quoted hunk ↗ jump to hunk
@@ -934,7 +939,7 @@ int usb_get_device_descriptor(struct usb /* * usb_set_isoch_delay - informs the device of the packet transmit delay * @dev: the device whose delay is to be informed - * Context: !in_interrupt() + * Context: can sleep
Why is this comment different from all the others? Alan Stern _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel