The first packet after the ring is initialized was never
completed as isc_txd_credits_update() would not include it in the
count of completed packets. This caused netmap to never complete
a batch. See PR 233022 and 233607 for more details.
Details
Details
- Reviewers
sbruno lev erj jeb - Commits
- rS341427: MFC r341156:
rS341156: Fix first-packet completion
lev tests all the things!
Diff Detail
Diff Detail
- Repository
- rS FreeBSD src repository - subversion
- Lint
Lint Passed - Unit
No Test Coverage - Build Status
Buildable 21239 Build 20581: arc lint + arc unit
Event Timeline
Comment Actions
I know I'm late commenting on this, but I think the correct fix is to initialize tx_cidx_processed to txr->desc_count -1 when we initialize.
head/sys/dev/ixl/ixl_txrx.c | ||
---|---|---|
523 ↗ | (On Diff #51299) | Also, this MPASS seems very fishy. I don't think it's correct. |