[PATCH] flow_offload: action should not be NULL when it is referenced

Subsystems: networking [general], the rest

STALE1827d

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

[PATCH] flow_offload: action should not be NULL when it is referenced

From: <hidden>
Date: 2021-06-26 12:16:58

From: gushengxian <redacted>

"action" should not be NULL when it is referenced.

Signed-off-by: gushengxian <redacted>
Signed-off-by: gushengxian <redacted>
---
 include/net/flow_offload.h | 12 +++++++-----
 1 file changed, 7 insertions(+), 5 deletions(-)
diff --git a/include/net/flow_offload.h b/include/net/flow_offload.h
index dc5c1e69cd9f..69c9eabf8325 100644
--- a/include/net/flow_offload.h
+++ b/include/net/flow_offload.h
@@ -319,12 +319,14 @@ flow_action_mixed_hw_stats_check(const struct flow_action *action,
 	if (flow_offload_has_one_action(action))
 		return true;
 
-	flow_action_for_each(i, action_entry, action) {
-		if (i && action_entry->hw_stats != last_hw_stats) {
-			NL_SET_ERR_MSG_MOD(extack, "Mixing HW stats types for actions is not supported");
-			return false;
+	if (action) {
+		flow_action_for_each(i, action_entry, action) {
+			if (i && action_entry->hw_stats != last_hw_stats) {
+				NL_SET_ERR_MSG_MOD(extack, "Mixing HW stats types for actions is not supported");
+				return false;
+			}
+			last_hw_stats = action_entry->hw_stats;
 		}
-		last_hw_stats = action_entry->hw_stats;
 	}
 	return true;
 }
-- 
2.25.1

Re: [PATCH] flow_offload: action should not be NULL when it is referenced

From: patchwork-bot+netdevbpf@kernel.org
Date: 2021-06-28 21:30:12

Hello:

This patch was applied to netdev/net.git (refs/heads/master):

On Sat, 26 Jun 2021 04:56:06 -0700 you wrote:
From: gushengxian <redacted>

"action" should not be NULL when it is referenced.

Signed-off-by: gushengxian <redacted>
Signed-off-by: gushengxian <redacted>

[...]
Here is the summary with links:
  - flow_offload: action should not be NULL when it is referenced
    https://git.kernel.org/netdev/net/c/9ea3e52c5bc8

You are awesome, thank you!
--
Deet-doot-dot, I am a bot.
https://korg.docs.kernel.org/patchwork/pwbot.html

Re: [PATCH] flow_offload: action should not be NULL when it is referenced

From: Ido Schimmel <hidden>
Date: 2021-08-18 11:58:31

On Sat, Jun 26, 2021 at 04:56:06AM -0700, 13145886936@163.com wrote:
quoted hunk
From: gushengxian <redacted>

"action" should not be NULL when it is referenced.

Signed-off-by: gushengxian <redacted>
Signed-off-by: gushengxian <redacted>
---
 include/net/flow_offload.h | 12 +++++++-----
 1 file changed, 7 insertions(+), 5 deletions(-)
diff --git a/include/net/flow_offload.h b/include/net/flow_offload.h
index dc5c1e69cd9f..69c9eabf8325 100644
--- a/include/net/flow_offload.h
+++ b/include/net/flow_offload.h
@@ -319,12 +319,14 @@ flow_action_mixed_hw_stats_check(const struct flow_action *action,
 	if (flow_offload_has_one_action(action))
 		return true;
 
-	flow_action_for_each(i, action_entry, action) {
-		if (i && action_entry->hw_stats != last_hw_stats) {
-			NL_SET_ERR_MSG_MOD(extack, "Mixing HW stats types for actions is not supported");
-			return false;
+	if (action) {
This patch generates a smatch warning:

include/net/flow_offload.h:322 flow_action_mixed_hw_stats_check() warn: variable dereferenced before check 'action' (see line 319)

Why the patch is needed? 'action' is already dereferenced in
flow_offload_has_one_action()
+		flow_action_for_each(i, action_entry, action) {
+			if (i && action_entry->hw_stats != last_hw_stats) {
+				NL_SET_ERR_MSG_MOD(extack, "Mixing HW stats types for actions is not supported");
+				return false;
+			}
+			last_hw_stats = action_entry->hw_stats;
 		}
-		last_hw_stats = action_entry->hw_stats;
 	}
 	return true;
 }
-- 
2.25.1

Re: [PATCH] flow_offload: action should not be NULL when it is referenced

From: Jamal Hadi Salim <jhs@mojatatu.com>
Date: 2021-08-18 12:37:02

On 2021-08-18 7:58 a.m., Ido Schimmel wrote:
On Sat, Jun 26, 2021 at 04:56:06AM -0700, 13145886936@163.com wrote:
quoted
From: gushengxian <redacted>

"action" should not be NULL when it is referenced.

Signed-off-by: gushengxian <redacted>
Signed-off-by: gushengxian <redacted>
---
  include/net/flow_offload.h | 12 +++++++-----
  1 file changed, 7 insertions(+), 5 deletions(-)
diff --git a/include/net/flow_offload.h b/include/net/flow_offload.h
index dc5c1e69cd9f..69c9eabf8325 100644
--- a/include/net/flow_offload.h
+++ b/include/net/flow_offload.h
@@ -319,12 +319,14 @@ flow_action_mixed_hw_stats_check(const struct flow_action *action,
  	if (flow_offload_has_one_action(action))
  		return true;
  
-	flow_action_for_each(i, action_entry, action) {
-		if (i && action_entry->hw_stats != last_hw_stats) {
-			NL_SET_ERR_MSG_MOD(extack, "Mixing HW stats types for actions is not supported");
-			return false;
+	if (action) {
This patch generates a smatch warning:

include/net/flow_offload.h:322 flow_action_mixed_hw_stats_check() warn: variable dereferenced before check 'action' (see line 319)

Why the patch is needed? 'action' is already dereferenced in
flow_offload_has_one_action()
Yep, doesnt make sense at all.

cheers,
jamal

Re: [PATCH] flow_offload: action should not be NULL when it is referenced

From: Ido Schimmel <hidden>
Date: 2021-08-18 13:40:57

On Wed, Aug 18, 2021 at 08:36:55AM -0400, Jamal Hadi Salim wrote:
On 2021-08-18 7:58 a.m., Ido Schimmel wrote:
quoted
On Sat, Jun 26, 2021 at 04:56:06AM -0700, 13145886936@163.com wrote:
quoted
From: gushengxian <redacted>

"action" should not be NULL when it is referenced.

Signed-off-by: gushengxian <redacted>
Signed-off-by: gushengxian <redacted>
---
  include/net/flow_offload.h | 12 +++++++-----
  1 file changed, 7 insertions(+), 5 deletions(-)
diff --git a/include/net/flow_offload.h b/include/net/flow_offload.h
index dc5c1e69cd9f..69c9eabf8325 100644
--- a/include/net/flow_offload.h
+++ b/include/net/flow_offload.h
@@ -319,12 +319,14 @@ flow_action_mixed_hw_stats_check(const struct flow_action *action,
  	if (flow_offload_has_one_action(action))
  		return true;
-	flow_action_for_each(i, action_entry, action) {
-		if (i && action_entry->hw_stats != last_hw_stats) {
-			NL_SET_ERR_MSG_MOD(extack, "Mixing HW stats types for actions is not supported");
-			return false;
+	if (action) {
This patch generates a smatch warning:

include/net/flow_offload.h:322 flow_action_mixed_hw_stats_check() warn: variable dereferenced before check 'action' (see line 319)

Why the patch is needed? 'action' is already dereferenced in
flow_offload_has_one_action()
Yep, doesnt make sense at all.
Will send a revert
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help