mbox series

[net,00/10] wireguard/siphash patches for 5.16-rc6

Message ID 20211129153929.3457-1-Jason@zx2c4.com (mailing list archive)
Headers show
Series wireguard/siphash patches for 5.16-rc6 | expand

Message

Jason A. Donenfeld Nov. 29, 2021, 3:39 p.m. UTC
Hi Dave/Jakub,

Here's quite a largeish set of stable patches I've had queued up and
testing for a number of months now:

  - Patch (1) squelches a sparse warning by fixing an annotation.
  - Patches (2), (3), and (5) are minor improvements and fixes to the
    test suite.
  - Patch (4) is part of a tree-wide cleanup to have module-specific
    init and exit functions.
  - Patch (6) fixes a an issue with dangling dst references, by having a
    function to release references immediately rather than deferring,
    and adds an associated test case to prevent this from regressing.
  - Patches (7) and (8) help mitigate somewhat a potential DoS on the
    ingress path due to the use of skb_list's locking hitting contention
    on multiple cores by switching to using a ring buffer and dropping
    packets on contention rather than locking up another core spinning.
  - Patch (9) switches kvzalloc to kvcalloc for better form.
  - Patch (10) fixes alignment traps in siphash with clang-13 (and maybe
    other compilers) on armv6, by switching to using the unaligned
    functions by default instead of the aligned functions by default.

Thanks,
Jason

Arnd Bergmann (1):
  siphash: use _unaligned version by default

Gustavo A. R. Silva (1):
  wireguard: ratelimiter: use kvcalloc() instead of kvzalloc()

Jason A. Donenfeld (6):
  wireguard: allowedips: add missing __rcu annotation to satisfy sparse
  wireguard: selftests: increase default dmesg log size
  wireguard: selftests: actually test for routing loops
  wireguard: device: reset peer src endpoint when netns exits
  wireguard: receive: use ring buffer for incoming handshakes
  wireguard: receive: drop handshakes if queue lock is contended

Li Zhijian (1):
  wireguard: selftests: rename DEBUG_PI_LIST to DEBUG_PLIST

Randy Dunlap (1):
  wireguard: main: rename 'mod_init' & 'mod_exit' functions to be
    module-specific

 drivers/net/wireguard/allowedips.c            |  2 +-
 drivers/net/wireguard/device.c                | 39 ++++++++++---------
 drivers/net/wireguard/device.h                |  9 ++---
 drivers/net/wireguard/main.c                  |  8 ++--
 drivers/net/wireguard/queueing.c              |  6 +--
 drivers/net/wireguard/queueing.h              |  2 +-
 drivers/net/wireguard/ratelimiter.c           |  4 +-
 drivers/net/wireguard/receive.c               | 39 +++++++++++--------
 drivers/net/wireguard/socket.c                |  2 +-
 include/linux/siphash.h                       | 14 ++-----
 include/net/dst_cache.h                       | 11 ++++++
 lib/siphash.c                                 | 12 +++---
 net/core/dst_cache.c                          | 19 +++++++++
 tools/testing/selftests/wireguard/netns.sh    | 30 +++++++++++++-
 .../selftests/wireguard/qemu/debug.config     |  2 +-
 .../selftests/wireguard/qemu/kernel.config    |  1 +
 16 files changed, 129 insertions(+), 71 deletions(-)

Comments

Jakub Kicinski Nov. 29, 2021, 6:17 p.m. UTC | #1
On Mon, 29 Nov 2021 10:39:19 -0500 Jason A. Donenfeld wrote:
> Here's quite a largeish set of stable patches I've had queued up and
> testing for a number of months now:
> 
>   - Patch (1) squelches a sparse warning by fixing an annotation.
>   - Patches (2), (3), and (5) are minor improvements and fixes to the
>     test suite.
>   - Patch (4) is part of a tree-wide cleanup to have module-specific
>     init and exit functions.
>   - Patch (6) fixes a an issue with dangling dst references, by having a
>     function to release references immediately rather than deferring,
>     and adds an associated test case to prevent this from regressing.
>   - Patches (7) and (8) help mitigate somewhat a potential DoS on the
>     ingress path due to the use of skb_list's locking hitting contention
>     on multiple cores by switching to using a ring buffer and dropping
>     packets on contention rather than locking up another core spinning.
>   - Patch (9) switches kvzalloc to kvcalloc for better form.
>   - Patch (10) fixes alignment traps in siphash with clang-13 (and maybe
>     other compilers) on armv6, by switching to using the unaligned
>     functions by default instead of the aligned functions by default.

Typo in the subject, right? No particular connection to -rc6 here?
Just checking.
Jason A. Donenfeld Nov. 29, 2021, 6:18 p.m. UTC | #2
On Mon, Nov 29, 2021 at 1:17 PM Jakub Kicinski <kuba@kernel.org> wrote:
>
> On Mon, 29 Nov 2021 10:39:19 -0500 Jason A. Donenfeld wrote:
> > Here's quite a largeish set of stable patches I've had queued up and
> > testing for a number of months now:
> >
> >   - Patch (1) squelches a sparse warning by fixing an annotation.
> >   - Patches (2), (3), and (5) are minor improvements and fixes to the
> >     test suite.
> >   - Patch (4) is part of a tree-wide cleanup to have module-specific
> >     init and exit functions.
> >   - Patch (6) fixes a an issue with dangling dst references, by having a
> >     function to release references immediately rather than deferring,
> >     and adds an associated test case to prevent this from regressing.
> >   - Patches (7) and (8) help mitigate somewhat a potential DoS on the
> >     ingress path due to the use of skb_list's locking hitting contention
> >     on multiple cores by switching to using a ring buffer and dropping
> >     packets on contention rather than locking up another core spinning.
> >   - Patch (9) switches kvzalloc to kvcalloc for better form.
> >   - Patch (10) fixes alignment traps in siphash with clang-13 (and maybe
> >     other compilers) on armv6, by switching to using the unaligned
> >     functions by default instead of the aligned functions by default.
>
> Typo in the subject, right? No particular connection to -rc6 here?
> Just checking.

I definitely meant to type 5.16-rc4, yes, sorry. Noticed this after it
was too late.