From: Jakub Kicinski <jakub.kicin...@netronome.com> Date: Thu, 3 Oct 2019 11:18:53 -0700
> We have 3 modes of operation of TLS - software, crypto offload > (Mellanox, Netronome) and TCP Offload Engine-based (Chelsio). > The last one takes over the socket, like any TOE would, and > is not really compatible with how we want to do things in the > networking stack. > > Confusingly the name of the crypto-only offload mode is TLS_HW, > while TOE-offload related functions use tls_hw_ as their prefix. > > Engineers looking to implement offload are also be faced with > TOE artefacts like struct tls_device (while, again, > CONFIG_TLS_DEVICE actually gates the non-TOE offload). > > To improve the clarity of the offload code move the TOE code > into new files, and rename the functions and structures > appropriately. > > Because TOE-offload takes over the socket, and makes no use of > the TLS infrastructure in the kernel, the rest of the code > (anything beyond the ULP setup handlers) do not have to worry > about the mode == TLS_HW_RECORD case. > > The increase in code size is due to duplication of the full > license boilerplate. Unfortunately original author (Dave Watson) > seems unreachable :( Series applied.