Re: [PATCH net] net: hinic: Fix cleanup in create_rxqs/txqs()

From: Simon Horman
Date: Mon Dec 16 2024 - 05:34:19 EST


On Fri, Dec 13, 2024 at 05:28:11PM +0300, Dan Carpenter wrote:
> There is a check for NULL at the start of create_txqs() and
> create_rxqs() which tess if "nic_dev->txqs" is non-NULL. The
> intention is that if the device is already open and the queues
> are already created then we don't create them a second time.
>
> However, the bug is that if we have an error in the create_txqs()
> then the pointer doesn't get set back to NULL. The NULL check
> at the start of the function will say that it's already open when
> it's not and the device can't be used.
>
> Set ->txqs back to NULL on cleanup on error.
>
> Fixes: c3e79baf1b03 ("net-next/hinic: Add logical Txq and Rxq")
> Signed-off-by: Dan Carpenter <dan.carpenter@xxxxxxxxxx>

Reviewed-by: Simon Horman <horms@xxxxxxxxxx>