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

Commit 2ee6850c authored by Sebastian Haas's avatar Sebastian Haas Committed by Marc Kleine-Budde
Browse files

can: ems_usb: Improved memory handling on ems_usb_start



Do not return from ems_usb_start if allocation fails. If not all URBs
could be allocated use the one already submitted.

Signed-off-by: default avatarSebastian Haas <dev@sebastianhaas.info>
Signed-off-by: default avatarMarc Kleine-Budde <mkl@pengutronix.de>
parent 9a123496
Loading
Loading
Loading
Loading
+4 −2
Original line number Diff line number Diff line
@@ -607,7 +607,8 @@ static int ems_usb_start(struct ems_usb *dev)
		if (!urb) {
			dev_err(netdev->dev.parent,
				"No memory left for URBs\n");
			return -ENOMEM;
			err = -ENOMEM;
			break;
		}

		buf = usb_alloc_coherent(dev->udev, RX_BUFFER_SIZE, GFP_KERNEL,
@@ -616,7 +617,8 @@ static int ems_usb_start(struct ems_usb *dev)
			dev_err(netdev->dev.parent,
				"No memory left for USB buffer\n");
			usb_free_urb(urb);
			return -ENOMEM;
			err = -ENOMEM;
			break;
		}

		usb_fill_bulk_urb(urb, dev->udev, usb_rcvbulkpipe(dev->udev, 2),