* [PATCH] hv_netvsc: Fix potential dereference of NULL pointer
@ 2022-05-19 12:09 Yongzhi Liu
2022-05-19 13:45 ` Haiyang Zhang
2022-05-21 1:00 ` patchwork-bot+netdevbpf
0 siblings, 2 replies; 6+ messages in thread
From: Yongzhi Liu @ 2022-05-19 12:09 UTC (permalink / raw)
To: kys, haiyangz, sthemmin, wei.liu, decui, davem, kuba, pabeni, sashal
Cc: linux-hyperv, netdev, linux-kernel, fuyq, Yongzhi Liu
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@pku.edu.cn>
---
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
^ permalink raw reply related [flat|nested] 6+ messages in thread
* RE: [PATCH] hv_netvsc: Fix potential dereference of NULL pointer
2022-05-19 12:09 [PATCH] hv_netvsc: Fix potential dereference of NULL pointer Yongzhi Liu
@ 2022-05-19 13:45 ` Haiyang Zhang
2022-05-21 1:00 ` patchwork-bot+netdevbpf
1 sibling, 0 replies; 6+ messages in thread
From: Haiyang Zhang @ 2022-05-19 13:45 UTC (permalink / raw)
To: Yongzhi Liu, KY Srinivasan, Stephen Hemminger, wei.liu,
Dexuan Cui, davem, kuba, pabeni, sashal
Cc: linux-hyperv, netdev, linux-kernel, fuyq
> -----Original Message-----
> From: Yongzhi Liu <lyz_cs@pku.edu.cn>
> Sent: Thursday, May 19, 2022 8:10 AM
> To: KY Srinivasan <kys@microsoft.com>; Haiyang Zhang
> <haiyangz@microsoft.com>; Stephen Hemminger
> <sthemmin@microsoft.com>; wei.liu@kernel.org; Dexuan Cui
> <decui@microsoft.com>; davem@davemloft.net; kuba@kernel.org;
> pabeni@redhat.com; sashal@kernel.org
> Cc: linux-hyperv@vger.kernel.org; netdev@vger.kernel.org; linux-
> kernel@vger.kernel.org; fuyq@stu.pku.edu.cn; Yongzhi Liu
> <lyz_cs@pku.edu.cn>
> Subject: [PATCH] hv_netvsc: Fix potential dereference of NULL pointer
>
> [Some people who received this message don't often get email from
> lyz_cs@pku.edu.cn. 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@pku.edu.cn>
> ---
> 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@microsoft.com>
Thank you!
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [PATCH] hv_netvsc: Fix potential dereference of NULL pointer
2022-05-19 12:09 [PATCH] hv_netvsc: Fix potential dereference of NULL pointer Yongzhi Liu
2022-05-19 13:45 ` Haiyang Zhang
@ 2022-05-21 1:00 ` patchwork-bot+netdevbpf
1 sibling, 0 replies; 6+ messages in thread
From: patchwork-bot+netdevbpf @ 2022-05-21 1:00 UTC (permalink / raw)
To: =?utf-8?b?5YiY5rC45b+XIDxseXpfY3NAcGt1LmVkdS5jbj4=?=
Cc: kys, haiyangz, sthemmin, wei.liu, decui, davem, kuba, pabeni,
sashal, linux-hyperv, netdev, linux-kernel, fuyq
Hello:
This patch was applied to netdev/net.git (master)
by Jakub Kicinski <kuba@kernel.org>:
On Thu, 19 May 2022 05:09:48 -0700 you 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 <lyz_cs@pku.edu.cn>
>
> [...]
Here is the summary with links:
- hv_netvsc: Fix potential dereference of NULL pointer
https://git.kernel.org/netdev/net/c/eb4c07889647
You are awesome, thank you!
--
Deet-doot-dot, I am a bot.
https://korg.docs.kernel.org/patchwork/pwbot.html
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [PATCH v2] iio: vadc: Fix potential dereference of NULL pointer
@ 2022-05-20 17:13 Jonathan Cameron
2022-05-21 3:31 ` [PATCH] hv_netvsc: " Yongzhi Liu
0 siblings, 1 reply; 6+ messages in thread
From: Jonathan Cameron @ 2022-05-20 17:13 UTC (permalink / raw)
To: Yongzhi Liu
Cc: agross, bjorn.andersson, jic23, lars, linux-arm-msm, linux-iio,
linux-kernel, fuyq
On Wed, 18 May 2022 22:50:55 -0700
Yongzhi Liu <lyz_cs@pku.edu.cn> wrote:
> The return value of vadc_get_channel() needs to be checked
> to avoid use of NULL pointer. Fix this by adding the null
> pointer check on prop.
>
> Fixes: 0917de94c ("iio: vadc: Qualcomm SPMI PMIC voltage ADC driver")
>
> Signed-off-by: Yongzhi Liu <lyz_cs@pku.edu.cn>
This function has a lot of goto err; where err just results in
a print.
My suggestion is to just drop that print and use
error specific prints as you have done here, then use direct returns.
> ---
> drivers/iio/adc/qcom-spmi-vadc.c | 23 ++++++++++++++++++++++-
> 1 file changed, 22 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/iio/adc/qcom-spmi-vadc.c b/drivers/iio/adc/qcom-spmi-vadc.c
> index 34202ba..9fa61fb 100644
> --- a/drivers/iio/adc/qcom-spmi-vadc.c
> +++ b/drivers/iio/adc/qcom-spmi-vadc.c
> @@ -358,14 +358,25 @@ static int vadc_measure_ref_points(struct vadc_priv *vadc)
> vadc->graph[VADC_CALIB_ABSOLUTE].dx = VADC_ABSOLUTE_RANGE_UV;
>
> prop = vadc_get_channel(vadc, VADC_REF_1250MV);
> + if (!prop) {
> + dev_err(vadc->dev, "Please define 1.25V channel\n");
> + ret = -ENODEV;
> + goto err;
> + }
> ret = vadc_do_conversion(vadc, prop, &read_1);
> if (ret)
> goto err;
>
> /* Try with buffered 625mV channel first */
> prop = vadc_get_channel(vadc, VADC_SPARE1);
> - if (!prop)
> + if (!prop) {
> prop = vadc_get_channel(vadc, VADC_REF_625MV);
> + if (!prop) {
> + dev_err(vadc->dev, "Please define 0.625V channel\n");
> + ret = -ENODEV;
> + goto err;
> + }
> + }
>
> ret = vadc_do_conversion(vadc, prop, &read_2);
> if (ret)
> @@ -381,11 +392,21 @@ static int vadc_measure_ref_points(struct vadc_priv *vadc)
>
> /* Ratiometric calibration */
> prop = vadc_get_channel(vadc, VADC_VDD_VADC);
> + if (!prop) {
> + dev_err(vadc->dev, "Please define VDD channel\n");
> + ret = -ENODEV;
> + goto err;
> + }
> ret = vadc_do_conversion(vadc, prop, &read_1);
> if (ret)
> goto err;
>
> prop = vadc_get_channel(vadc, VADC_GND_REF);
> + if (!prop) {
> + dev_err(vadc->dev, "Please define GND channel\n");
> + ret = -ENODEV;
> + goto err;
> + }
> ret = vadc_do_conversion(vadc, prop, &read_2);
> if (ret)
> goto err;
^ permalink raw reply [flat|nested] 6+ messages in thread
* [PATCH] hv_netvsc: Fix potential dereference of NULL pointer
2022-05-20 17:13 [PATCH v2] iio: vadc: " Jonathan Cameron
@ 2022-05-21 3:31 ` Yongzhi Liu
2022-05-21 3:34 ` 刘永志
2022-05-23 15:21 ` Andy Shevchenko
0 siblings, 2 replies; 6+ messages in thread
From: Yongzhi Liu @ 2022-05-21 3:31 UTC (permalink / raw)
To: agross, bjorn.andersson, jic23, lars, svarbanov, iivanov,
jonathan.cameron
Cc: linux-arm-msm, linux-iio, linux-kernel, fuyq, Yongzhi Liu
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@pku.edu.cn>
---
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
^ permalink raw reply related [flat|nested] 6+ messages in thread
* Re: [PATCH] hv_netvsc: Fix potential dereference of NULL pointer
2022-05-21 3:31 ` [PATCH] hv_netvsc: " Yongzhi Liu
@ 2022-05-21 3:34 ` 刘永志
2022-05-23 15:21 ` Andy Shevchenko
1 sibling, 0 replies; 6+ messages in thread
From: 刘永志 @ 2022-05-21 3:34 UTC (permalink / raw)
To: agross, bjorn.andersson, jic23, lars, svarbanov, iivanov,
jonathan.cameron
Cc: linux-arm-msm, linux-iio, linux-kernel
I'm sorry to send this to linux-iio by mistake. I will cautiously submit patches later.
> -----Original Messages-----
> From: "Yongzhi Liu" <lyz_cs@pku.edu.cn>
> Sent Time: 2022-05-21 11:31:02 (Saturday)
> To: agross@kernel.org, bjorn.andersson@linaro.org, jic23@kernel.org, lars@metafoo.de, svarbanov@mm-sol.com, iivanov@mm-sol.com, jonathan.cameron@huawei.com
> Cc: linux-arm-msm@vger.kernel.org, linux-iio@vger.kernel.org, linux-kernel@vger.kernel.org, fuyq@stu.pku.edu.cn, "Yongzhi Liu" <lyz_cs@pku.edu.cn>
> 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 <lyz_cs@pku.edu.cn>
> ---
> 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
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [PATCH] hv_netvsc: Fix potential dereference of NULL pointer
2022-05-21 3:31 ` [PATCH] hv_netvsc: " Yongzhi Liu
2022-05-21 3:34 ` 刘永志
@ 2022-05-23 15:21 ` Andy Shevchenko
1 sibling, 0 replies; 6+ messages in thread
From: Andy Shevchenko @ 2022-05-23 15:21 UTC (permalink / raw)
To: Yongzhi Liu
Cc: Andy Gross, Bjorn Andersson, Jonathan Cameron,
Lars-Peter Clausen, Stanimir Varbanov, Ivan T. Ivanov,
Jonathan Cameron, linux-arm-msm, linux-iio,
Linux Kernel Mailing List, fuyq
On Sat, May 21, 2022 at 6:27 AM Yongzhi Liu <lyz_cs@pku.edu.cn> 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 <lyz_cs@pku.edu.cn>
For the future independently of the subsystem or mailing list, the tag
block (above) mustn't have lank lines.
--
With Best Regards,
Andy Shevchenko
^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2022-05-23 15:22 UTC | newest]
Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-05-19 12:09 [PATCH] hv_netvsc: Fix potential dereference of NULL pointer Yongzhi Liu
2022-05-19 13:45 ` Haiyang Zhang
2022-05-21 1:00 ` patchwork-bot+netdevbpf
2022-05-20 17:13 [PATCH v2] iio: vadc: " Jonathan Cameron
2022-05-21 3:31 ` [PATCH] hv_netvsc: " Yongzhi Liu
2022-05-21 3:34 ` 刘永志
2022-05-23 15:21 ` Andy Shevchenko
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.