Page MenuHomeFreeBSD

bnxt: Report the programmed RSS key and hash types
AcceptedPublic

Authored by kbowling on Fri, Sep 18, 10:51 AM.
Tags
None
Referenced Files
F173239552: D59809.diff
Thu, Sep 24, 2:43 PM
F173179900: D59809.diff
Thu, Sep 24, 3:36 AM
F173169276: D59809.diff
Thu, Sep 24, 2:04 AM
Unknown Object (File)
Wed, Sep 23, 1:19 AM
Unknown Object (File)
Sun, Sep 20, 9:23 PM
Unknown Object (File)
Sun, Sep 20, 2:30 AM
Unknown Object (File)
Sun, Sep 20, 2:06 AM
Unknown Object (File)
Sat, Sep 19, 6:25 AM
Subscribers

Details

Summary

Principally for hn(4) to match the synthetic and VF settings

Implement the iflib RSS query methods using the VNIC key and hash
selections accepted by firmware.  This includes live sysctl changes,
rather than assuming the interface always uses the common RSS defaults,
and lets hn synchronize its synthetic RSS configuration with the VF.

Track whether the cached configuration was successfully programmed.
Invalidate it before an RSS update and when clearing firmware resource
IDs, and publish it only after a successful HWRM response.  A failed live
update otherwise leaves the cached request indistinguishable from the
effective configuration.  Reject queries while stopped, suspended,
recovering, or without a confirmed configuration.

Translate the six IPv4/IPv6 TCP/UDP hash selections into the interface
query ABI, preserving the programmed key's byte order.  Report no hashing
when all selections are disabled.  Queries run under the iflib context
lock without issuing firmware commands or changing RSS policy.

MFC after:      2 weeks
Sponsored by:   BBOX.io

Diff Detail

Lint
Lint Skipped
Unit
Tests Skipped