diff mbox series

USB: serial: drop bogus to_usb_serial_port() checks

Message ID 20210208154806.20853-1-johan@kernel.org
State New
Headers show
Series USB: serial: drop bogus to_usb_serial_port() checks | expand

Commit Message

Johan Hovold Feb. 8, 2021, 3:48 p.m. UTC
The to_usb_serial_port() macro is implemented using container_of() so
there's no need to check for NULL.

Note that neither bus match() or probe() is ever called with a NULL
struct device pointer so the checks weren't just misplaced.

Signed-off-by: Johan Hovold <johan@kernel.org>
---
 drivers/usb/serial/bus.c | 16 +++-------------
 1 file changed, 3 insertions(+), 13 deletions(-)

Comments

Uwe Kleine-König Feb. 8, 2021, 5:06 p.m. UTC | #1
On 2/8/21 4:48 PM, Johan Hovold wrote:
> The to_usb_serial_port() macro is implemented using container_of() so
> there's no need to check for NULL.
> 
> Note that neither bus match() or probe() is ever called with a NULL
> struct device pointer so the checks weren't just misplaced.
> 
> Signed-off-by: Johan Hovold <johan@kernel.org>

Reviewed-by: Uwe Kleine-König <uwe@kleine-koenig.org>

Thanks
Uwe
Johan Hovold Feb. 9, 2021, 12:16 p.m. UTC | #2
On Mon, Feb 08, 2021 at 06:06:38PM +0100, Uwe Kleine-König wrote:
> On 2/8/21 4:48 PM, Johan Hovold wrote:

> > The to_usb_serial_port() macro is implemented using container_of() so

> > there's no need to check for NULL.

> > 

> > Note that neither bus match() or probe() is ever called with a NULL

> > struct device pointer so the checks weren't just misplaced.

> > 

> > Signed-off-by: Johan Hovold <johan@kernel.org>

> 

> Reviewed-by: Uwe Kleine-König <uwe@kleine-koenig.org>


Thanks Uwe and Greg for reviewing. Now applied.

Johan
diff mbox series

Patch

diff --git a/drivers/usb/serial/bus.c b/drivers/usb/serial/bus.c
index 1a8c7821d00a..7133818a58b9 100644
--- a/drivers/usb/serial/bus.c
+++ b/drivers/usb/serial/bus.c
@@ -16,19 +16,13 @@ 
 static int usb_serial_device_match(struct device *dev,
 						struct device_driver *drv)
 {
-	struct usb_serial_driver *driver;
-	const struct usb_serial_port *port;
+	const struct usb_serial_port *port = to_usb_serial_port(dev);
+	struct usb_serial_driver *driver = to_usb_serial_driver(drv);
 
 	/*
 	 * drivers are already assigned to ports in serial_probe so it's
 	 * a simple check here.
 	 */
-	port = to_usb_serial_port(dev);
-	if (!port)
-		return 0;
-
-	driver = to_usb_serial_driver(drv);
-
 	if (driver == port->serial->type)
 		return 1;
 
@@ -37,16 +31,12 @@  static int usb_serial_device_match(struct device *dev,
 
 static int usb_serial_device_probe(struct device *dev)
 {
+	struct usb_serial_port *port = to_usb_serial_port(dev);
 	struct usb_serial_driver *driver;
-	struct usb_serial_port *port;
 	struct device *tty_dev;
 	int retval = 0;
 	int minor;
 
-	port = to_usb_serial_port(dev);
-	if (!port)
-		return -ENODEV;
-
 	/* make sure suspend/resume doesn't race against port_probe */
 	retval = usb_autopm_get_interface(port->serial->interface);
 	if (retval)