Page MenuHomeFreeBSD

kbowling (Kevin Bowling)
Logistics

Projects (2)

User Details

User Since
Jun 6 2015, 10:46 PM (596 w, 3 h)

Recent Activity

Yesterday

kbowling accepted D61227: x11/nvidia-driver{-devel}, x11/nvidia-kmod{-devel}, x11/linux-nvidia-libs{-devel}, graphics/nvidia-drm*-kmod{-devel}, x11/nvidia-settings, x11/nvidia-xconfig: Update to 620.70.06.
Sat, Nov 7, 5:26 AM

Wed, Nov 4

kbowling added a comment to D61144: ixgbe: Guard E610 ldo function.

Ouch :( my apologies for this oversight. ixgbe_apply_ldo_link_state is guarded by !sc->ldo_valid so it should be fine.

BTW, what do you think about using feat_cap/feat_en instead of a MAC type? I can send a follow-up patch.

Wed, Nov 4, 4:58 PM

Tue, Nov 3

kbowling accepted D61166: iflib: prefer simple_tx over mp_ring.

We also have over a year to investigate and fix any issues before the next release. Since there are no known regressions currently, makes sense to me to start baking.

Tue, Nov 3, 7:49 PM
kbowling accepted D61158: ure: Initialize ifm_active in ure_ifmedia_sts.
Tue, Nov 3, 7:11 PM
kbowling accepted D61164: bnxt: avoid unintialized use of media_type in bnxt_add_media_types().
Tue, Nov 3, 7:04 PM
kbowling added a comment to D61147: iflib: Expose locked datapath quiescence for driver resets.

Looks mostly OK to me.

Once concern is that the mp_ring paths got more expensive, but I'm hoping those are on the way out.

Tue, Nov 3, 6:48 PM
kbowling added a comment to D61128: tpm: crb: Log cmd failures, correct Pluton mailbox handshake.

Paging Doctor Zeeb. What happens on your system?

Tue, Nov 3, 5:58 PM
kbowling updated the diff for D61147: iflib: Expose locked datapath quiescence for driver resets.
Tue, Nov 3, 1:24 AM
kbowling added a comment to D61147: iflib: Expose locked datapath quiescence for driver resets.

I think the tx task could be running after iflib_stop(), thus leaving us not quite quiesced. Is there any reason why iflib_stop() does not do a gtaskqueue_drain() for tx tasks?

Tue, Nov 3, 1:20 AM

Mon, Nov 2

kbowling added a comment to D60987: mbuf: declare mbuf hash types as distinct types, not flags.

The latest update addresses the size and userland concerns and look good to me.

Mon, Nov 2, 8:29 PM
kbowling added inline comments to D60006: iflib: Allow drivers to veto unsafe hardware detach.
Mon, Nov 2, 8:14 PM
kbowling requested review of D61147: iflib: Expose locked datapath quiescence for driver resets.
Mon, Nov 2, 7:48 PM
kbowling added a comment to D61084: lacp: fix lacp for interfaces with unknown media.

Could the bug addressed here have helped contribute to https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=300451 ? I see TCP MTU in the stacktrace running the if_lagg tests, which seems weakly related to this issue.

Mon, Nov 2, 6:36 PM
kbowling requested review of D61144: ixgbe: Guard E610 ldo function.
Mon, Nov 2, 5:58 PM
kbowling requested review of D61138: e1000: separate DH89xxCC memory errors.
Mon, Nov 2, 4:48 PM
kbowling accepted D61135: if_media: Add 400G FR4 media types.
Mon, Nov 2, 4:11 PM
kbowling added a comment to D61128: tpm: crb: Log cmd failures, correct Pluton mailbox handshake.

My FrameWork desktop (AMD RYZEN AI MAX+ 395) is running main-n290446-0974ef03b43f and don’t have this "Log cmd failures", but would you like I test this patch anyway ?

Mon, Nov 2, 7:19 AM
kbowling requested review of D61128: tpm: crb: Log cmd failures, correct Pluton mailbox handshake.
Mon, Nov 2, 6:53 AM
kbowling accepted D61084: lacp: fix lacp for interfaces with unknown media.
Mon, Nov 2, 12:36 AM
kbowling requested review of D61109: ice: Apply DCB queue mappings inside normal initialization.
Mon, Nov 2, 12:18 AM

Sat, Oct 31

kbowling added a comment to D61005: e1000: Count packets dropped for want of a receive descriptor.

This is trickier because i210/i211 aren't read1clear. It may be worth considering delta tracking and resetting the value on init here?

Sat, Oct 31, 11:09 PM
kbowling accepted D61004: igc: Count packets dropped for want of a receive descriptor.

This is reasonable. You could also track deltas and reset the counter on hw init to eliminate the read-write hole.

Sat, Oct 31, 10:51 PM
kbowling added a comment to D60416: iflib: Ring transmit doorbells once per receive batch.

Looks good to me shape wise, thanks.

Sat, Oct 31, 10:45 PM
kbowling requested review of D61085: pci_iov: Preallocate SR-IOV status snapshot arrays.
Sat, Oct 31, 10:18 PM
kbowling added a comment to D61084: lacp: fix lacp for interfaces with unknown media.

There are about a dozen other driver issues, do you want me to open reviews with possible fixups?

Sat, Oct 31, 9:24 PM
kbowling accepted D61084: lacp: fix lacp for interfaces with unknown media.

I spot bxe(4) sets if_baudrate to 10 Gb/s even for a 1 Gb/s SFP, qlnx sets it based on PCI ID, oce sets on attach but needs update logic all which should be fixed independently.

Sat, Oct 31, 9:10 PM
kbowling requested review of D61081: 15.2/relnotes: document igb/igbv split.
Sat, Oct 31, 8:00 PM · releng
kbowling added inline comments to D59850: bridgestp: Defer media queries outside the network epoch.
Sat, Oct 31, 2:26 AM
kbowling updated the diff for D59850: bridgestp: Defer media queries outside the network epoch.

Added NET_EPOCH_ASSERT() at entry to bstp_linkstate(). Removed the synchronous wait by moving STP mutex destruction into the bridge’s existing epoch cleanup callback. Draining tasks alone would not cover packet input readers, which can still acquire the mutex before checking whether the port is inactive. The existing callback provides the required grace period.

Sat, Oct 31, 2:25 AM

Fri, Oct 30

kbowling resigned from D52390: e1000: remove unused header file.
Fri, Oct 30, 8:03 PM
kbowling resigned from D49906: lang/go: Provide only one go version.
Fri, Oct 30, 8:03 PM
kbowling accepted D60605: vmm: keep memory decode enabled through MSI-X teardown.
Fri, Oct 30, 8:02 PM · PCI
kbowling accepted D60965: ice: Hash UDP and SCTP across the receive queues.
Fri, Oct 30, 7:54 PM
kbowling added inline comments to D60974: ixl: Hash UDP, SCTP and fragments across the receive queues.
Fri, Oct 30, 7:53 PM
kbowling accepted D61049: ure: Handle SIOCGIFXMEDIA.
Fri, Oct 30, 6:56 PM
kbowling added a comment to D58740: mlx5en: Report SR-IOV VF status.

Is there an estimate time on this validation? I've gotten most of the other drivers implemented.

Fri, Oct 30, 4:14 PM
kbowling updated subscribers of D36508: bxe: Support 2.5G GPON SFPs and correct media reporting.
Fri, Oct 30, 3:29 AM
kbowling updated the diff for D36508: bxe: Support 2.5G GPON SFPs and correct media reporting.

Reworked this and add media status. Can anyone test?

Fri, Oct 30, 3:29 AM
kbowling added a comment to D60795: graphics/drm-*-kmod, graphics/nvidia-drm*-kmod*: fix build after src commit 9820afb99e6f on main branch.

is this still necessary? it seems like the causal commit was reverted

Fri, Oct 30, 3:20 AM

Thu, Oct 29

kbowling requested changes to D60987: mbuf: declare mbuf hash types as distinct types, not flags.

tests/sys/sys/mbuf_test.c still refs M_HASHTYPE_INNER so it needs to be updated or removed

Thu, Oct 29, 11:43 PM
kbowling accepted D60987: mbuf: declare mbuf hash types as distinct types, not flags.

I think I'm fine with this for main if @gallatin and @np agree, the type safety seems worth the churn.

Thu, Oct 29, 11:27 PM
kbowling accepted D60175: iflib: Use a single tx dma map.
Thu, Oct 29, 10:33 PM
kbowling added inline comments to D60987: mbuf: declare mbuf hash types as distinct types, not flags.
Thu, Oct 29, 10:13 PM
kbowling added a comment to D60987: mbuf: declare mbuf hash types as distinct types, not flags.

I'm fine with the general premise aside. This would be tricky to MFC, particularly for external drivers. You can remove the test in this diff, or maybe it could be covered adequately by a handful of static asserts?

Thu, Oct 29, 8:46 PM
kbowling updated subscribers of D60987: mbuf: declare mbuf hash types as distinct types, not flags.

this may go back to flow director stuff way back when.

OPAQUE_HASH is that it's a hash that isn't necessarily RSS but has hash properties. Ie it's not some small numerical space of possible values. I think OPAQUE was used by flow director to be able to direct /very specific flows/ in specific ways, rather than how RSS determines how to distribute traffic based on hash.

Thu, Oct 29, 8:37 PM

Tue, Oct 20

kbowling added a comment to D60416: iflib: Ring transmit doorbells once per receive batch.

This looks cleaner but it still feels grafted on, and my earlier wonder remains: perhaps unnecessarily; doing what @gallatin said with the call or disproving that would be convincing to me that you've reasoned through the existing mechanism and found the minimal implementation.

Tue, Oct 20, 7:40 PM
kbowling accepted D60864: if_media: Add 100BASE-T1 and 1000BASE-T1 media types.
Tue, Oct 20, 5:29 PM
kbowling accepted D60168: ice(4): Do not leave device non-functional if Tx scheduler config fails.
Tue, Oct 20, 5:26 PM

Tue, Oct 13

kbowling accepted D60615: mgb: Build module for all archs.
Tue, Oct 13, 4:34 PM

Mon, Oct 12

kbowling added inline comments to D60671: Remove the i386 kernel and i386-only device drivers.
Mon, Oct 12, 8:40 PM

Sun, Oct 11

kbowling accepted D60602: iflib: unify prefetching & enable for non-x86.

Otherwise (eventually) drop that file and use __builtin_prefetch directly (my preference). The 2lines variant would be dead code after simpletx so it can remain as some short term hack.

My initial stupid test didn't catch the fact that __builtin_prefetch doesn't work on x86 because clang skips prefetch if you compile with -mno-sse. So we need the wrapper.
For now, I just want to get prefetching working on iflib for arm64. I'll try to run some tests on nt0 vs nt1, which we'd want to do before using kern_prefetch

Sun, Oct 11, 12:09 AM

Sat, Oct 10

kbowling added a comment to D60602: iflib: unify prefetching & enable for non-x86.

It looks like rrs added a sys/kern_prefetch.h... I would say use/move the definitions there if you must maintain wrappers (and drop the amd64 case in it).

Sat, Oct 10, 10:52 PM

Fri, Oct 9

kbowling added a comment to D60416: iflib: Ring transmit doorbells once per receive batch.

Could we first evaluate tuning txq_max_db_deferred() and having simpletx honor the existing policy?

Fri, Oct 9, 10:48 PM
kbowling accepted D60448: x11/nvidia-driver-devel, x11/nvidia-kmod-devel, x11/linux-nvidia-libs-devel, graphics/nvidia-drm*-kmod-devel: Update to 615.78.08.
Fri, Oct 9, 8:58 PM
kbowling accepted D60289: graphics/nvidia-drm-kmod: drop conditional possibly applies nonexistent patch after commit ports 3bcc752b87a2.
Fri, Oct 9, 8:57 PM

Oct 5 2026

kbowling accepted D60376: e1000: Fix the flow control sysctl.
Oct 5 2026, 7:42 PM
kbowling accepted D60371: iflib: Make the deferral test in iflib_txd_db_check() an early return.
Oct 5 2026, 6:49 PM
kbowling added a comment to D60363: igc: Fix the flow control sysctl.

It seems like e1000 has the same prior code (igc is generally copied from it)

Oct 5 2026, 6:45 PM
kbowling added a comment to D60290: iflib: Do not ring the transmit doorbell when nothing is pending.

I'm about to leave on a business trip so I can't give a proper affirmative review, but one thing jumps out without digging into anything.. the multi-line comment and another control flow make it somewhat unpleasing to me. I would investigate a couple ways of writing this, either build the ring decision up with single statement ifs (and line comments as needed), or use de morgans to move true or false around so there are early exits and only one ring decision (perhaps de-indented.. whatever ends up feeling clean after playing with it.

Oct 5 2026, 10:53 AM

Oct 4 2026

kbowling accepted D60284: igc: make the hardware RSS hash agree with the stack's configuration.

Looks good to me. There are probably similar elsewhere in the tree.

Oct 4 2026, 2:26 AM
kbowling added a comment to D60284: igc: make the hardware RSS hash agree with the stack's configuration.

I thought the idea of d9c55b2e8cd6b79f6926278e10a79f1bcca27a4b was to get rid of most of the ifdef. rss_gethashconfig is a public function, why not just apply what you have in the ifdef RSS section always?

Oct 4 2026, 12:54 AM

Sep 30 2026

kbowling added inline comments to D60168: ice(4): Do not leave device non-functional if Tx scheduler config fails.
Sep 30 2026, 6:56 PM

Sep 29 2026

kbowling accepted D59925: x11/nvidia-driver, x11/nvidia-kmod, x11/linux-nvidia-libs, graphics/nvidia-drm*-kmod, x11nvidia-settings, x11/nvidia-xconfig: Update to 595.104.02.
Sep 29 2026, 5:05 PM
kbowling added inline comments to D58741: cxgbe: Report SR-IOV VF status.
Sep 29 2026, 6:53 AM

Sep 26 2026

kbowling updated the diff for D59657: tpm: Validate firmware interrupt routes and fall back cleanly.
Sep 26 2026, 11:17 PM
kbowling accepted D60050: tpm: Do not use timed tsleep() while polling during cold boot.

This is sufficient as a fix.

Sep 26 2026, 11:16 PM
kbowling updated the diff for D59653: tpm: Validate TIS 1.2 IRQs and quiesce delivery before teardown.
Sep 26 2026, 11:15 PM

Sep 25 2026

kbowling added a comment to D59578: ice(4): Fix link bringup on driver load.

Are you waiting for internal validation? I don't like keeping head in a known broken state this long if their findings can be posted as a followup.

Sep 25 2026, 9:36 PM
kbowling requested review of D60006: iflib: Allow drivers to veto unsafe hardware detach.
Sep 25 2026, 6:20 AM
kbowling updated the diff for D59141: loader.efi: Measure boot policy and loaded contents with a TPM.

Rebase, use vendored TcgService.h, move new code to libefi

Sep 25 2026, 5:27 AM

Sep 22 2026

kbowling added inline comments to D59141: loader.efi: Measure boot policy and loaded contents with a TPM.
Sep 22 2026, 9:10 PM
kbowling added a comment to D59786: tpm: crb: Improve ACPI control and buffer addresses.

@olivier can you make sure I didn't break Pluton boot

Sep 22 2026, 4:57 AM

Sep 21 2026

kbowling accepted D59864: Drop pkg-message from x11/nvidia-driver* ports.
Sep 21 2026, 10:21 PM

Sep 20 2026

kbowling requested review of D59853: aq: Report partial initialization failures to iflib.
Sep 20 2026, 12:42 AM
kbowling requested review of D59852: aq: Invalidate the descriptor cache after stopping all rings.
Sep 20 2026, 12:41 AM
kbowling requested review of D59851: ice: Restart disabled VF Tx queues from saved configuration.
Sep 20 2026, 12:35 AM
kbowling requested review of D59850: bridgestp: Defer media queries outside the network epoch.
Sep 20 2026, 12:28 AM

Sep 19 2026

kbowling added a comment to D59477: pci: Verify bus-master enable and disable readback.
In D59477#1371334, @kib wrote:

I am curious what, in your opinion, drivers should do if they get an error from PCI config space access? We tried to disable the busmaster (or any other enable bit in the config register, see below) and it failed, then what?

Sep 19 2026, 12:27 AM

Sep 18 2026

kbowling added a comment to D59725: devfs: Fix FLASTCLOSE handling.

This now handles the close-first ordering, but the open-first ordering from my example still appears possible. Once an opener passes the SI_LASTCLOSE check, nothing records its presence until after d_open returns and the vnode lock is reacquired. A last close can still run in that interval. We need protection in both directions checking SI_LASTCLOSE only before d_open does not establish mutual exclusion.

Sep 18 2026, 10:07 PM
kbowling added a comment to D59725: devfs: Fix FLASTCLOSE handling.

It fixes the failed open race (from the mentioned issue) but I was able to trigger the following with an LLM mock:

Sep 18 2026, 12:43 PM
kbowling requested review of D59812: tpm: Tie exclusive-open cleanup to the file lifetime.
Sep 18 2026, 12:25 PM
kbowling updated the diff for D59657: tpm: Validate firmware interrupt routes and fall back cleanly.

Drop D_TRACKCLOSE

Sep 18 2026, 12:18 PM
kbowling abandoned D59335: ice: Re-enable link after reset when link-on-down is disabled.

Should be fixed by updated D59578

Sep 18 2026, 11:44 AM
kbowling accepted D59578: ice(4): Fix link bringup on driver load.
Sep 18 2026, 11:31 AM
kbowling added a comment to D59692: ixv: Report the programmed VF RSS configuration.

Why is this needed? All NICs should be using the same rss key these days and that's available via the sysctls in sys/net/rss_config.c

Sep 18 2026, 11:08 AM
kbowling requested review of D59810: qlnx: Report the programmed RSS key and hash types.
Sep 18 2026, 11:06 AM
kbowling requested review of D59809: bnxt: Report the programmed RSS key and hash types.
Sep 18 2026, 10:51 AM
kbowling requested review of D59808: iavf: Report the programmed VF RSS configuration.
Sep 18 2026, 10:39 AM
kbowling requested review of D59807: mlx5en: Report the configured RSS tuple selections.
Sep 18 2026, 10:37 AM
kbowling retitled D59691: iflib: Add optional RSS configuration queries from 1743ca1cfbe481e4c088d357709e16ae2bcb41fa
Sep 18 2026, 9:38 AM
kbowling added a comment to D59691: iflib: Add optional RSS configuration queries.

@erj thanks that is cleaner

Sep 18 2026, 9:33 AM
kbowling retitled D59691: iflib: Add optional RSS configuration queries from iflib: Forward optional RSS configuration queries to drivers to 1743ca1cfbe481e4c088d357709e16ae2bcb41fa.
Sep 18 2026, 9:27 AM
kbowling updated the diff for D59691: iflib: Add optional RSS configuration queries.
Sep 18 2026, 9:26 AM
kbowling updated the diff for D59806: vnic nicvf: Program the common RSS key in network word order.
Sep 18 2026, 9:25 AM
kbowling updated the diff for D59805: enetc: Use the common RSS key.
Sep 18 2026, 9:24 AM
kbowling updated the diff for D59804: al_eth: Use the common RSS key.
Sep 18 2026, 9:24 AM
kbowling updated the diff for D59803: qlxgb: Derive the firmware RSS key from the common key.
Sep 18 2026, 9:23 AM
kbowling updated the diff for D59802: qlxge: Derive both RSS keys from the common key.
Sep 18 2026, 9:23 AM
kbowling updated the diff for D59801: qlxgbe: Derive the mailbox RSS key from the common key.
Sep 18 2026, 9:22 AM
kbowling updated the diff for D59800: qlnx: Derive the hardware RSS key from the common key.
Sep 18 2026, 9:21 AM