summaryrefslogtreecommitdiff
path: root/drivers/net/wireguard/queueing.c
diff options
context:
space:
mode:
authorDavid S. Miller <davem@davemloft.net>2023-07-03 09:17:52 +0100
committerDavid S. Miller <davem@davemloft.net>2023-07-03 09:17:52 +0100
commit6da8cf8f6b42bd3785b866ce705fe97666081ec9 (patch)
tree89a51c16b42b25d96f862d99ec2e29cc20010d86 /drivers/net/wireguard/queueing.c
parent0ad466d99dbac3997ae4002d43663a4c1437c8bc (diff)
parent98788e31e3607f44785a59682ca7137eb2e4d15e (diff)
downloadwireguard-linux-trimmed-6da8cf8f6b42bd3785b866ce705fe97666081ec9.tar.gz
wireguard-linux-trimmed-6da8cf8f6b42bd3785b866ce705fe97666081ec9.zip
Merge branch 'wireguard-fixes'
Jason A. Donenfeld says: ==================== wireguard fixes for 6.4.2/6.5-rc1 Sorry to send these patches during the merge window, but they're net fixes, not netdev enhancements, and while I'd ordinarily wait anyway, I just got a first bug report for one of these fixes, which I originally had thought was mostly unlikely. So please apply the following three patches to net: 1) Make proper use of nr_cpu_ids with cpumask_next(), rather than awkwardly using modulo, to handle dynamic CPU topology changes. Linus noticed this a while ago and pointed it out, and today a user actually got hit by it. 2) Respect persistent keepalive and other staged packets when setting the private key after the interface is already up. 3) Use timer_delete_sync() instead of del_timer_sync(), per the documentation. ==================== Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/wireguard/queueing.c')
-rw-r--r--drivers/net/wireguard/queueing.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/net/wireguard/queueing.c b/drivers/net/wireguard/queueing.c
index 8084e74..26d235d 100644
--- a/drivers/net/wireguard/queueing.c
+++ b/drivers/net/wireguard/queueing.c
@@ -28,6 +28,7 @@ int wg_packet_queue_init(struct crypt_queue *queue, work_func_t function,
int ret;
memset(queue, 0, sizeof(*queue));
+ queue->last_cpu = -1;
ret = ptr_ring_init(&queue->ring, len, GFP_KERNEL);
if (ret)
return ret;