[PATCH net] ethtool: strset: Fix reply_size value

Subsystems: networking [ethtool], networking [general], the rest

STALE1880d REVIEWED: 7 (6M)

3 review trailers.

5 messages, 4 authors, 2021-06-17 · open the first message on its own page

[PATCH net] ethtool: strset: Fix reply_size value

From: Amit Cohen <hidden>
Date: 2021-06-17 15:43:23

strset_reply_size() does not take into account the size required for the
'ETHTOOL_A_STRSET_STRINGSETS' nested attribute.
Since commit 4d1fb7cde0cc ("ethtool: add a stricter length check") this
results in the following warning in the kernel log:

ethnl cmd 1: calculated reply length 2236, but consumed 2240
WARNING: CPU: 2 PID: 30549 at net/ethtool/netlink.c:360 ethnl_default_doit+0x29f/0x310

Add the appropriate size to the calculation.

Fixes: 71921690f974 ("ethtool: provide string sets with STRSET_GET request")
Signed-off-by: Amit Cohen <redacted>
Reviewed-by: Jiri Pirko <redacted>
Reviewed-by: Ido Schimmel <idosch@nvidia.com>
Tested-by: Ido Schimmel <idosch@nvidia.com>
---
 net/ethtool/strset.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/net/ethtool/strset.c b/net/ethtool/strset.c
index b3029fff715d..86dcb6b099b3 100644
--- a/net/ethtool/strset.c
+++ b/net/ethtool/strset.c
@@ -365,7 +365,7 @@ static int strset_reply_size(const struct ethnl_req_info *req_base,
 		len += ret;
 	}
 
-	return len;
+	return nla_total_size(len);
 }
 
 /* fill one string into reply */
-- 
2.31.1

Re: [PATCH net] ethtool: strset: Fix reply_size value

From: Ido Schimmel <hidden>
Date: 2021-06-17 16:29:17

On Thu, Jun 17, 2021 at 06:42:52PM +0300, Amit Cohen wrote:
strset_reply_size() does not take into account the size required for the
'ETHTOOL_A_STRSET_STRINGSETS' nested attribute.
Since commit 4d1fb7cde0cc ("ethtool: add a stricter length check") this
results in the following warning in the kernel log:

ethnl cmd 1: calculated reply length 2236, but consumed 2240
WARNING: CPU: 2 PID: 30549 at net/ethtool/netlink.c:360 ethnl_default_doit+0x29f/0x310

Add the appropriate size to the calculation.

Fixes: 71921690f974 ("ethtool: provide string sets with STRSET_GET request")
Signed-off-by: Amit Cohen <redacted>
Reviewed-by: Jiri Pirko <redacted>
Reviewed-by: Ido Schimmel <idosch@nvidia.com>
Tested-by: Ido Schimmel <idosch@nvidia.com>
Ha, seems this is addressed by commit e175aef90269 ("ethtool: strset:
fix message length calculation") in net.git which actually motivated
commit 4d1fb7cde0cc ("ethtool: add a stricter length check").

The former is still not in net-next.git, which is why the warning is
triggered there.

The patch can be dropped.

Re: [PATCH net] ethtool: strset: Fix reply_size value

From: Michal Kubecek <hidden>
Date: 2021-06-17 16:29:31

On Thu, Jun 17, 2021 at 06:42:52PM +0300, Amit Cohen wrote:
quoted hunk
strset_reply_size() does not take into account the size required for the
'ETHTOOL_A_STRSET_STRINGSETS' nested attribute.
Since commit 4d1fb7cde0cc ("ethtool: add a stricter length check") this
results in the following warning in the kernel log:

ethnl cmd 1: calculated reply length 2236, but consumed 2240
WARNING: CPU: 2 PID: 30549 at net/ethtool/netlink.c:360 ethnl_default_doit+0x29f/0x310

Add the appropriate size to the calculation.

Fixes: 71921690f974 ("ethtool: provide string sets with STRSET_GET request")
Signed-off-by: Amit Cohen <redacted>
Reviewed-by: Jiri Pirko <redacted>
Reviewed-by: Ido Schimmel <idosch@nvidia.com>
Tested-by: Ido Schimmel <idosch@nvidia.com>
---
 net/ethtool/strset.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/net/ethtool/strset.c b/net/ethtool/strset.c
index b3029fff715d..86dcb6b099b3 100644
--- a/net/ethtool/strset.c
+++ b/net/ethtool/strset.c
@@ -365,7 +365,7 @@ static int strset_reply_size(const struct ethnl_req_info *req_base,
 		len += ret;
 	}
 
-	return len;
+	return nla_total_size(len);
 }
 
 /* fill one string into reply */
I believe this issue has been already fixed in net tree by commit
e175aef90269 ("ethtool: strset: fix message length calculation") but as
this commit has not been merged into net-next yet, you could hit it with
the stricter check.

Michal

Re: [PATCH net] ethtool: strset: Fix reply_size value

From: Ido Schimmel <hidden>
Date: 2021-06-17 16:33:35

On Thu, Jun 17, 2021 at 06:29:23PM +0200, Michal Kubecek wrote:
I believe this issue has been already fixed in net tree by commit
e175aef90269 ("ethtool: strset: fix message length calculation") but as
this commit has not been merged into net-next yet, you could hit it with
the stricter check.
Yea. I reached the same conclusion :/

Re: [PATCH net] ethtool: strset: Fix reply_size value

From: Jakub Kicinski <kuba@kernel.org>
Date: 2021-06-17 21:07:47

On Thu, 17 Jun 2021 19:33:27 +0300 Ido Schimmel wrote:
On Thu, Jun 17, 2021 at 06:29:23PM +0200, Michal Kubecek wrote:
quoted
I believe this issue has been already fixed in net tree by commit
e175aef90269 ("ethtool: strset: fix message length calculation") but as
this commit has not been merged into net-next yet, you could hit it with
the stricter check.  
Yea. I reached the same conclusion :/
Ah damn, I should have waited for the merge, sorry about that :S
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help