diff options
author | Jason A. Donenfeld <Jason@zx2c4.com> | 2017-09-15 03:45:41 +0200 |
---|---|---|
committer | Jason A. Donenfeld <Jason@zx2c4.com> | 2017-09-15 16:40:56 +0200 |
commit | 9c1a628121770c6d16a500cd2a1886076e4d8e88 (patch) | |
tree | cecee0da0d16a59285daa7401b7d86f46255b6c3 /src/peer.c | |
parent | data: reorganize and edit new queuing code (diff) | |
download | wireguard-monolithic-historical-9c1a628121770c6d16a500cd2a1886076e4d8e88.tar.xz wireguard-monolithic-historical-9c1a628121770c6d16a500cd2a1886076e4d8e88.zip |
Try out spinlocks for multiconsumer
Diffstat (limited to 'src/peer.c')
-rw-r--r-- | src/peer.c | 3 |
1 files changed, 3 insertions, 0 deletions
@@ -48,10 +48,13 @@ struct wireguard_peer *peer_create(struct wireguard_device *wg, const u8 public_ list_add_tail(&peer->peer_list, &wg->peer_list); INIT_LIST_HEAD(&peer->init_queue.list); INIT_WORK(&peer->init_queue.work, packet_init_worker); + spin_lock_init(&peer->init_queue.lock); INIT_LIST_HEAD(&peer->send_queue.list); INIT_WORK(&peer->send_queue.work, packet_send_worker); + spin_lock_init(&peer->send_queue.lock); INIT_LIST_HEAD(&peer->receive_queue.list); INIT_WORK(&peer->receive_queue.work, packet_receive_worker); + spin_lock_init(&peer->receive_queue.lock); spin_lock_init(&peer->init_queue_lock); pr_debug("%s: Peer %Lu created\n", wg->dev->name, peer->internal_id); return peer; |