User Details
- User Since
- Jun 22 2015, 5:21 PM (580 w, 4 d)
Wed, Aug 5
Tue, Aug 4
Nice! These stats look really interesting.
Also, bnxt_ktls_pre_xmit() and bnxt_ktls_submit_mbuf() both write BDs and advance txr->prod directly, and neither
compares against the consumer. Is that safe?
Mon, Aug 3
Why is the if needed? UINT32_MAX +1 == 0
Can't most these just be implemented in terms of the already existing primitives in sys/bitstring.h? Eg, bnxt_find_first_zero_bit -> bit_ffc bnxt_find_next_zero_bit -> bit_ffc_at bnxt_find_next_bit > bit_ffs_
I think every mpc allocation is leaked on detach. Eg, frees are done from bnxt_queues_free(). iflib runs bnxt_detach(), which sets mpc_info = NULL. And then runs bnxt_queues_free(), which gates freeing on if (!mpc) return;
Does something need to re-apply this after reset?
- In addition to the inline comments, please make the code conform to style(9)
- There do not seem to be licenses on the new files
I spent a while looking at this, and I think maybe we should do a taskqueue_drain_all() here instead. Some drivers (bnxt) use their own tasks registered via iflib_config_task_init that deal with link events and might be subject to the same issue.
Thu, Jul 16
Wed, Jul 15
The whole watchdog thing, like mp_ring, is absurdly over-complicated for no real reason. Just do it the mxge way: if we have pending transmits (eg, producer != consumer) *AND* the nic has not consumed any packets since the last time the watchdog callout ran, then reset. I get dizzy every time i look at the iflib queue-state stuff. Its just extra complexity that adds nothing.
Before and after:
Tue, Jul 14
Mon, Jul 13
I'd write this as 'mcopydata(m,off, len, mtod(..));
Jul 8 2026
Jul 6 2026
Jul 3 2026
Jun 30 2026
Jun 26 2026
I agree that its unfortunate to burn a flag on this, but in the near term, I think this fixes a real bug and should be committed.
Jun 23 2026
Jun 17 2026
Jun 15 2026
Jun 12 2026
It took me a while, but I think your patch is correct.
Jun 6 2026
Jun 3 2026
Jun 2 2026
Jun 1 2026
So, TL;DR, eventlog is different enough from how bblog is architected that it must be a new system.
May 29 2026
May 28 2026
May 25 2026
May 22 2026
May 21 2026
May 20 2026
May 19 2026
May 16 2026
May 12 2026
Apr 29 2026
Apr 25 2026
Address review feedback by moving this into tcp_twstart()
