2018-01-07 20:10:52

by SF Markus Elfring

[permalink] [raw]
Subject: [PATCH] hyperv/netvsc: Delete two error messages for a failed memory allocation in netvsc_init_buf()

From: Markus Elfring <[email protected]>
Date: Sun, 7 Jan 2018 21:03:26 +0100

Omit extra messages for a memory allocation failure in this function.

This issue was detected by using the Coccinelle software.

Signed-off-by: Markus Elfring <[email protected]>
---
drivers/net/hyperv/netvsc.c | 5 -----
1 file changed, 5 deletions(-)

diff --git a/drivers/net/hyperv/netvsc.c b/drivers/net/hyperv/netvsc.c
index 17e529af79dc..c1ec02f801f6 100644
--- a/drivers/net/hyperv/netvsc.c
+++ b/drivers/net/hyperv/netvsc.c
@@ -275,9 +275,6 @@ static int netvsc_init_buf(struct hv_device *device,

net_device->recv_buf = vzalloc(buf_size);
if (!net_device->recv_buf) {
- netdev_err(ndev,
- "unable to allocate receive buffer of size %u\n",
- buf_size);
ret = -ENOMEM;
goto cleanup;
}
@@ -357,8 +354,6 @@ static int netvsc_init_buf(struct hv_device *device,

net_device->send_buf = vzalloc(buf_size);
if (!net_device->send_buf) {
- netdev_err(ndev, "unable to allocate send buffer of size %u\n",
- buf_size);
ret = -ENOMEM;
goto cleanup;
}
--
2.15.1


2018-01-08 15:37:32

by Haiyang Zhang

[permalink] [raw]
Subject: RE: [PATCH] hyperv/netvsc: Delete two error messages for a failed memory allocation in netvsc_init_buf()



> -----Original Message-----
> From: SF Markus Elfring [mailto:[email protected]]
> Sent: Sunday, January 7, 2018 3:10 PM
> To: [email protected]; [email protected]; Haiyang Zhang
> <[email protected]>; KY Srinivasan <[email protected]>; Stephen
> Hemminger <[email protected]>
> Cc: LKML <[email protected]>; [email protected]
> Subject: [PATCH] hyperv/netvsc: Delete two error messages for a failed
> memory allocation in netvsc_init_buf()
>
> From: Markus Elfring <[email protected]>
> Date: Sun, 7 Jan 2018 21:03:26 +0100
>
> Omit extra messages for a memory allocation failure in this function.
>
> This issue was detected by using the Coccinelle software.
>
> Signed-off-by: Markus Elfring <[email protected]>
> ---
> drivers/net/hyperv/netvsc.c | 5 -----
> 1 file changed, 5 deletions(-)
>
> diff --git a/drivers/net/hyperv/netvsc.c b/drivers/net/hyperv/netvsc.c index
> 17e529af79dc..c1ec02f801f6 100644
> --- a/drivers/net/hyperv/netvsc.c
> +++ b/drivers/net/hyperv/netvsc.c
> @@ -275,9 +275,6 @@ static int netvsc_init_buf(struct hv_device *device,
>
> net_device->recv_buf = vzalloc(buf_size);
> if (!net_device->recv_buf) {
> - netdev_err(ndev,
> - "unable to allocate receive buffer of size %u\n",
> - buf_size);
> ret = -ENOMEM;
> goto cleanup;
> }
> @@ -357,8 +354,6 @@ static int netvsc_init_buf(struct hv_device *device,
>
> net_device->send_buf = vzalloc(buf_size);
> if (!net_device->send_buf) {
> - netdev_err(ndev, "unable to allocate send buffer of
> size %u\n",
> - buf_size);
> ret = -ENOMEM;
> goto cleanup;
> }

These messages are not displayed anywhere else:
"unable to allocate receive buffer of size %u\n"
"unable to allocate send buffer of size %u\n",

After set ret = -ENOMEM; and cleanup, we won't know which buffer allocation failed without the error message.

So please do not remove these messages.

Thanks,
- Haiyang

2018-01-08 18:19:37

by SF Markus Elfring

[permalink] [raw]
Subject: Re: hyperv/netvsc: Delete two error messages for a failed memory allocation in netvsc_init_buf()

> These messages are not displayed anywhere else:
> "unable to allocate receive buffer of size %u\n"
> "unable to allocate send buffer of size %u\n",
>
> After set ret = -ENOMEM; and cleanup, we won't know which buffer allocation failed without the error message.

Do you notice a Linux allocation failure report before them in your system?


> So please do not remove these messages.

How much does the distinction matter for these buffers?

Regards,
Markus

2018-01-15 09:00:19

by SF Markus Elfring

[permalink] [raw]
Subject: Re: hyperv/netvsc: Delete two error messages for a failed memory allocation in netvsc_init_buf()

> These messages are not displayed anywhere else:
> "unable to allocate receive buffer of size %u\n"
> "unable to allocate send buffer of size %u\n",
>
> After set ret = -ENOMEM; and cleanup, we won't know which buffer allocation failed without the error message.

How do you think about to achieve the distinction for these buffers by any other means?

Can a detailed function call stack dump be appropriate?


> So please do not remove these messages.

Would you dare to adjust this function implementation in any other ways?

Regards,
Markus