Page MenuHomeFreeBSD

cxgbe(4): Allow a T6 adapter to switch between TOE and KTLS mode.
ClosedPublic

Authored by np on Tue, Mar 16, 7:18 PM.

Details

Summary

The hw.cxgbe.kern_tls tunable was used for this in the past and if it
was set then all T6 adapters would be configured for KTLS operation and
could not be reconfigured for TOE without a reload. With this change
ifconfig can be used to manipulate toe and txtls caps like any other
caps and will configure the hardware appropriately. hw.cxgbe.kern_tls
continues to work as usual but its effects are not permanent any more.

  • Enable nic_ktls_ofld in the default configuration file and use the firmware instead of direct register manipulation to apply/rollback KTLS configuration. This allows the driver to switch the hardware between TOE and KTLS mode in a safe manner. Note that the configuration is adapter-wide and not per-port.
  • Remove the kern_tls config file as it works with 100G T6 cards only and leads to firmware crashes with 25G cards. The configurations included with the driver (with the exception of the FPGA configs) are supposed to work with all adapters.

Reported by: Veeresh U.K. at Chelsio
MFC after: 2 weeks
Sponsored by: Chelsio Communications

Diff Detail

Repository
R10 FreeBSD src repository
Lint
Automatic diff as part of commit; lint not applicable.
Unit
Automatic diff as part of commit; unit tests not applicable.

Event Timeline

np requested review of this revision.Tue, Mar 16, 7:18 PM

Generally looks good to me. Nice to have this runtime togglelable now. I assume the minimum FW version we require now supports the new feature?

sys/dev/cxgbe/t4_main.c
11318

Maybe call it "NIC TLS" rather than KTLS since TOE TLS is also KTLS?

np marked an inline comment as done.

"NIC TLS" instead of "KTLS" in the message as suggested by jhb@.

I would use "NIC TLS" in a few more messages to be consistent.

sys/dev/cxgbe/t4_main.c
4814
11078
11085
This revision is now accepted and ready to land.Thu, Mar 25, 4:52 PM

I should really add a TLS section to cxgbe(4) as well the talks about TOE TLS vs NIC TLS. It's on my todo list, just haven't done it yet :(

np marked 3 inline comments as done.Thu, Mar 25, 7:42 PM