Page MenuHomeFreeBSD

dpaa2: Setup interface caps on attach
Needs ReviewPublic

Authored by dsl on Wed, Oct 29, 2:06 PM.
Tags
None
Referenced Files
F134078584: D53436.id165319.diff
Thu, Oct 30, 2:23 PM
F134075733: D53436.diff
Thu, Oct 30, 2:03 PM
Unknown Object (File)
Wed, Oct 29, 10:51 PM
Unknown Object (File)
Wed, Oct 29, 8:23 PM
Unknown Object (File)
Wed, Oct 29, 7:03 PM
Unknown Object (File)
Wed, Oct 29, 5:45 PM
Unknown Object (File)
Wed, Oct 29, 4:36 PM
Unknown Object (File)
Wed, Oct 29, 4:32 PM
Subscribers

Details

Reviewers
bz
dch
tuexen
Summary

I've recently discovered (to my surprise) that my jail on Honeycomb LX2 sends UDP and TCP packets with incorrect checksums over epair(4). Bisecting led me to 39d4094173f9 ("epair: add support for checksum offloading"). There's a "dpaa2_ni_setup_if_caps" function in dpaa2_ni.c which configures L3/L4 checksums HW offloading, but it wasn't called in my case during the boot process at all. However, toggling capabilities on the working dpni0 interface helped. I call "dpaa2_ni_setup_if_caps" as a part of the dpaa2_ni attach here.

Test Plan
  1. Run the latest CURRENT (e.g. 6fa18fe74461);
  2. $ drill freebsd.org;
  3. Observe proper address resolved;
  4. $ jexec <JAIL_ID> /bin/sh;
  5. $ drill freebsd.org;
  6. Observe a delay and a network error.

Diff Detail

Repository
rG FreeBSD src repository
Lint
Lint Skipped
Unit
Tests Skipped