Page MenuHomeFreeBSD

kbowling (Kevin Bowling)
Logistics

Projects

User Details

User Since
Jun 6 2015, 10:46 PM (592 w, 4 d)

Recent Activity

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

Mon, Oct 5

kbowling accepted D60376: e1000: Fix the flow control sysctl.
Mon, Oct 5, 7:42 PM
kbowling accepted D60371: iflib: Make the deferral test in iflib_txd_db_check() an early return.
Mon, Oct 5, 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)

Mon, Oct 5, 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.

Mon, Oct 5, 10:53 AM

Sun, Oct 4

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.

Sun, Oct 4, 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?

Sun, Oct 4, 12:54 AM

Wed, Sep 30

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

Tue, Sep 29

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.
Tue, Sep 29, 5:05 PM
kbowling added inline comments to D58741: cxgbe: Report SR-IOV VF status.
Tue, Sep 29, 6:53 AM

Sat, Sep 26

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

This is sufficient as a fix.

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

Fri, Sep 25

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.

Fri, Sep 25, 9:36 PM
kbowling requested review of D60006: iflib: Allow drivers to veto unsafe hardware detach.
Fri, Sep 25, 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

Fri, Sep 25, 5:27 AM

Tue, Sep 22

kbowling added inline comments to D59141: loader.efi: Measure boot policy and loaded contents with a TPM.
Tue, Sep 22, 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

Tue, Sep 22, 4:57 AM

Mon, Sep 21

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

Sun, Sep 20

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

Sat, Sep 19

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?

Sat, Sep 19, 12:27 AM

Fri, Sep 18

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.

Fri, Sep 18, 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:

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

Drop D_TRACKCLOSE

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

Should be fixed by updated D59578

Fri, Sep 18, 11:44 AM
kbowling accepted D59578: ice(4): Fix link bringup on driver load.
Fri, Sep 18, 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

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

@erj thanks that is cleaner

Fri, Sep 18, 9:33 AM
kbowling retitled D59691: iflib: Add optional RSS configuration queries from iflib: Forward optional RSS configuration queries to drivers to 1743ca1cfbe481e4c088d357709e16ae2bcb41fa.
Fri, Sep 18, 9:27 AM
kbowling updated the diff for D59691: iflib: Add optional RSS configuration queries.
Fri, Sep 18, 9:26 AM
kbowling updated the diff for D59806: vnic nicvf: Program the common RSS key in network word order.
Fri, Sep 18, 9:25 AM
kbowling updated the diff for D59805: enetc: Use the common RSS key.
Fri, Sep 18, 9:24 AM
kbowling updated the diff for D59804: al_eth: Use the common RSS key.
Fri, Sep 18, 9:24 AM
kbowling updated the diff for D59803: qlxgb: Derive the firmware RSS key from the common key.
Fri, Sep 18, 9:23 AM
kbowling updated the diff for D59802: qlxge: Derive both RSS keys from the common key.
Fri, Sep 18, 9:23 AM
kbowling updated the diff for D59801: qlxgbe: Derive the mailbox RSS key from the common key.
Fri, Sep 18, 9:22 AM
kbowling updated the diff for D59800: qlnx: Derive the hardware RSS key from the common key.
Fri, Sep 18, 9:21 AM
kbowling updated the diff for D59799: mana: Initialize ports with the common RSS key.
Fri, Sep 18, 9:21 AM
kbowling updated the diff for D59798: mlx4en: Use the common RSS key for programming and queries.
Fri, Sep 18, 9:21 AM
kbowling updated the diff for D59797: oce: Use the common RSS key.
Fri, Sep 18, 9:20 AM
kbowling updated the diff for D59796: bxe: Program the common RSS key in searcher byte order.
Fri, Sep 18, 9:20 AM
kbowling updated the diff for D59795: bnxt: Initialize RSS with the common key.
Fri, Sep 18, 9:19 AM
kbowling updated the diff for D59794: axgbe: Use the common RSS key without options RSS.
Fri, Sep 18, 9:19 AM
kbowling updated the diff for D59793: aq: Use the common RSS key without options RSS.
Fri, Sep 18, 9:18 AM
kbowling updated the diff for D59792: e1000: Use the common RSS key for 82574.
Fri, Sep 18, 9:18 AM
kbowling updated the diff for D59692: ixv: Report the programmed VF RSS configuration.
Fri, Sep 18, 9:16 AM
kbowling requested review of D59806: vnic nicvf: Program the common RSS key in network word order.
Fri, Sep 18, 9:00 AM
kbowling requested review of D59805: enetc: Use the common RSS key.
Fri, Sep 18, 8:59 AM
kbowling requested review of D59804: al_eth: Use the common RSS key.
Fri, Sep 18, 8:58 AM
kbowling requested review of D59803: qlxgb: Derive the firmware RSS key from the common key.
Fri, Sep 18, 8:57 AM
kbowling requested review of D59802: qlxge: Derive both RSS keys from the common key.
Fri, Sep 18, 8:46 AM
kbowling requested review of D59801: qlxgbe: Derive the mailbox RSS key from the common key.
Fri, Sep 18, 8:45 AM
kbowling requested review of D59800: qlnx: Derive the hardware RSS key from the common key.
Fri, Sep 18, 8:44 AM
kbowling requested review of D59799: mana: Initialize ports with the common RSS key.
Fri, Sep 18, 8:43 AM
kbowling requested review of D59798: mlx4en: Use the common RSS key for programming and queries.
Fri, Sep 18, 8:42 AM
kbowling requested review of D59797: oce: Use the common RSS key.
Fri, Sep 18, 8:39 AM
kbowling requested review of D59796: bxe: Program the common RSS key in searcher byte order.
Fri, Sep 18, 8:38 AM
kbowling requested review of D59795: bnxt: Initialize RSS with the common key.
Fri, Sep 18, 8:36 AM
kbowling requested review of D59794: axgbe: Use the common RSS key without options RSS.
Fri, Sep 18, 8:35 AM
kbowling requested review of D59793: aq: Use the common RSS key without options RSS.
Fri, Sep 18, 8:34 AM
kbowling requested review of D59792: e1000: Use the common RSS key for 82574.
Fri, Sep 18, 8:33 AM
kbowling requested review of D59791: ixl: Initialize the extended RSS key.
Fri, Sep 18, 8:31 AM
kbowling requested review of D59790: iavf: Use the common RSS key without options RSS.
Fri, Sep 18, 8:12 AM
kbowling requested review of D59789: ixgbe: Use the common RSS key without options RSS.
Fri, Sep 18, 8:09 AM
kbowling updated the diff for D59786: tpm: crb: Improve ACPI control and buffer addresses.

I copied the existing pattern, but instead let's invert this and use bus_space_read_8 everywhere except i386 (for MFC).

Fri, Sep 18, 7:30 AM
kbowling requested review of D59786: tpm: crb: Improve ACPI control and buffer addresses.
Fri, Sep 18, 7:05 AM
kbowling abandoned D59028: ice: Isolate VFs after malicious-driver detection.

Committed as 923b9a80c21f not sure why it didn't auto close

Fri, Sep 18, 1:56 AM

Thu, Sep 17

kbowling added a comment to D58909: ice: Make VF VLAN requests idempotent.

The commit above was supposed to be D58906, sorry for the mixup.

Thu, Sep 17, 8:32 AM
kbowling abandoned D58906: ice: Make VF queue transitions idempotent.

Comitted in a8c60dd5eb8f158c9488db5aa92aafd38d756348

Thu, Sep 17, 8:13 AM
kbowling added a comment to D59477: pci: Verify bus-master enable and disable readback.
In D59477#1368263, @kib wrote:
In D59477#1367653, @kib wrote:

What is the purpose of the function? Why it is useful to drain the non-posted transactions? After clearing the bus-master enable bit, how does it make a difference?

The idea was to use this to help build fallback DMA fences in drivers for partial init or failed shutdown. There are some issues in hardware (aquantia - see Linux 7a1bb49461b1, VFs) where I want to fence off DMA, they'd still require device specific cleanup/reset and internal handling a BME fence until safe recovery.

I do not see any relation of the referenced commit to the function you propose, really.

Thu, Sep 17, 1:55 AM
kbowling updated the diff for D59477: pci: Verify bus-master enable and disable readback.
Thu, Sep 17, 1:40 AM
kbowling added inline comments to D58741: cxgbe: Report SR-IOV VF status.
Thu, Sep 17, 1:11 AM
kbowling updated the diff for D58741: cxgbe: Report SR-IOV VF status.

Address review feedback

Thu, Sep 17, 1:10 AM

Wed, Sep 16

kbowling accepted D59729: iflib: add a new global tunable "prefer_mpring".
Wed, Sep 16, 4:18 PM
kbowling added a comment to D58742: qlnx: Report SR-IOV VF status.

@kbowling I have the hardware ( QLogic FastLinQ QL41000 ) which is supported by this driver. Do you want me to test with this new feature ?

Wed, Sep 16, 3:10 PM

Sep 15 2026

kbowling accepted D59712: iflib: implement driver-provided queue selection for simple tx.

I must've not been paying attention back when these were added so I don't know the intent behind selecting between them or if we should still have two but that has no bearing on simpletx or the improvement here.

Sep 15 2026, 9:43 PM
kbowling abandoned D59473: ixv: Add Hyper-V virtual function support.

Committed as 9ea7beb173b8b5c77663ee0f86b32cc76f20357f

Sep 15 2026, 3:29 AM
kbowling requested review of D59692: ixv: Report the programmed VF RSS configuration.
Sep 15 2026, 3:03 AM
kbowling requested review of D59691: iflib: Add optional RSS configuration queries.
Sep 15 2026, 3:02 AM
kbowling requested review of D59690: iflib: Clear simple-TX quiescence before publishing admission.
Sep 15 2026, 2:56 AM
kbowling updated the diff for D59598: iflib: Separate software admission from legacy driver flags.

rebase on main

Sep 15 2026, 2:52 AM
kbowling updated the diff for D59597: iflib: Use private lifecycle state for control work.

rebase on main

Sep 15 2026, 2:51 AM

Sep 14 2026

kbowling accepted D58901: iflib: Use a bounded buf_ring for simple_tx.

Looks fine. I will fix the IFF_DRV/QUIESCING feedback when I rebase D59597 / D59598

Sep 14 2026, 5:50 PM
kbowling added a comment to D59661: tpm: crb: check the error bit only after taking locality.

Please set MFC to 2 weeks when you commit as I intend to pull the GENERIC change back to stable/15 in about a month barring major issues

Sep 14 2026, 1:01 PM
kbowling accepted D59661: tpm: crb: check the error bit only after taking locality.

Seems to match spec as well, CRB control registers are allowed to return 00h or FFh if locality is not owned (https://trustedcomputinggroup.org/wp-content/uploads/PC-Client-Specific-Platform-TPM-Profile-for-TPM-2p0-v1p07_Pub.pdf Table 51)

Sep 14 2026, 12:59 PM