Re: [PATCH] net: liquidio: fix NULL pointer dereferences

From: David Miller
Date: Mon Mar 11 2019 - 15:17:16 EST


From: Kangjie Lu <kjlu@xxxxxxx>
Date: Mon, 11 Mar 2019 00:46:15 -0500

> @@ -1960,6 +1966,12 @@ static int setup_nic_devices(struct octeon_device *octeon_dev)
> sc = (struct octeon_soft_command *)
> octeon_alloc_soft_command(octeon_dev, data_size,
> resp_size, 0);
> + if (!sc) {
> + dev_err(&octeon_dev->pci_dev->dev,
> + "Failed to allocate octeon_soft_command\n");
> + return -ENOMEM;
> + }

Again, very sloppy. You have to branch to setup_nic_dev_free in this situation
otherwise you leak devices allocated and setup from previous iterations of the
loop this code is in.