diff options
author | David S. Miller <davem@davemloft.net> | 2023-07-03 09:17:52 +0100 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2023-07-03 09:17:52 +0100 |
commit | 6da8cf8f6b42bd3785b866ce705fe97666081ec9 (patch) | |
tree | 89a51c16b42b25d96f862d99ec2e29cc20010d86 /drivers/net/wireguard/queueing.c | |
parent | 0ad466d99dbac3997ae4002d43663a4c1437c8bc (diff) | |
parent | 98788e31e3607f44785a59682ca7137eb2e4d15e (diff) | |
download | wireguard-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.c | 1 |
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; |