diff options
author | Ziyang Xuan <william.xuanziyang@huawei.com> | 2022-08-27 15:20:11 +0800 |
---|---|---|
committer | Marc Kleine-Budde <mkl@pengutronix.de> | 2022-09-06 08:35:07 +0200 |
commit | 170277c532780392051fee48260896ed280cfbef (patch) | |
tree | b82ed850922ee21d2c017bb2b1ecce5d2cd51dea /net/can | |
parent | c28b3bffe49e713ce67f0e36de13b8f9f0776837 (diff) | |
download | linux-170277c532780392051fee48260896ed280cfbef.tar.gz linux-170277c532780392051fee48260896ed280cfbef.tar.bz2 linux-170277c532780392051fee48260896ed280cfbef.zip |
can: raw: use guard clause to optimize nesting in raw_rcv()
We can use guard clause to optimize nesting codes like
if (condition) { ... } else { return; } in raw_rcv();
Signed-off-by: Ziyang Xuan <william.xuanziyang@huawei.com>
Link: https://lore.kernel.org/all/0170ad1f07dbe838965df4274fce950980fa9d1f.1661584485.git.william.xuanziyang@huawei.com
Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
Diffstat (limited to 'net/can')
-rw-r--r-- | net/can/raw.c | 13 |
1 files changed, 6 insertions, 7 deletions
diff --git a/net/can/raw.c b/net/can/raw.c index 9ae7c4206b9a..e7dfa3584e29 100644 --- a/net/can/raw.c +++ b/net/can/raw.c @@ -136,14 +136,13 @@ static void raw_rcv(struct sk_buff *oskb, void *data) /* eliminate multiple filter matches for the same skb */ if (this_cpu_ptr(ro->uniq)->skb == oskb && this_cpu_ptr(ro->uniq)->skbcnt == can_skb_prv(oskb)->skbcnt) { - if (ro->join_filters) { - this_cpu_inc(ro->uniq->join_rx_count); - /* drop frame until all enabled filters matched */ - if (this_cpu_ptr(ro->uniq)->join_rx_count < ro->count) - return; - } else { + if (!ro->join_filters) + return; + + this_cpu_inc(ro->uniq->join_rx_count); + /* drop frame until all enabled filters matched */ + if (this_cpu_ptr(ro->uniq)->join_rx_count < ro->count) return; - } } else { this_cpu_ptr(ro->uniq)->skb = oskb; this_cpu_ptr(ro->uniq)->skbcnt = can_skb_prv(oskb)->skbcnt; |