Re: [PATCH] Fix for possible null pointer dereference in keyspan.c

From: Johan Hovold
Date: Fri May 16 2014 - 11:30:30 EST


On Thu, May 15, 2014 at 11:55:10PM +0200, Rickard Strandqvist wrote:
> There is otherwise a risk of a possible null pointer dereference.

I don't think this can be triggered unless the URB allocation fails at
probe, but let's move the offending line nonetheless.

I'll fix up the patch subject as well.

> Was largely found by using a static code analysis program called cppcheck.
>
> Signed-off-by: Rickard Strandqvist <rickard_strandqvist@xxxxxxxxxxxxxxxxxx>
> ---
> drivers/usb/serial/keyspan.c | 4 ++--
> 1 fil ändrad, 2 tillägg(+), 2 borttagningar(-)

Diff stats in Swedish?! :)

Thanks,
Johan

> diff --git a/drivers/usb/serial/keyspan.c b/drivers/usb/serial/keyspan.c
> index d3acaea..93cb7ce 100644
> --- a/drivers/usb/serial/keyspan.c
> +++ b/drivers/usb/serial/keyspan.c
> @@ -1535,14 +1535,14 @@ static int keyspan_usa26_send_setup(struct usb_serial *serial,
>
> this_urb = p_priv->outcont_urb;
>
> - dev_dbg(&port->dev, "%s - endpoint %d\n", __func__, usb_pipeendpoint(this_urb->pipe));
> -
> /* Make sure we have an urb then send the message */
> if (this_urb == NULL) {
> dev_dbg(&port->dev, "%s - oops no urb.\n", __func__);
> return -1;
> }
>
> + dev_dbg(&port->dev, "%s - endpoint %d\n", __func__, usb_pipeendpoint(this_urb->pipe));
> +
> /* Save reset port val for resend.
> Don't overwrite resend for open/close condition. */
> if ((reset_port + 1) > p_priv->resend_cont)
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/