Page MenuHomeFreeBSD

br (Ruslan Bukin)
User

Projects (5)

User Details

User Since
Nov 27 2014, 10:57 AM (623 w, 1 d)

Recent Activity

Mon, Nov 2

br added a reverting change for rGada1f577cc29: bhyve/riscv: correctly handle empty masks and broadcast in SBI IPI/RFNC: rG89d52f02bf37: Revert "bhyve/riscv: correctly handle empty masks and broadcast in SBI IPI/RFNC".
Mon, Nov 2, 9:40 PM
br added a reverting change for D61126: bhyve/riscv: correctly handle empty masks and broadcast in SBI IPI/RFNC: rG89d52f02bf37: Revert "bhyve/riscv: correctly handle empty masks and broadcast in SBI IPI/RFNC".
Mon, Nov 2, 9:40 PM
br committed rG89d52f02bf37: Revert "bhyve/riscv: correctly handle empty masks and broadcast in SBI IPI/RFNC".
Mon, Nov 2, 9:39 PM
br committed rGada1f577cc29: bhyve/riscv: correctly handle empty masks and broadcast in SBI IPI/RFNC (authored by doonbsd_gmail.com).
Mon, Nov 2, 9:07 PM
br closed D61126: bhyve/riscv: correctly handle empty masks and broadcast in SBI IPI/RFNC.
Mon, Nov 2, 9:07 PM
br accepted D61126: bhyve/riscv: correctly handle empty masks and broadcast in SBI IPI/RFNC.

Looks good and tested with bhyve on SpacemiT k3 (using generic guest image).
SBI IPI works fine. Thanks!

Mon, Nov 2, 8:47 PM
br added a comment to D61126: bhyve/riscv: correctly handle empty masks and broadcast in SBI IPI/RFNC.

This resolves a bug in the SBI IPI emulation when booting a guest OS in bhyve. The guest could request hart_mask == 0, in that case we indeed shord return SBI_SUCCESS and treat the call as a no-op, as long as hart_mask_base != -1.
Thanks!

Mon, Nov 2, 5:04 PM
br added a comment to D61126: bhyve/riscv: correctly handle empty masks and broadcast in SBI IPI/RFNC.

another nit

Mon, Nov 2, 4:59 PM
br requested changes to D61126: bhyve/riscv: correctly handle empty masks and broadcast in SBI IPI/RFNC.

Looks good and works great, only a minor issue

Mon, Nov 2, 4:51 PM
br committed rG48ac4113c88f: riscv: Incoming MSI Controller support..
Mon, Nov 2, 12:22 PM
br committed rG24558f289dd3: riscv intc: convert to a bus..
Mon, Nov 2, 12:21 PM
br closed D59695: riscv: incoming MSI controller (IMSIC) support.
Mon, Nov 2, 12:21 PM
br closed D59813: riscv intc: convert to a bus.
Mon, Nov 2, 12:21 PM
br accepted D58372: snd_hdspe: Use busdma for DMA buffers.

works fine on AIO for a few months

Mon, Nov 2, 10:53 AM
br accepted D58373: snd_hdspe: Use saved resource IDs on detach.
Mon, Nov 2, 10:34 AM
br accepted D58371: snd_hdspe: Serialize rate and latency updates.
Mon, Nov 2, 10:29 AM

Sat, Oct 31

br added inline comments to D61017: dwc: Set the packet length in the TX descriptors of the QoS core.
Sat, Oct 31, 1:32 PM
br added inline comments to D61017: dwc: Set the packet length in the TX descriptors of the QoS core.
Sat, Oct 31, 1:24 PM
br added inline comments to D61017: dwc: Set the packet length in the TX descriptors of the QoS core.
Sat, Oct 31, 1:15 PM

Fri, Oct 30

br accepted D60920: dwc: Program the DMA burst length of the QoS core.

Tested on Spacemit K3. Transfer speed improved significantly. Thanks!

Fri, Oct 30, 2:24 PM
br accepted D61018: dwc: Limit the DMA of the QoS core to the address width of the hardware.

works fine on Spacemit K3, it detects 40 bit address range

Fri, Oct 30, 2:13 PM

Thu, Oct 15

br accepted D60744: smsc: Add external PHY support.
Thu, Oct 15, 6:10 PM
br added inline comments to D60744: smsc: Add external PHY support.
Thu, Oct 15, 3:11 PM
br accepted D60744: smsc: Add external PHY support.

looks ok to me

Thu, Oct 15, 3:07 PM

Tue, Oct 13

br committed rG3943973aaeba: mgb: increase timeout.
Tue, Oct 13, 6:38 PM
br closed D60706: mgb: increase timeout.
Tue, Oct 13, 6:37 PM
br committed rGda8a529bc01f: mgb: support for PCI11414..
Tue, Oct 13, 5:43 PM
br closed D60539: mgb: support for PCI11414.
Tue, Oct 13, 5:43 PM
br requested review of D60706: mgb: increase timeout.
Tue, Oct 13, 5:38 PM
br updated the diff for D60539: mgb: support for PCI11414.

Commit TIMEOUT change separately

Tue, Oct 13, 5:13 PM
br updated the diff for D60539: mgb: support for PCI11414.

address @emaste comments

Tue, Oct 13, 5:11 PM
br committed rGec68ff15bfa6: mgb: support multi-segment packets in the DMA descriptor rings..
Tue, Oct 13, 4:31 PM
br closed D60705: mgb: support multiple segments in DMA.
Tue, Oct 13, 4:30 PM
br requested review of D60705: mgb: support multiple segments in DMA.
Tue, Oct 13, 4:09 PM

Fri, Oct 9

br updated the diff for D60539: mgb: support for PCI11414.

Style.

Fri, Oct 9, 5:08 PM
br updated the summary of D60539: mgb: support for PCI11414.
Fri, Oct 9, 4:57 PM
br requested review of D60539: mgb: support for PCI11414.
Fri, Oct 9, 4:56 PM

Oct 6 2026

br committed rG3e01ebda6829: riscv: support the new "riscv,isa-extensions" string-array..
Oct 6 2026, 7:11 PM
br closed D60209: riscv: support new "riscv,isa-extensions" string-array.
Oct 6 2026, 7:11 PM
br updated the diff for D60209: riscv: support new "riscv,isa-extensions" string-array.
  • explicit panic if the string does not fit static buffer
  • reuse isa_extensions static buffer in the legacy routine
Oct 6 2026, 7:49 AM

Oct 1 2026

br requested review of D60209: riscv: support new "riscv,isa-extensions" string-array.
Oct 1 2026, 6:13 PM

Sep 30 2026

br committed rG005af8327476: dwc4_dma: fix armv7 build..
Sep 30 2026, 1:47 PM
br committed rG9006a6ad1b30: dwc(4): Support a major update of Synopsys IP..
Sep 30 2026, 11:28 AM
br closed D59191: dwc(4): support Synopsys IP version 4 and 5.
Sep 30 2026, 11:27 AM
br committed rG7a57dcda272c: gicv5_acpi: fix non-SMP build.
Sep 30 2026, 10:17 AM
br closed D60071: gicv5_acpi: fix non-SMP build.
Sep 30 2026, 10:17 AM

Sep 29 2026

br updated the diff for D59191: dwc(4): support Synopsys IP version 4 and 5.

Fix checksum offload for IPV6, both receive and transmit paths.

Sep 29 2026, 5:13 PM

Sep 28 2026

br added a comment to D59191: dwc(4): support Synopsys IP version 4 and 5.

The driver advertises the following: IFCAP_VLAN_MTU, IFCAP_HWCSUM and IFCAP_HWCSUM_IPV6. What happens if the user enables one of these? I only see that IFCAP_RXCSUM is implemented, albeit probably only partially. In all other cases, the driver either emits an invalid packet, is unable to receive a valid packet, or it panics.

Sep 28 2026, 4:44 PM
br added inline comments to D59191: dwc(4): support Synopsys IP version 4 and 5.
Sep 28 2026, 4:42 PM
br updated the diff for D59191: dwc(4): support Synopsys IP version 4 and 5.

resubmit correct file

Sep 28 2026, 4:40 PM
br updated the diff for D59191: dwc(4): support Synopsys IP version 4 and 5.

remove wmb() on receive path as we don't set any descriptor bits prior setting OWN

Sep 28 2026, 4:40 PM
br updated the diff for D59191: dwc(4): support Synopsys IP version 4 and 5.

implement IP checksum offload on receive path

Sep 28 2026, 4:15 PM

Sep 27 2026

br requested review of D60071: gicv5_acpi: fix non-SMP build.
Sep 27 2026, 5:35 PM

Sep 24 2026

br added inline comments to D59695: riscv: incoming MSI controller (IMSIC) support.
Sep 24 2026, 7:19 AM
br updated the diff for D59695: riscv: incoming MSI controller (IMSIC) support.

Address @mhorne comments.

Sep 24 2026, 7:18 AM

Sep 23 2026

br added inline comments to D59191: dwc(4): support Synopsys IP version 4 and 5.
Sep 23 2026, 9:45 AM
br updated the diff for D59191: dwc(4): support Synopsys IP version 4 and 5.

remove debug

Sep 23 2026, 9:45 AM
br updated the diff for D59191: dwc(4): support Synopsys IP version 4 and 5.
  • add panic() calls in place of TODO comments
  • add wmb()
Sep 23 2026, 9:44 AM
br updated the diff for D59695: riscv: incoming MSI controller (IMSIC) support.

fix hartid type (should be uint32_t)

Sep 23 2026, 9:25 AM

Sep 22 2026

br updated the diff for D59695: riscv: incoming MSI controller (IMSIC) support.

include the full patch

Sep 22 2026, 7:59 AM
br added a comment to D59695: riscv: incoming MSI controller (IMSIC) support.

Glad to see this moving forward. I only skimmed the overall structure, and in particular I am not confident about MSI code.

My main concern is about this 'pool' mechanism. Why is it important to preallocate these irqsrc structures, and is there any way to be smarter about it (upper bound, or runtime expansion of the pool as-needed?). Unless I am mistaken there is not a high reuse rate.

Sep 22 2026, 7:56 AM
br updated the diff for D59695: riscv: incoming MSI controller (IMSIC) support.

remove irq pool to simplify operation. Allocate and register IRQs on demand

Sep 22 2026, 7:49 AM

Sep 21 2026

br updated the diff for D59695: riscv: incoming MSI controller (IMSIC) support.
  • don't claim to be root PIC
  • switch to intc bus
  • NIRQ: lower down the value to 8192
  • allocate memory for pcpu_data and imsic_irq_pool
Sep 21 2026, 6:58 PM
br updated the diff for D59813: riscv intc: convert to a bus.

Initialize the child PIC with interrupts disabled on the root PIC

Sep 21 2026, 6:48 PM

Sep 18 2026

br updated the diff for D59813: riscv intc: convert to a bus.

Another idea draft for discussion

Sep 18 2026, 8:12 PM
br added a comment to D59813: riscv intc: convert to a bus.

Please go read all of D40474

Sep 18 2026, 3:05 PM
br requested review of D59813: riscv intc: convert to a bus.
Sep 18 2026, 2:30 PM

Sep 15 2026

br requested review of D59695: riscv: incoming MSI controller (IMSIC) support.
Sep 15 2026, 8:56 AM
br accepted D59689: riscv: Preserve savectx return address with vector support.
Sep 15 2026, 6:40 AM

Sep 3 2026

br added a comment to D59251: xdma.4: Connect to the build.

Hi let me improve it a bit first as it looks incomplete

Sep 3 2026, 6:36 PM

Aug 27 2026

br added a comment to D59191: dwc(4): support Synopsys IP version 4 and 5.

Because both the DMA and the CPU may write to descriptors simultaneously, the driver must require BUS_DMA_COHERENT memory.

Aug 27 2026, 10:08 AM

Aug 26 2026

br added a comment to D59191: dwc(4): support Synopsys IP version 4 and 5.

Oh, I did not know eqos(4) was imported from NetBSD!

Aug 26 2026, 11:09 AM
br requested review of D59191: dwc(4): support Synopsys IP version 4 and 5.
Aug 26 2026, 8:23 AM

Aug 17 2026

br added a comment to D58370: snd_hdspe: Avoid allocation in the interrupt handler.

Thanks. We needed that for many years as detaching was sometimes panic system:)

Aug 17 2026, 2:01 PM
br accepted D58370: snd_hdspe: Avoid allocation in the interrupt handler.
Aug 17 2026, 2:00 PM

Jun 24 2026

br committed rG34397aec163c: riscv: Use namespace-safe type __uint64_t to not depend on sys/types.h.
Jun 24 2026, 9:11 AM
br committed rGd7a393095cfd: riscv: Vector Extension (RVV) support..
Jun 24 2026, 8:08 AM
br closed D56414: riscv: vector extension support.
Jun 24 2026, 8:08 AM

Jun 10 2026

br added a comment to D56414: riscv: vector extension support.

No support for ucontext.h posix API (looks like legacy)

This does need to work; what does Linux do?

Jun 10 2026, 10:18 AM
br updated the diff for D56414: riscv: vector extension support.

Implement ucontext.h POSIX API

Jun 10 2026, 10:15 AM

Jun 3 2026

br added a comment to D57405: libc: fix strtold NaN representation on riscv.

Hm, seems the current version is the same as the arm file, and now it's the same as the aarch64 one? I'm guessing copying from arm is how this came to be...

Jun 3 2026, 6:07 PM

May 16 2026

br committed rG7eb71fd267c6: riscv: fix GENERIC-NODEBUG build.
May 16 2026, 8:21 PM

May 12 2026

br committed rGbcecad2c24aa: riscv: IOMMU support.
May 12 2026, 10:21 AM
br closed D55922: RISC-V IOMMU support.
May 12 2026, 10:21 AM
br updated the diff for D55922: RISC-V IOMMU support.

Regenerate

May 12 2026, 10:06 AM

May 4 2026

br added inline comments to D55922: RISC-V IOMMU support.
May 4 2026, 11:08 AM

Apr 15 2026

br requested review of D56414: riscv: vector extension support.
Apr 15 2026, 4:00 PM

Mar 18 2026

br requested review of D55922: RISC-V IOMMU support.
Mar 18 2026, 5:23 PM

Mar 5 2026

br committed rGd3eaa40282c7: riscv: save FPE state in cpu_fork(). (authored by jsihv_gmx.com).
Mar 5 2026, 9:02 AM
br closed D53804: riscv cpu_fork(), saving fpe state.
Mar 5 2026, 9:02 AM · riscv
br committed rGdff2758b5fa7: static dtb: add BTI note.
Mar 5 2026, 8:56 AM
br closed D55636: static dtb: add BTI note.
Mar 5 2026, 8:56 AM
br added a comment to D55492: virtio_net: Use bus_dma for rxq/txq buffers.

also - are D55492 and D55564 supposed to be tested together in a stack? which should be applied first?

Apply D55492, then D55564.
Just tested these in qemu: vtnet put behind an IOMMU controller on RISC-V with translation enabled, seem to work fine!

Mar 5 2026, 8:36 AM · network

Mar 4 2026

br added a comment to D55636: static dtb: add BTI note.

Same toolchain (latest), but without this change a few functions don't have landing pad: copyin/copyout and sched_idletd.

Mar 4 2026, 2:45 PM
br added a comment to D55636: static dtb: add BTI note.

How does it fix the Branch Target exception? The kernel doesn't care about the note, it's just there to ensure all source files are built with BTI enabled.

Mar 4 2026, 11:45 AM

Mar 3 2026

br requested review of D55636: static dtb: add BTI note.
Mar 3 2026, 8:15 PM

Mar 2 2026

br added a comment to D55564: virtio_net: Use bus_dma for command/ack buffers.

Change header tag alignment size.

Mar 2 2026, 12:12 PM

Feb 27 2026

br added a comment to D55492: virtio_net: Use bus_dma for rxq/txq buffers.

Could you try https://reviews.freebsd.org/D55564 (in addition to this change set) please?

Feb 27 2026, 6:13 PM · network
br added inline comments to D55564: virtio_net: Use bus_dma for command/ack buffers.
Feb 27 2026, 6:12 PM
br added a comment to D55369: arm64 iommu: fixes.

found another bug here, will resubmit

Feb 27 2026, 11:16 AM