[PATCH net-next v15 0/9] tls: Add TLS 1.3 hardware offload support
From: Rishikesh Jethwani <hidden>
Date: 2026-07-09 20:54:16
Hi all,
This series adds TLS 1.3 hardware offload support including KeyUpdate
(rekey) and a selftest for validation.
Patch 1: Reject TLS 1.3 offload in chcr_ktls and nfp drivers
These drivers only support TLS 1.2; add explicit version check.
Patch 2: mlx5e TLS 1.3 hardware offload
Add TLS 1.3 TX/RX offload on ConnectX-6 Dx and newer.
Handle 12-byte IV format and TLS_1_3 context type.
Patch 3: Core TLS 1.3 hardware offload support
Extend tls_device.c for TLS 1.3 record format (content type
appended before tag). Handle TLS 1.3 IV construction in fallback.
Patch 4: Split tls_set_sw_offload into init/finalize
Patch 5: Prep helpers and refactors for HW offload KeyUpdate
Patch 6: TX KeyUpdate support
Patch 7: RX KeyUpdate support
Patch 8: Tracepoints for RX KeyUpdate path
Patch 9: Selftest for hardware offload
Rishikesh
Changes in v15:
- Added tls_dev_rx_rekey_fixup callback
- Addressed review comments
Rishikesh Jethwani (9):
net: tls: reject TLS 1.3 offload in chcr_ktls and nfp drivers
net/mlx5e: add TLS 1.3 hardware offload support
tls: add TLS 1.3 hardware offload support
tls: split tls_set_sw_offload into init and finalize stages
tls: prep helpers and refactors for HW offload KeyUpdate
tls: device: add TX KeyUpdate support
tls: device: add RX KeyUpdate support
tls: device: add tracepoints for the KeyUpdate path
selftests: net: add TLS hardware offload test
MAINTAINERS | 2 +
.../chelsio/inline_crypto/ch_ktls/chcr_ktls.c | 3 +
.../mellanox/mlx5/core/en_accel/ktls.c | 10 +
.../mellanox/mlx5/core/en_accel/ktls.h | 8 +-
.../mellanox/mlx5/core/en_accel/ktls_txrx.c | 14 +-
.../net/ethernet/netronome/nfp/crypto/tls.c | 3 +
include/net/tls.h | 90 +-
include/uapi/linux/snmp.h | 6 +
net/tls/tls.h | 22 +-
net/tls/tls_device.c | 876 ++++++++++++++--
net/tls/tls_device_fallback.c | 82 +-
net/tls/tls_main.c | 68 +-
net/tls/tls_proc.c | 6 +
net/tls/tls_sw.c | 133 ++-
net/tls/trace.h | 98 ++
.../selftests/drivers/net/hw/.gitignore | 1 +
.../testing/selftests/drivers/net/hw/Makefile | 2 +
.../selftests/drivers/net/hw/tls_hw_offload.c | 975 ++++++++++++++++++
.../drivers/net/hw/tls_hw_offload.py | 295 ++++++
19 files changed, 2498 insertions(+), 196 deletions(-)
create mode 100644 tools/testing/selftests/drivers/net/hw/tls_hw_offload.c
create mode 100755 tools/testing/selftests/drivers/net/hw/tls_hw_offload.py
--
2.25.1