RE: [PATCH] hv_netvsc: Fix potential dereference of NULL pointer

From: Haiyang Zhang
Date: Thu May 19 2022 - 10:03:14 EST




> -----Original Message-----
> From: Yongzhi Liu <lyz_cs@xxxxxxxxxx>
> Sent: Thursday, May 19, 2022 8:10 AM
> To: KY Srinivasan <kys@xxxxxxxxxxxxx>; Haiyang Zhang
> <haiyangz@xxxxxxxxxxxxx>; Stephen Hemminger
> <sthemmin@xxxxxxxxxxxxx>; wei.liu@xxxxxxxxxx; Dexuan Cui
> <decui@xxxxxxxxxxxxx>; davem@xxxxxxxxxxxxx; kuba@xxxxxxxxxx;
> pabeni@xxxxxxxxxx; sashal@xxxxxxxxxx
> Cc: linux-hyperv@xxxxxxxxxxxxxxx; netdev@xxxxxxxxxxxxxxx; linux-
> kernel@xxxxxxxxxxxxxxx; fuyq@xxxxxxxxxxxxxx; Yongzhi Liu
> <lyz_cs@xxxxxxxxxx>
> Subject: [PATCH] hv_netvsc: Fix potential dereference of NULL pointer
>
> [Some people who received this message don't often get email from
> lyz_cs@xxxxxxxxxx. Learn why this is important at
> https://aka.ms/LearnAboutSenderIdentification.]
>
> The return value of netvsc_devinfo_get()
> needs to be checked to avoid use of NULL
> pointer in case of an allocation failure.
>
> Fixes: 0efeea5fb ("hv_netvsc: Add the support of hibernation")
>
> Signed-off-by: Yongzhi Liu <lyz_cs@xxxxxxxxxx>
> ---
> drivers/net/hyperv/netvsc_drv.c | 5 ++++-
> 1 file changed, 4 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/net/hyperv/netvsc_drv.c
> b/drivers/net/hyperv/netvsc_drv.c
> index fde1c49..b1dece6 100644
> --- a/drivers/net/hyperv/netvsc_drv.c
> +++ b/drivers/net/hyperv/netvsc_drv.c
> @@ -2671,7 +2671,10 @@ static int netvsc_suspend(struct hv_device *dev)
>
> /* Save the current config info */
> ndev_ctx->saved_netvsc_dev_info = netvsc_devinfo_get(nvdev);
> -
> + if (!ndev_ctx->saved_netvsc_dev_info) {
> + ret = -ENOMEM;
> + goto out;
> + }
> ret = netvsc_detach(net, nvdev);
> out:
> rtnl_unlock();

Reviewed-by: Haiyang Zhang <haiyangz@xxxxxxxxxxxxx>
Thank you!