2022-05-21 11:25:49

by Yongzhi Liu

[permalink] [raw]
Subject: [PATCH] hv_netvsc: Fix potential dereference of NULL pointer

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 <[email protected]>
---
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();
--
2.7.4



2022-05-23 07:09:02

by Yongzhi Liu

[permalink] [raw]
Subject: Re: [PATCH] hv_netvsc: Fix potential dereference of NULL pointer



I'm sorry to send this to linux-iio by mistake. I will cautiously submit patches later.

> -----Original Messages-----
> From: "Yongzhi Liu" <[email protected]>
> Sent Time: 2022-05-21 11:31:02 (Saturday)
> To: [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected]
> Cc: [email protected], [email protected], [email protected], [email protected], "Yongzhi Liu" <[email protected]>
> Subject: [PATCH] hv_netvsc: Fix potential dereference of NULL pointer
>
> 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 <[email protected]>
> ---
> 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();
> --
> 2.7.4

2022-05-23 15:23:05

by Andy Shevchenko

[permalink] [raw]
Subject: Re: [PATCH] hv_netvsc: Fix potential dereference of NULL pointer

On Sat, May 21, 2022 at 6:27 AM Yongzhi Liu <[email protected]> wrote:
>
> 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 <[email protected]>

For the future independently of the subsystem or mailing list, the tag
block (above) mustn't have lank lines.

--
With Best Regards,
Andy Shevchenko