Provide SIOCGIFRSSKEY and SIOCGIFRSSHASH for X550 and newer VFs, whose RSS key and hash types are programmed by the VF. Cache those values and answer queries under the iflib context lock, without register reads or mailbox transactions. Invalidate the snapshot at init and stop, and reject queries while mailbox readiness is lost. Choose the VF-owned key once at attachment and reuse it when programming RSS after a reset. hn can retain its copy across live MTU or capability changes, so generating a new key at each init would leave the synthetic and VF receive paths using different keys until the next handoff. Serialize the key in register byte order and report the six supported IPv4/IPv6 TCP/UDP hash selections from the programmed MRQC. A single receive queue still performs Toeplitz hashing. Older VFs retain EOPNOTSUPP because their PF-owned RSS settings are not available here. This allows hn to synchronize synthetic RSS with the actual VF settings instead of suppressing otherwise usable receive hash metadata. MFC after: 2 weeks Sponsored by: BBOX.io
Details
Details
- Reviewers
gallatin kgalazka - Group Reviewers
Intel Networking Restricted Owners Package (Owns No Changed Paths)
Diff Detail
Diff Detail
- Lint
Lint Skipped - Unit
Tests Skipped
Event Timeline
Comment Actions
Why is this needed? All NICs should be using the same rss key these days and that's available via the sysctls in sys/net/rss_config.c