diff mbox series

net: sched: cls_u32: use bitwise & rather than logical && on n->flags

Message ID 20171103080945.27155-1-colin.king@canonical.com
State Accepted, archived
Delegated to: David Miller
Headers show
Series net: sched: cls_u32: use bitwise & rather than logical && on n->flags | expand

Commit Message

Colin Ian King Nov. 3, 2017, 8:09 a.m. UTC
From: Colin Ian King <colin.king@canonical.com>

Currently n->flags is being operated on by a logical && operator rather
than a bitwise & operator. This looks incorrect as these should be bit
flag operations. Fix this.

Detected by CoverityScan, CID#1460398 ("Logical vs. bitwise operator")

Fixes: 245dc5121a9b ("net: sched: cls_u32: call block callbacks for offload")
Signed-off-by: Colin Ian King <colin.king@canonical.com>
---
 net/sched/cls_u32.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

David Miller Nov. 4, 2017, 1:52 p.m. UTC | #1
From: Colin King <colin.king@canonical.com>
Date: Fri,  3 Nov 2017 08:09:45 +0000

> From: Colin Ian King <colin.king@canonical.com>
> 
> Currently n->flags is being operated on by a logical && operator rather
> than a bitwise & operator. This looks incorrect as these should be bit
> flag operations. Fix this.
> 
> Detected by CoverityScan, CID#1460398 ("Logical vs. bitwise operator")
> 
> Fixes: 245dc5121a9b ("net: sched: cls_u32: call block callbacks for offload")
> Signed-off-by: Colin Ian King <colin.king@canonical.com>

Applied, thanks Colin.
diff mbox series

Patch

diff --git a/net/sched/cls_u32.c b/net/sched/cls_u32.c
index 86145867b424..2737b71854c9 100644
--- a/net/sched/cls_u32.c
+++ b/net/sched/cls_u32.c
@@ -572,7 +572,7 @@  static int u32_replace_hw_knode(struct tcf_proto *tp, struct tc_u_knode *n,
 		n->flags |= TCA_CLS_FLAGS_IN_HW;
 	}
 
-	if (skip_sw && !(n->flags && TCA_CLS_FLAGS_IN_HW))
+	if (skip_sw && !(n->flags & TCA_CLS_FLAGS_IN_HW))
 		return -EINVAL;
 
 	return 0;