The ice_allocate_sf() function returns error pointers on error. It doesn't return NULL. Update the check to match. Fixes: 177ef7f1e2a0 ("ice: base subfunction aux driver") Signed-off-by: Dan Carpenter <dan.carpenter@xxxxxxxxxx> --- drivers/net/ethernet/intel/ice/ice_sf_eth.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/drivers/net/ethernet/intel/ice/ice_sf_eth.c b/drivers/net/ethernet/intel/ice/ice_sf_eth.c index d00389c405c4..75d7147e1c01 100644 --- a/drivers/net/ethernet/intel/ice/ice_sf_eth.c +++ b/drivers/net/ethernet/intel/ice/ice_sf_eth.c @@ -108,9 +108,9 @@ static int ice_sf_dev_probe(struct auxiliary_device *adev, vsi->flags = ICE_VSI_FLAG_INIT; priv = ice_allocate_sf(&adev->dev, pf); - if (!priv) { + if (IS_ERR(priv)) { dev_err(dev, "Subfunction devlink alloc failed"); - return -ENOMEM; + return PTR_ERR(priv); } priv->dev = sf_dev; -- 2.45.2