Commit 1c0b28b1 authored by Hans J. Koch's avatar Hans J. Koch Committed by David S. Miller

can: Fix possible NULL pointer dereference in ems_usb.c

In ems_usb_probe(), a pointer is dereferenced after making sure it is NULL...

This patch replaces netdev->dev.parent with &intf->dev in dev_err() calls to
avoid this.
Signed-off-by: default avatar"Hans J. Koch" <hjk@linutronix.de>
Acked-by: default avatarWolfgang Grandegger <wg@grandegger.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 05d17608
...@@ -1006,7 +1006,7 @@ static int ems_usb_probe(struct usb_interface *intf, ...@@ -1006,7 +1006,7 @@ static int ems_usb_probe(struct usb_interface *intf,
netdev = alloc_candev(sizeof(struct ems_usb), MAX_TX_URBS); netdev = alloc_candev(sizeof(struct ems_usb), MAX_TX_URBS);
if (!netdev) { if (!netdev) {
dev_err(netdev->dev.parent, "Couldn't alloc candev\n"); dev_err(&intf->dev, "ems_usb: Couldn't alloc candev\n");
return -ENOMEM; return -ENOMEM;
} }
...@@ -1036,20 +1036,20 @@ static int ems_usb_probe(struct usb_interface *intf, ...@@ -1036,20 +1036,20 @@ static int ems_usb_probe(struct usb_interface *intf,
dev->intr_urb = usb_alloc_urb(0, GFP_KERNEL); dev->intr_urb = usb_alloc_urb(0, GFP_KERNEL);
if (!dev->intr_urb) { if (!dev->intr_urb) {
dev_err(netdev->dev.parent, "Couldn't alloc intr URB\n"); dev_err(&intf->dev, "Couldn't alloc intr URB\n");
goto cleanup_candev; goto cleanup_candev;
} }
dev->intr_in_buffer = kzalloc(INTR_IN_BUFFER_SIZE, GFP_KERNEL); dev->intr_in_buffer = kzalloc(INTR_IN_BUFFER_SIZE, GFP_KERNEL);
if (!dev->intr_in_buffer) { if (!dev->intr_in_buffer) {
dev_err(netdev->dev.parent, "Couldn't alloc Intr buffer\n"); dev_err(&intf->dev, "Couldn't alloc Intr buffer\n");
goto cleanup_intr_urb; goto cleanup_intr_urb;
} }
dev->tx_msg_buffer = kzalloc(CPC_HEADER_SIZE + dev->tx_msg_buffer = kzalloc(CPC_HEADER_SIZE +
sizeof(struct ems_cpc_msg), GFP_KERNEL); sizeof(struct ems_cpc_msg), GFP_KERNEL);
if (!dev->tx_msg_buffer) { if (!dev->tx_msg_buffer) {
dev_err(netdev->dev.parent, "Couldn't alloc Tx buffer\n"); dev_err(&intf->dev, "Couldn't alloc Tx buffer\n");
goto cleanup_intr_in_buffer; goto cleanup_intr_in_buffer;
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment