Page MenuHomeFreeBSD

bnovkov (Bojan Novković)
User

Projects

User Details

User Since
Jan 29 2022, 5:50 PM (240 w, 5 d)

Recent Activity

Yesterday

bnovkov accepted D59570: raw ip: clear sin_port on bind(2).
Thu, Sep 10, 2:50 PM
bnovkov added a comment to D59108: bhyvectl: support querying VM pid.

Looks good now, thanks! I only have one minor inline comment.

Thu, Sep 10, 8:39 AM

Wed, Sep 9

bnovkov accepted D59048: riscv, pmap: extend the set of TLB management functions.
Wed, Sep 9, 1:47 PM
bnovkov added inline comments to D59478: CPU temperature sensor for jh7110.
Wed, Sep 9, 1:43 PM · riscv
bnovkov added inline comments to D59108: bhyvectl: support querying VM pid.
Wed, Sep 9, 1:35 PM
bnovkov accepted D59049: riscv: mark kernel page table entries as global.

Thanks, LGTM now. I won't be able to test the patch series on a non- SiFive FU74 board until EuroBSDCon finishes, I'll let you know if anything comes up during testing.

Wed, Sep 9, 11:39 AM
bnovkov added inline comments to D59048: riscv, pmap: extend the set of TLB management functions.
Wed, Sep 9, 11:33 AM
bnovkov added a member for riscv: bnovkov.
Wed, Sep 9, 8:16 AM

Mon, Aug 31

bnovkov added inline comments to D59049: riscv: mark kernel page table entries as global.
Mon, Aug 31, 8:04 PM
bnovkov accepted D59050: sifive: handle sfence.vma errata.
Mon, Aug 31, 7:38 PM
bnovkov added inline comments to D59048: riscv, pmap: extend the set of TLB management functions.
Mon, Aug 31, 7:30 PM
bnovkov added inline comments to D59108: bhyvectl: support querying VM pid.
Mon, Aug 31, 7:12 PM

Fri, Aug 28

bnovkov committed rGbf05236727cf: pf: Send syncookies from the receiving thread (authored by bnovkov).
pf: Send syncookies from the receiving thread
Fri, Aug 28, 1:58 PM
bnovkov closed D59068: pf: Send syncookies from the receiving thread.
Fri, Aug 28, 1:58 PM
bnovkov updated the diff for D58822: db/hash: Harden hash(3) database code.

Propagate error from bounds checking instead of aborting

Fri, Aug 28, 10:13 AM

Thu, Aug 27

bnovkov added a comment to D59068: pf: Send syncookies from the receiving thread.
In D59068#1356482, @kp wrote:

I'm also struggling to make sense of the baseline flame graph. It seems to be spending a lot of time removing interfaces (5% of samples in pf_kkif_free()!) and I don't see any calls to pf_test(), which we should see if we were handling traffic.
Maybe the address decoding went wrong, because those stacks just look wrong.

Hm, that's odd. I'll try to find out what went wrong.

Thu, Aug 27, 2:38 PM
bnovkov attached a referenced file: F168316492: patched.svg.
Thu, Aug 27, 2:36 PM
bnovkov attached a referenced file: F168316493: baseline.svg.
Thu, Aug 27, 2:36 PM
bnovkov updated the test plan for D59068: pf: Send syncookies from the receiving thread.
Thu, Aug 27, 2:36 PM

Tue, Aug 25

bnovkov added a comment to D59068: pf: Send syncookies from the receiving thread.
In D59068#1356482, @kp wrote:

I'm also struggling to make sense of the baseline flame graph. It seems to be spending a lot of time removing interfaces (5% of samples in pf_kkif_free()!) and I don't see any calls to pf_test(), which we should see if we were handling traffic.
Maybe the address decoding went wrong, because those stacks just look wrong.

Tue, Aug 25, 12:44 PM
bnovkov added inline comments to D59068: pf: Send syncookies from the receiving thread.
Tue, Aug 25, 12:37 PM
bnovkov updated the diff for D59068: pf: Send syncookies from the receiving thread.

Address @kp 's comments

Tue, Aug 25, 12:36 PM

Sun, Aug 23

bnovkov accepted D58893: bhyve: Refactor initial PCI BAR setup.
Sun, Aug 23, 1:07 PM
bnovkov requested review of D59123: bhyve: Add an option to prevent automatic restart in monitor mode.
Sun, Aug 23, 1:04 PM
bnovkov added a comment to D59108: bhyvectl: support querying VM pid.

This is a good feature, but I don't think that this is the correct approach design-wise. Adding an ioctl handler to just to fetch a VM's PID is overkill IMO, new ioctl commands should only be added when there's no other way to obtain the needed information (e.g., fetching memsegs and other metadata that is stored in the vmm module).

Sun, Aug 23, 12:16 PM
bnovkov committed rGf49f33ef8c53: bhyvectl: Generalize bhyve IPC code (authored by bnovkov).
bhyvectl: Generalize bhyve IPC code
Sun, Aug 23, 12:04 PM
bnovkov committed rG04811d46d3f2: bhyve: Generalize the IPC thread (authored by bnovkov).
bhyve: Generalize the IPC thread
Sun, Aug 23, 12:04 PM
bnovkov closed D54652: bhyvectl: Generalize bhyve IPC code.
Sun, Aug 23, 12:04 PM
bnovkov closed D54650: bhyve: Generalize the IPC thread.
Sun, Aug 23, 12:03 PM

Fri, Aug 21

bnovkov accepted D59082: bhyve: Do not panic on invalid input in HDA emulation.
Fri, Aug 21, 4:20 PM
bnovkov added inline comments to D59082: bhyve: Do not panic on invalid input in HDA emulation.
Fri, Aug 21, 3:42 PM
bnovkov accepted D59083: sdhci: Remove redundant device_get_softc.
Fri, Aug 21, 3:14 PM
bnovkov added inline comments to D58893: bhyve: Refactor initial PCI BAR setup.
Fri, Aug 21, 1:51 PM
bnovkov added a comment to D54641: bhyve/pci_emul: Use vmem to track BAR allocations.
In D54641#1353031, @jhb wrote:
In D54641#1344263, @jhb wrote:

When a new PCI device shows up in hotplug both for native PCI-e hotplug and other systems like the ACPI approach you are using, the new device just shows up with all decoding disabled and the BARs set to their reset values (address of 0). It is the guest OS's job to allocate address space for the BARs and manage the address space.

Thank you, this clears up a lot and I think I'll be able to simplify the whole patch series greatly since we can completely ditch vmem.
Before I start purging the vmem-related parts from this patch stack, do you think that there's a future use for this application of vmem that would justify keeping it?

Probably not TBH as this is just a one-time allocation vs an address space that needs updating.

Fri, Aug 21, 1:47 PM
bnovkov accepted D58894: bhyve: Tidy lobits handling in pci_passthru.
Fri, Aug 21, 1:39 PM
bnovkov added a comment to D59068: pf: Send syncookies from the receiving thread.

Can you check or host the results somewhere else? Maybe freefall?

Fri, Aug 21, 12:42 PM
bnovkov attached a referenced file: F167389277: patch.svg.
Fri, Aug 21, 12:39 PM
bnovkov attached a referenced file: F167389276: baseline.svg.
Fri, Aug 21, 12:39 PM
bnovkov updated the test plan for D59068: pf: Send syncookies from the receiving thread.
Fri, Aug 21, 12:24 PM
bnovkov requested review of D59068: pf: Send syncookies from the receiving thread.
Fri, Aug 21, 12:21 PM

Thu, Aug 20

bnovkov accepted D59047: riscv: eliminate duplicate load in pmap_growkernel().
Thu, Aug 20, 4:30 PM

Sun, Aug 16

bnovkov committed rG550db3d6f502: sdhci: Initial support for the SpacemiT K1 sdhci controller (authored by bnovkov).
sdhci: Initial support for the SpacemiT K1 sdhci controller
Sun, Aug 16, 5:18 PM
bnovkov committed rG9b3415e9ec55: sys/dts: Add SD card overlays for the BananaPi-F3 SoC (authored by bnovkov).
sys/dts: Add SD card overlays for the BananaPi-F3 SoC
Sun, Aug 16, 5:18 PM
bnovkov committed rGdcb10e3add17: clk: Initial support for the SpacemiT K1 clock control units (authored by bnovkov).
clk: Initial support for the SpacemiT K1 clock control units
Sun, Aug 16, 5:18 PM
bnovkov committed rG28f3123ec720: riscv: Add spacemit SoC files to the build (authored by bnovkov).
riscv: Add spacemit SoC files to the build
Sun, Aug 16, 5:18 PM
bnovkov closed D57178: sdhci: Initial support for the SpacemiT K1 sdhci controller.
Sun, Aug 16, 5:18 PM
bnovkov closed D57177: sys/dts: Add SD card overlays for the BananaPi-F3 SoC.
Sun, Aug 16, 5:17 PM
bnovkov closed D57176: clk: Initial support for the SpacemiT K1 clock control units.
Sun, Aug 16, 5:17 PM
bnovkov closed D57175: riscv: Add spacemit SoC files to the build.
Sun, Aug 16, 5:17 PM

Fri, Aug 14

bnovkov added inline comments to D58822: db/hash: Harden hash(3) database code.
Fri, Aug 14, 8:46 AM
bnovkov updated the diff for D58822: db/hash: Harden hash(3) database code.

Address @kevans 's comment

Fri, Aug 14, 8:45 AM

Thu, Aug 13

bnovkov added a reviewer for D58812: arm64: mediatek: add initial MT7622/Banana Pi R64 support (revised): mmel.
Thu, Aug 13, 11:28 AM · arm64
bnovkov added inline comments to D58812: arm64: mediatek: add initial MT7622/Banana Pi R64 support (revised).
Thu, Aug 13, 11:27 AM · arm64
bnovkov requested review of D58822: db/hash: Harden hash(3) database code.
Thu, Aug 13, 11:12 AM

Aug 11 2026

bnovkov added inline comments to D57176: clk: Initial support for the SpacemiT K1 clock control units.
Aug 11 2026, 7:25 PM
bnovkov updated the diff for D57176: clk: Initial support for the SpacemiT K1 clock control units.

Address @mmel 's comments

Aug 11 2026, 7:18 PM
bnovkov added a comment to D58788: bhyve: monitor: forward SIGTERM to the VM process.

Thanks, I've run into this problem too.

Rather than forwarding signals, why not have a pipe shared between the two processes? The child process can use it to detect when the parent goes away, and exit automatically. That should be simpler and will work for all cases where the parent exits (assertion failure, SIGKILL, etc.).

Aug 11 2026, 7:03 PM

Aug 10 2026

bnovkov added inline comments to D58562: amd64: Implement per-thread kernel stack canaries.
Aug 10 2026, 4:31 PM
bnovkov updated the diff for D58562: amd64: Implement per-thread kernel stack canaries.

Address @markj 's and @kib 's comments

Aug 10 2026, 4:26 PM
bnovkov committed rG429e2c587b3a: bhyve: Fix some leaks in usr.sbin/bhyve/block_if.c (authored by slw_zxy.spb.ru).
bhyve: Fix some leaks in usr.sbin/bhyve/block_if.c
Aug 10 2026, 4:10 PM
bnovkov committed rG75d74cc26f55: cat: Fix a NULL pointer dereference (authored by thebugfixers_pm.me).
cat: Fix a NULL pointer dereference
Aug 10 2026, 4:09 PM
bnovkov committed rGa8c598de78fd: mpool/mpool_get.c: Avoid clobbering 'errno' when handling 'pread' errors (authored by bnovkov).
mpool/mpool_get.c: Avoid clobbering 'errno' when handling 'pread' errors
Aug 10 2026, 4:09 PM
bnovkov committed rG803887970ab6: libc/db: Remove unused hash functions in hash_func.c (authored by bnovkov).
libc/db: Remove unused hash functions in hash_func.c
Aug 10 2026, 4:09 PM
bnovkov committed rGbb68e4ac1250: bhyve: Document vCPU range pinning (authored by bnovkov).
bhyve: Document vCPU range pinning
Aug 10 2026, 4:09 PM
bnovkov committed rGf760059545b1: bhyve(8): allow cpu pinning using N-M:X-Y ranges (authored by antranigv_freebsd.am).
bhyve(8): allow cpu pinning using N-M:X-Y ranges
Aug 10 2026, 4:09 PM
bnovkov committed rGe5d63cec57a5: uart: Add support for the Intel XScale controller (authored by bnovkov).
uart: Add support for the Intel XScale controller
Aug 10 2026, 4:08 PM
bnovkov added a comment to D57624: riscv/pmap.c: Add an Svinval-aware variant of pmap_invalidate_range.

Did you microbenchmark the new implementation? I'd be curious to know, say, how many cycles it takes to execute 10000 back-to-back 4KB page invalidations using the old and new implementations respectively, when the target CPU mask is just the current CPU and when it's the set of all CPUs.

Aug 10 2026, 4:02 PM
bnovkov committed rG4d2f90f5a694: riscv: Add support for the Svinval extension (authored by bnovkov).
riscv: Add support for the Svinval extension
Aug 10 2026, 4:02 PM
bnovkov committed rG99360212c739: riscv/pmap.c: Add an Svinval-aware variant of pmap_invalidate_range (authored by bnovkov).
riscv/pmap.c: Add an Svinval-aware variant of pmap_invalidate_range
Aug 10 2026, 4:02 PM
bnovkov closed D57624: riscv/pmap.c: Add an Svinval-aware variant of pmap_invalidate_range.
Aug 10 2026, 4:02 PM
bnovkov closed D57623: riscv: Add support for the Svinval extension.
Aug 10 2026, 4:02 PM

Aug 6 2026

bnovkov committed rG7f1009d61c3e: net/if.c: Add fib-aware ifa_ifwithaddr() (authored by pouria).
net/if.c: Add fib-aware ifa_ifwithaddr()
Aug 6 2026, 4:20 PM
bnovkov committed rG978b9026b018: bind(2): Lookup local address in current FIB if '*.bind_all_fibs' is active (authored by bnovkov).
bind(2): Lookup local address in current FIB if '*.bind_all_fibs' is active
Aug 6 2026, 3:26 PM

Aug 2 2026

bnovkov added a comment to D54641: bhyve/pci_emul: Use vmem to track BAR allocations.
In D54641#1344263, @jhb wrote:

When a new PCI device shows up in hotplug both for native PCI-e hotplug and other systems like the ACPI approach you are using, the new device just shows up with all decoding disabled and the BARs set to their reset values (address of 0). It is the guest OS's job to allocate address space for the BARs and manage the address space.

Aug 2 2026, 12:18 PM

Aug 1 2026

bnovkov accepted D58579: bhyve: Return void from pci_emul_alloc_bar.
Aug 1 2026, 12:05 PM

Jul 31 2026

bnovkov accepted D58399: bhyve: document missing options in bhyve_config(5).

LGTM, but I'd wait for at least one member of manpages to take a look.

Jul 31 2026, 3:07 PM

Jul 30 2026

bnovkov updated the summary of D58562: amd64: Implement per-thread kernel stack canaries.
Jul 30 2026, 7:48 PM
bnovkov updated the test plan for D58562: amd64: Implement per-thread kernel stack canaries.
Jul 30 2026, 7:46 PM
bnovkov requested review of D58562: amd64: Implement per-thread kernel stack canaries.
Jul 30 2026, 7:46 PM

Jul 27 2026

bnovkov added a comment to D57741: NULL pointer dereference in cat.

Anyway, coming quickly back to your actual question I guess I must have thought at the time that touching cat might also eventually land me unwelcome attention for daring to touch a long-standing binary if they came looking for me on other diffs, so it was quite possibly a pre-emptive abandoning.

Jul 27 2026, 3:00 PM

Jul 22 2026

bnovkov committed rG948ad32ae1e0: bind(2): Lookup local address in current FIB if '*.bind_all_fibs' is active (authored by bnovkov).
bind(2): Lookup local address in current FIB if '*.bind_all_fibs' is active
Jul 22 2026, 11:50 AM
bnovkov closed D58281: bind(2): Lookup local address in current FIB if '*.bind_all_fibs' is active.
Jul 22 2026, 11:50 AM

Jul 21 2026

bnovkov committed rG9724f3f89749: cat: Fix a NULL pointer dereference (authored by thebugfixers_pm.me).
cat: Fix a NULL pointer dereference
Jul 21 2026, 7:53 PM
bnovkov added a comment to D45724: virtio_gpu: Avoid panic if a 0x0 mode is provided.

@emaste are there any other blockers here other than your comment? The fix is quite straightforward and I see no reason not to land this.

Jul 21 2026, 5:35 PM
bnovkov added a comment to D57741: NULL pointer dereference in cat.

Why was this review closed? The issue wasn't resolved in the meantime and I see no reason not to land this.

Jul 21 2026, 5:26 PM
bnovkov updated the diff for D58281: bind(2): Lookup local address in current FIB if '*.bind_all_fibs' is active.

Address @glebius 's comments

Jul 21 2026, 2:18 PM

Jul 20 2026

bnovkov accepted D58357: nvme: Explicitly cast caddr_t values.
Jul 20 2026, 9:54 PM
bnovkov accepted D58305: net/if.c: Add fib-aware ifa_ifwithaddr().

@bnovkov Should I wait for you to test, or are we good to land this?

Jul 20 2026, 9:13 AM
bnovkov updated the diff for D58281: bind(2): Lookup local address in current FIB if '*.bind_all_fibs' is active.

Address @glebius 's comments

Jul 20 2026, 9:11 AM

Jul 19 2026

bnovkov added inline comments to D57176: clk: Initial support for the SpacemiT K1 clock control units.
Jul 19 2026, 4:24 PM
bnovkov updated the diff for D57176: clk: Initial support for the SpacemiT K1 clock control units.

Add missing const qualifiers

Jul 19 2026, 4:23 PM
bnovkov updated the diff for D57176: clk: Initial support for the SpacemiT K1 clock control units.

Address @mmel 's and @mhorne 's comments.

Jul 19 2026, 4:11 PM

Jul 17 2026

bnovkov abandoned D58306: rtw89/core.c: Avoid re-queueing if 'ieee80211_start_tx_ba_session' fails with a non-recoverable error.
In D58306#1337245, @bz wrote:

Please see the wireless mailing list where I sent a patch for test and did not get feedback. Changing the driver is the wrong thing to do (not that it works well currently).

https://lists.freebsd.org/archives/freebsd-wireless/2026-July/004328.html

Jul 17 2026, 8:51 PM
bnovkov updated the diff for D58306: rtw89/core.c: Avoid re-queueing if 'ieee80211_start_tx_ba_session' fails with a non-recoverable error.

Account for EINPROGRESS

Jul 17 2026, 4:40 PM
bnovkov requested review of D58306: rtw89/core.c: Avoid re-queueing if 'ieee80211_start_tx_ba_session' fails with a non-recoverable error.
Jul 17 2026, 4:38 PM
bnovkov added inline comments to D58305: net/if.c: Add fib-aware ifa_ifwithaddr().
Jul 17 2026, 4:31 PM
bnovkov planned changes to D58281: bind(2): Lookup local address in current FIB if '*.bind_all_fibs' is active.

Thank you for the offer, but I was trying to avoid unnecessary churn if the same thing can be achieved with ifa_ifwithnet. If you have future uses for a fib-aware version of ifa_ifwithaddr() I can implement it as well.

There will be less churn if you use standard KPI in the right place instead of current version. Pouria also needs this function. Even if he didn't, still creating this KPI on the first need is the right thing to do.

Jul 17 2026, 4:06 PM
bnovkov added inline comments to D58293: bhyve: check upper bounds for value from qsz.
Jul 17 2026, 2:44 PM
bnovkov added a comment to D58281: bind(2): Lookup local address in current FIB if '*.bind_all_fibs' is active.

Instead of calling fib4_lookup() that has a different purpose, we need ifa_ifwithaddr() version that has fibnum argument.

Looking through net/if.c I noticed that ifa_ifwithnet seems to match what you're suggesting here, do you think we can use this function instead of adding a fibnum-aware version of `ifa_ifwithaddr()`?

I'll create a fib-aware version of ifa_ifwithaddr() and will let you know.

Jul 17 2026, 2:42 PM
bnovkov added a comment to D58281: bind(2): Lookup local address in current FIB if '*.bind_all_fibs' is active.

Instead of calling fib4_lookup() that has a different purpose, we need ifa_ifwithaddr() version that has fibnum argument.

Looking through net/if.c I noticed that ifa_ifwithnet seems to match what you're suggesting here, do you think we can use this function instead of adding a fibnum-aware version of `ifa_ifwithaddr()`?

Jul 17 2026, 10:29 AM