projects
/
linux-2.6-microblaze.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
wireguard: use synchronize_net rather than synchronize_rcu
[linux-2.6-microblaze.git]
/
drivers
/
net
/
wireguard
/
peer.c
diff --git
a/drivers/net/wireguard/peer.c
b/drivers/net/wireguard/peer.c
index
cd5cb02
..
3a042d2
100644
(file)
--- a/
drivers/net/wireguard/peer.c
+++ b/
drivers/net/wireguard/peer.c
@@
-88,7
+88,7
@@
static void peer_make_dead(struct wg_peer *peer)
/* Mark as dead, so that we don't allow jumping contexts after. */
WRITE_ONCE(peer->is_dead, true);
/* Mark as dead, so that we don't allow jumping contexts after. */
WRITE_ONCE(peer->is_dead, true);
- /* The caller must now synchronize_
rcu
() for this to take effect. */
+ /* The caller must now synchronize_
net
() for this to take effect. */
}
static void peer_remove_after_dead(struct wg_peer *peer)
}
static void peer_remove_after_dead(struct wg_peer *peer)
@@
-160,7
+160,7
@@
void wg_peer_remove(struct wg_peer *peer)
lockdep_assert_held(&peer->device->device_update_lock);
peer_make_dead(peer);
lockdep_assert_held(&peer->device->device_update_lock);
peer_make_dead(peer);
- synchronize_
rcu
();
+ synchronize_
net
();
peer_remove_after_dead(peer);
}
peer_remove_after_dead(peer);
}
@@
-178,7
+178,7
@@
void wg_peer_remove_all(struct wg_device *wg)
peer_make_dead(peer);
list_add_tail(&peer->peer_list, &dead_peers);
}
peer_make_dead(peer);
list_add_tail(&peer->peer_list, &dead_peers);
}
- synchronize_
rcu
();
+ synchronize_
net
();
list_for_each_entry_safe(peer, temp, &dead_peers, peer_list)
peer_remove_after_dead(peer);
}
list_for_each_entry_safe(peer, temp, &dead_peers, peer_list)
peer_remove_after_dead(peer);
}