Эх сурвалжийг харах

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

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>
Signed-off-by: David S. Miller <davem@davemloft.net>
Colin Ian King 7 жил өмнө
parent
commit
0f04d05751
1 өөрчлөгдсөн 1 нэмэгдсэн , 1 устгасан
  1. 1 1
      net/sched/cls_u32.c

+ 1 - 1
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;