From 9c1a628121770c6d16a500cd2a1886076e4d8e88 Mon Sep 17 00:00:00 2001 From: "Jason A. Donenfeld" Date: Fri, 15 Sep 2017 03:45:41 +0200 Subject: Try out spinlocks for multiconsumer --- src/peer.c | 3 +++ 1 file changed, 3 insertions(+) (limited to 'src/peer.c') diff --git a/src/peer.c b/src/peer.c index 62d3259..9d88da7 100644 --- a/src/peer.c +++ b/src/peer.c @@ -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; -- cgit v1.2.3-59-g8ed1b