mirror of
https://github.com/freebsd/freebsd-src.git
synced 2026-11-07 04:36:52 -10:00
Add kTLS TX crypto offload, layered on MPC (crypto add/delete commands submitted over its TCE channel) and TX completion coalescing (shared tx_bd_opaque encoding). Adds kTLS session lifecycle management, a key-context ID allocator, HWRM key-context alloc/free with partition-mode support, and the TX submit path: in-order packets go out on the normal iflib path with CSUM_SND_TAG set, while out-of-order or retransmitted TLS records get a presync command plus a replayed copy of the record built from the driver's own replay ring. Also adds kTLS/MPC completion-time counter sysctls and the max_ktls_entries tunable. Reviewed by: gallatin MFC after: 2 weeks Sponsored by: Broadcom Inc. Differential Revision: https://reviews.freebsd.org/D58606