Page MenuHomeFreeBSD

mlx4en: Use the common RSS key for programming and queries
ClosedPublic

Authored by kbowling on Sep 18 2026, 8:42 AM.
Tags
None
Referenced Files
Unknown Object (File)
Tue, Oct 13, 11:45 AM
Unknown Object (File)
Tue, Oct 13, 5:08 AM
Unknown Object (File)
Mon, Oct 12, 3:19 PM
Unknown Object (File)
Sun, Oct 11, 11:18 AM
Unknown Object (File)
Fri, Oct 9, 2:00 AM
Unknown Object (File)
Thu, Oct 8, 3:45 AM
Unknown Object (File)
Wed, Oct 7, 7:20 PM
Unknown Object (File)
Wed, Oct 7, 6:25 AM
Subscribers

Details

Summary
Replace the private fixed key with rss_getkey().  Copy the common byte
stream directly into the RSS queue-pair context and use the same helper
for SIOCGIFRSSKEY, so hardware programming and hn's query agree.

Change the helper to fill caller-owned storage instead of returning a
pointer to a static key.  Check the fixed hardware and ioctl buffer sizes
at compile time.  Leave RSS masks and queue steering unchanged.

MFC after:      2 weeks
Sponsored by:   BBOX.io

Diff Detail

Repository
rG FreeBSD src repository
Lint
Lint Not Applicable
Unit
Tests Not Applicable

Event Timeline

Nvidia does not maintain the mlx4 driver, and I cannot even test it. Change it on your own discretion.

sys/dev/mlx4/mlx4_en/mlx4_en_netdev.c
2095

Why CTASSERT() and not KASSERT()?

sys/dev/mlx4/mlx4_en/mlx4_en_netdev.c
2095

I mean _Static_assert() of course.

kbowling marked 2 inline comments as done.
This revision was not accepted when it landed; it landed in state Needs Review.Fri, Sep 18, 11:00 PM
This revision was automatically updated to reflect the committed changes.