[PATCH net 0/3] wireguard fixes for 6.4.2/6.5-rc1

From: Jason A. Donenfeld
Date: Sun Jul 02 2023 - 21:27:47 EST


Hi Jakub,

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.

Thanks,
Jason

Jason A. Donenfeld (3):
wireguard: queueing: use saner cpu selection wrapping
wireguard: netlink: send staged packets when setting initial private
key
wireguard: timers: move to using timer_delete_sync

drivers/net/wireguard/netlink.c | 14 ++++++----
drivers/net/wireguard/queueing.c | 1 +
drivers/net/wireguard/queueing.h | 25 ++++++++----------
drivers/net/wireguard/receive.c | 2 +-
drivers/net/wireguard/send.c | 2 +-
drivers/net/wireguard/timers.c | 10 ++++----
tools/testing/selftests/wireguard/netns.sh | 30 +++++++++++++++++++---
7 files changed, 54 insertions(+), 30 deletions(-)

--
2.41.0