diff options
| -rw-r--r-- | drivers/staging/batman-adv/main.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/drivers/staging/batman-adv/main.c b/drivers/staging/batman-adv/main.c index 2686019fe4e1..ef7c20ae7979 100644 --- a/drivers/staging/batman-adv/main.c +++ b/drivers/staging/batman-adv/main.c | |||
| @@ -250,10 +250,13 @@ int choose_orig(void *data, int32_t size) | |||
| 250 | int is_my_mac(uint8_t *addr) | 250 | int is_my_mac(uint8_t *addr) |
| 251 | { | 251 | { |
| 252 | struct batman_if *batman_if; | 252 | struct batman_if *batman_if; |
| 253 | |||
| 253 | rcu_read_lock(); | 254 | rcu_read_lock(); |
| 254 | list_for_each_entry_rcu(batman_if, &if_list, list) { | 255 | list_for_each_entry_rcu(batman_if, &if_list, list) { |
| 255 | if ((batman_if->net_dev) && | 256 | if (batman_if->if_status != IF_ACTIVE) |
| 256 | (compare_orig(batman_if->net_dev->dev_addr, addr))) { | 257 | continue; |
| 258 | |||
| 259 | if (compare_orig(batman_if->net_dev->dev_addr, addr)) { | ||
| 257 | rcu_read_unlock(); | 260 | rcu_read_unlock(); |
| 258 | return 1; | 261 | return 1; |
| 259 | } | 262 | } |
