Re: [PATCH] net: spi: fix a potential NULL pointer dereference

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




> On Mar 10, 2019, at 1:57 AM, Kangjie Lu <kjlu@xxxxxxx> wrote:
> 
> In case alloc_workqueue fails to allocate the work queue and
> returns NULL, the fix releases the resources and returns
> -ENOMEM.
> 
> Signed-off-by: Kangjie Lu <kjlu@xxxxxxx>
> ---
> drivers/net/can/spi/mcp251x.c | 8 ++++++++
> 1 file changed, 8 insertions(+)
> 
> diff --git a/drivers/net/can/spi/mcp251x.c b/drivers/net/can/spi/mcp251x.c
> index e90817608645..2737b9a20dfe 100644
> --- a/drivers/net/can/spi/mcp251x.c
> +++ b/drivers/net/can/spi/mcp251x.c
> @@ -962,6 +962,14 @@ static int mcp251x_open(struct net_device *net)
> 
> 	priv->wq = alloc_workqueue("mcp251x_wq", WQ_FREEZABLE | WQ_MEM_RECLAIM,
> 				   0);
> +	if (unlikely(!priv->wq)) {
> +		dev_err(&spi->dev, "failed to allocate work queue\n");
> +		mcp251x_power_enable(priv->transceiver, 0);
> +		close_candev(net);
> +		ret = -ENOMEM;
> +		goto open_unlock;
> +	}
> +

Can someone review this patch?


> 	INIT_WORK(&priv->tx_work, mcp251x_tx_work_handler);
> 	INIT_WORK(&priv->restart_work, mcp251x_restart_work_handler);
> 
> -- 
> 2.17.1
> 




[Index of Archives]     [Automotive Discussions]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Security]     [Bugtraq]     [Linux]     [Linux OMAP]     [Linux MIPS]     [eCos]     [Asterisk Internet PBX]     [Linux API]     [CAN Bus]

  Powered by Linux