Page MenuHomeFreeBSD

corvink (Corvin Köhne)
User

Projects

User does not belong to any projects.

User Details

User Since
Aug 27 2020, 6:07 AM (271 w, 15 h)

Recent Activity

Mon, Nov 3

corvink added inline comments to D53470: bhyve/virtio-scsi: check LUN address validity.
Mon, Nov 3, 8:21 AM
corvink added a comment to D53468: bhyve/virtio: rework iovec handling functions for efficiency and clarity.

Thanks for splitting your initial commit! Note that this can also be split into smaller commits to make it easier to read: add check_iov_len, update buf_to_iov and replace seek + truncate by split. While I'm personally preferring splitting the commits, I'd be fine keeping it as is too.

Mon, Nov 3, 7:52 AM
corvink accepted D53467: bhyve/virtio-scsi: advertise support for indirect descriptors.
Mon, Nov 3, 7:25 AM
corvink accepted D53466: bhyve/virtio-scsi: unlimit max_sectors.
Mon, Nov 3, 7:24 AM
corvink accepted D53465: bhyve/virtio: check negotiated_caps for indirect descriptor support.
Mon, Nov 3, 7:23 AM
corvink accepted D53477: vmm: Move vm_maxcpu handling into MI code.
Mon, Nov 3, 7:20 AM
corvink accepted D53422: vmm: Consolidate VM name length checking.
Mon, Nov 3, 7:18 AM
corvink accepted D53421: vmm: Move the module load handler to vmm_dev.c.
Mon, Nov 3, 7:15 AM

Thu, Oct 30

corvink accepted D53420: amd64/vmm: Remove useless global variables.
Thu, Oct 30, 7:47 AM
corvink accepted D53423: amd64/vmm: Remove an unused function.
Thu, Oct 30, 7:47 AM
corvink accepted D53422: vmm: Consolidate VM name length checking.
Thu, Oct 30, 7:47 AM
corvink accepted D53421: vmm: Move the module load handler to vmm_dev.c.
Thu, Oct 30, 7:45 AM

Wed, Oct 29

corvink accepted D53418: vmm: Simplify the VM_ALLOC_MEMSEG ioctl a bit.
Wed, Oct 29, 7:25 AM
corvink accepted D53419: amd64/vmm: Factor vcpu_notify_event() into two functions.
Wed, Oct 29, 7:24 AM

Tue, Oct 28

corvink accepted D53246: vmm: Fix routines which create maps of the guest physical address space.
Tue, Oct 28, 7:21 AM

Wed, Oct 22

corvink accepted D53246: vmm: Fix routines which create maps of the guest physical address space.
Wed, Oct 22, 6:30 AM
corvink added a comment to D53220: bhyve/virtio-scsi: various small improvements.

It would make it easier to review and merge when each point gets it own commit.

Actually, all of this was done together with D53223, D53222, and D53221. I've moved this part out and ahead of the other changes as I figured they'd needlessly complicate the review of the larger functional changes.

It may seem as a bunch of individual changes lumped together, but I've really just listed what this change does. Except perhaps for the style cleanups (which I'm not sure are well received in FreeBSD anyway) and the 1-line change to enable indirect descriptors, I'm not sure much is gained if I try to split it up further as all of this was really developed and tested together.

Anyway, if you insist that I split it up, I will of course try to do so.

Wed, Oct 22, 6:25 AM
corvink accepted D51551: bhyve: want walk_config_nodes.
Wed, Oct 22, 6:10 AM

Tue, Oct 21

corvink added a comment to D37972: bhyve: help rendezvous request when waiting for IDLE vcpu state.

@kib This can be closed. The issues was fixed by D52968.

Tue, Oct 21, 6:42 AM
corvink added a comment to D53220: bhyve/virtio-scsi: various small improvements.
  • indicate support for indirect descriptors
  • simplify iov functions and let them work in-place, preventing unnecessary allocations and memcpy() calls in hot code paths
  • preallocate all I/O requests on all queues, taking most allocations out of hot code paths
  • check for I/O request validity as early as possible, and return illegal requests immediately
  • check lun format
  • check all allocations for success and handle failures gracefully
  • add a few more DPRINTFs
  • style cleanups
Tue, Oct 21, 6:34 AM
corvink accepted D53210: vmm/amd64: port illumos#16223: bhyve returns bogus cpuid 8000_001D leaf.

Please descripe the bug and expected behavior in more detail in the commit message.

Tue, Oct 21, 6:25 AM
corvink added inline comments to D51551: bhyve: want walk_config_nodes.
Tue, Oct 21, 6:19 AM

Mon, Oct 20

corvink abandoned D52781: sys/amd64/vmm: fix Windows 11 deadlock.

Fixed by D52968

Mon, Oct 20, 6:41 AM

Fri, Oct 17

corvink accepted D52968: vmm: My attempt at fixing the rendezvous deadlock.
Fri, Oct 17, 6:23 AM
corvink added a comment to D52968: vmm: My attempt at fixing the rendezvous deadlock.

It doesn't look like it fully freezes. However, it gets extremely slow. The circle of the Windows boot loader spins very slowly. Don't know if it will ever reach the desktop.

What output do you see if you run procstat -kk <bhyve PID> while this is happening?

Almost always one vCPU hangs in vm_handle_rendezvous. The output is from a single VM run. I've called procstat a few times within a few seconds:

Could you please try the updated patch?

Fri, Oct 17, 6:22 AM
corvink accepted D53145: vmm: Move local variables into ioctl handlers.
Fri, Oct 17, 6:15 AM
corvink accepted D53144: vmm: Add PRIV_DRIVER checks for passthru ioctls.
Fri, Oct 17, 6:14 AM
corvink accepted D53143: vmm: Improve register get/set handling a bit.
Fri, Oct 17, 6:10 AM

Thu, Oct 16

corvink added a comment to D52968: vmm: My attempt at fixing the rendezvous deadlock.

It doesn't look like it fully freezes. However, it gets extremely slow. The circle of the Windows boot loader spins very slowly. Don't know if it will ever reach the desktop.

What output do you see if you run procstat -kk <bhyve PID> while this is happening?

Thu, Oct 16, 6:34 AM

Tue, Oct 14

corvink added a comment to D52968: vmm: My attempt at fixing the rendezvous deadlock.

It doesn't look like it fully freezes. However, it gets extremely slow. The circle of the Windows boot loader spins very slowly. Don't know if it will ever reach the desktop.

Tue, Oct 14, 12:57 PM

Fri, Oct 10

corvink accepted D53013: vmm: Remove some unused macros.
Fri, Oct 10, 5:52 AM
corvink accepted D53012: vmm: Move the guest vmspace into the generic vm_mem structure.
Fri, Oct 10, 5:52 AM
corvink accepted D53011: vmm: Make vmmops declarations more consistent.
Fri, Oct 10, 5:49 AM
corvink accepted D53010: vmm: Unify implementations of vcpu_cleanup().
Fri, Oct 10, 5:47 AM

Thu, Oct 9

corvink added inline comments to D52781: sys/amd64/vmm: fix Windows 11 deadlock.
Thu, Oct 9, 12:27 PM

Oct 7 2025

corvink added inline comments to D52781: sys/amd64/vmm: fix Windows 11 deadlock.
Oct 7 2025, 6:24 AM

Oct 6 2025

corvink added inline comments to D52781: sys/amd64/vmm: fix Windows 11 deadlock.
Oct 6 2025, 1:44 PM
corvink added a comment to D52781: sys/amd64/vmm: fix Windows 11 deadlock.

I think there may still be a relationship, jbo, since I've been having a different experience than you. However for now I'll try out some other bisecting before coming back to this. I'm going to test out switching out the "nvme" emulation for my drive to "ahci-hd" and see if that has any stability effect. I know people have also experienced issues with the nvme emulation before.

Oct 6 2025, 7:46 AM
corvink updated the summary of D52781: sys/amd64/vmm: fix Windows 11 deadlock.
Oct 6 2025, 7:42 AM
corvink updated the diff for D52781: sys/amd64/vmm: fix Windows 11 deadlock.
  • only unlock vcpu when necessary
  • avoid uneccessary sleeps
  • fix some style issues
Oct 6 2025, 7:42 AM

Oct 2 2025

corvink added inline comments to D52781: sys/amd64/vmm: fix Windows 11 deadlock.
Oct 2 2025, 8:02 AM

Oct 1 2025

corvink added inline comments to D52781: sys/amd64/vmm: fix Windows 11 deadlock.
Oct 1 2025, 7:21 PM

Sep 30 2025

corvink added inline comments to D52781: sys/amd64/vmm: fix Windows 11 deadlock.
Sep 30 2025, 2:19 PM

Sep 29 2025

corvink added a comment to D37972: bhyve: help rendezvous request when waiting for IDLE vcpu state.

Hi,
I'm able to reproduce the issue and was able to fix it: https://reviews.freebsd.org/D52781

Sep 29 2025, 9:42 AM
corvink requested review of D52781: sys/amd64/vmm: fix Windows 11 deadlock.
Sep 29 2025, 9:41 AM

Sep 23 2025

corvink committed rGd0efd64479ed: bhyve: assign a valid INTPIN to NVIDIA GPUs (authored by corvink).
bhyve: assign a valid INTPIN to NVIDIA GPUs
Sep 23 2025, 2:30 PM
corvink committed rG5a8172dd6389: bhyve: assign a valid INTPIN to NVIDIA GPUs (authored by corvink).
bhyve: assign a valid INTPIN to NVIDIA GPUs
Sep 23 2025, 2:05 PM

Sep 16 2025

corvink added a comment to D52013: bhyve: allow passthrough of sub-page MMIO BARs.

I'm not sure but it might be possible to use an RB tree [1] to simplify creating a list, sorting it and searching for elements (RB_NFIND).

Sep 16 2025, 8:16 AM
corvink added inline comments to D52013: bhyve: allow passthrough of sub-page MMIO BARs.
Sep 16 2025, 7:51 AM
corvink committed rGeffcd0ded0ef: bhyve: assign a valid INTPIN to NVIDIA GPUs (authored by corvink).
bhyve: assign a valid INTPIN to NVIDIA GPUs
Sep 16 2025, 6:57 AM
corvink closed D51892: bhyve: assign a valid INTPIN to NVIDIA GPUs.
Sep 16 2025, 6:57 AM

Sep 15 2025

corvink accepted D52425: bhyve: tpm: Avoid printing a message when clearing the cancel bit.
Sep 15 2025, 10:16 AM

Aug 15 2025

corvink added a comment to D51892: bhyve: assign a valid INTPIN to NVIDIA GPUs.
In D51892#1186266, @jhb wrote:

Hmmm, do we not support INTx interrupts for passthrough in general? I guess we don't. There's a chance some guest OS might try to use INTx instead of MSI which won't work. Do you have more context on what is requiring this? Is it a driver in a Windows guest, or some other OS?

Aug 15 2025, 9:13 AM

Aug 14 2025

corvink requested review of D51892: bhyve: assign a valid INTPIN to NVIDIA GPUs.
Aug 14 2025, 6:10 AM

Aug 5 2025

corvink committed rG6374c45fbaf7: bhyve: protect MMIO mapped BDSM register (authored by corvink).
bhyve: protect MMIO mapped BDSM register
Aug 5 2025, 2:04 PM
corvink committed rG6dda2653bd0e: bhyve: add interface to protect BAR regions of passthru devices (authored by corvink).
bhyve: add interface to protect BAR regions of passthru devices
Aug 5 2025, 2:04 PM
corvink committed rGf841cb63687b: bhyve: trap protected BAR regions of passthru devices (authored by corvink).
bhyve: trap protected BAR regions of passthru devices
Aug 5 2025, 2:04 PM
corvink committed rGdf6c805ca125: bhyve: add BAR handler list for passthru devices (authored by corvink).
bhyve: add BAR handler list for passthru devices
Aug 5 2025, 2:04 PM
corvink closed D45342: bhyve: protect MMIO mapped BDSM register.
Aug 5 2025, 2:04 PM
corvink committed rG9eddbaa5bba2: bhyve: add GVT-d support for graphics gen 11 and newer (authored by corvink).
bhyve: add GVT-d support for graphics gen 11 and newer
Aug 5 2025, 2:04 PM
corvink closed D45341: bhyve: add interface to protect BAR regions of passthru devices.
Aug 5 2025, 2:04 PM
corvink closed D45340: bhyve: trap protected BAR regions of passthru devices.
Aug 5 2025, 2:04 PM
corvink committed rG1bc515184d87: bhyve: scan PCI device ID to properly set BDSM address (authored by corvink).
bhyve: scan PCI device ID to properly set BDSM address
Aug 5 2025, 2:04 PM
corvink closed D45339: bhyve: add BAR handler list for passthru devices.
Aug 5 2025, 2:04 PM
corvink closed D45338: bhyve: add GVT-d support for graphics gen 11 and newer.
Aug 5 2025, 2:04 PM
corvink closed D50807: bhyve: scan PCI device ID to properly set BDSM address.
Aug 5 2025, 2:04 PM

Jul 28 2025

corvink added a comment to D51555: bhyve/amd64: parse cpuid options.

Setting every single cpuid value seems to be a bunch of work for user. Especially, as user have to set every single bit correctly. What's the way forward for this? How will bhyve receive some default cpuid values?

Jul 28 2025, 9:56 AM
corvink added inline comments to D51555: bhyve/amd64: parse cpuid options.
Jul 28 2025, 9:53 AM
corvink accepted D51554: libvmmapi/amd64: add support for CPUID ioctls to libvmmapi.
Jul 28 2025, 9:39 AM
corvink added a comment to D51553: vmm/amd64: VM_SET_CPUID ioctl should refuse zero-entry non-legacy cpuid cfg.

This should be merged into the previous commit D51552 shouldn't it?

Jul 28 2025, 9:38 AM
corvink added inline comments to D51552: vmm/amd64: port illumos#14485: bhyve nees better cpuid control.
Jul 28 2025, 9:37 AM
corvink accepted D51551: bhyve: want walk_config_nodes.

Could you please describe a use case in the commit message?

Jul 28 2025, 9:06 AM
corvink accepted D51550: amd64: add missing include sys/pcpu.h to vmm_host.h and md_var.h.
Jul 28 2025, 9:03 AM

Jun 27 2025

corvink updated the diff for D45340: bhyve: trap protected BAR regions of passthru devices.
  • rename len to size to match common naming in pci_passthru.c
Jun 27 2025, 7:47 AM
corvink updated the diff for D45342: bhyve: protect MMIO mapped BDSM register.
  • use uint64_t instead of vm_* types
  • account for new handler interface (including baridx)
Jun 27 2025, 7:41 AM
corvink updated the diff for D45341: bhyve: add interface to protect BAR regions of passthru devices.
  • use uint64_t instead of vm_* types
Jun 27 2025, 7:40 AM
corvink updated the diff for D45339: bhyve: add BAR handler list for passthru devices.
  • use uint64_t types instead of vm_* types
  • add baridx parameter to read/write handler
    • this parameter can be used in the future to e.g. add a generic PCI config mirror in BAR space which is quite common according to QEMU [1]
Jun 27 2025, 7:39 AM
corvink added a comment to D50807: bhyve: scan PCI device ID to properly set BDSM address.

@markj @jhb Any additional comments?

Jun 27 2025, 6:44 AM
corvink updated the diff for D50807: bhyve: scan PCI device ID to properly set BDSM address.
  • fix build
Jun 27 2025, 6:43 AM

Jun 24 2025

corvink updated the diff for D45342: bhyve: protect MMIO mapped BDSM register.
  • fix style issue
  • use correct offset for 64 bit BDSM read/writes
Jun 24 2025, 6:27 AM
corvink updated the diff for D45340: bhyve: trap protected BAR regions of passthru devices.
  • fix style issues
  • make use of trunc_page and round_page
Jun 24 2025, 6:24 AM
corvink committed rGfb2b8c307d2e: bhyve: add PCI IDs of Intel GPUs from Linux v6.15 (authored by corvink).
bhyve: add PCI IDs of Intel GPUs from Linux v6.15
Jun 24 2025, 6:15 AM
corvink committed rGb2221534a7bc: bhyve: support VBTs which lay outside of the OpRegion (authored by corvink).
bhyve: support VBTs which lay outside of the OpRegion
Jun 24 2025, 6:15 AM
corvink closed D50806: bhyve: add PCI IDs of Intel GPUs from Linux v6.15.
Jun 24 2025, 6:15 AM
corvink closed D45337: bhyve: support VBTs which lay outside of the OpRegion.
Jun 24 2025, 6:15 AM
corvink added inline comments to D45339: bhyve: add BAR handler list for passthru devices.
Jun 24 2025, 6:07 AM
corvink updated the diff for D50807: bhyve: scan PCI device ID to properly set BDSM address.
  • fix style issues
  • make global variables const
Jun 24 2025, 5:54 AM

Jun 17 2025

corvink added inline comments to D50806: bhyve: add PCI IDs of Intel GPUs from Linux v6.15.
Jun 17 2025, 6:34 AM

Jun 12 2025

corvink updated the summary of D50806: bhyve: add PCI IDs of Intel GPUs from Linux v6.15.
Jun 12 2025, 1:51 PM
corvink abandoned D45333: x86/pci: add sysctl for intel_graphics_gen.

Becomes obsolete by D50806 and D50807.

Jun 12 2025, 1:48 PM
corvink updated the diff for D45342: bhyve: protect MMIO mapped BDSM register.
  • rebase onto main
Jun 12 2025, 1:47 PM
corvink updated the diff for D45341: bhyve: add interface to protect BAR regions of passthru devices.
  • rebase onto main
Jun 12 2025, 1:46 PM
corvink updated the diff for D45340: bhyve: trap protected BAR regions of passthru devices.
  • rebase onto main
Jun 12 2025, 1:46 PM
corvink updated the diff for D45339: bhyve: add BAR handler list for passthru devices.
  • rebase onto main
Jun 12 2025, 1:46 PM
corvink updated the diff for D45338: bhyve: add GVT-d support for graphics gen 11 and newer.
  • make use of igd_ops
Jun 12 2025, 1:46 PM
corvink requested review of D50807: bhyve: scan PCI device ID to properly set BDSM address.
Jun 12 2025, 1:46 PM
corvink requested review of D50806: bhyve: add PCI IDs of Intel GPUs from Linux v6.15.
Jun 12 2025, 1:45 PM
corvink updated the diff for D45337: bhyve: support VBTs which lay outside of the OpRegion.
  • rebase onto main
Jun 12 2025, 1:45 PM

May 19 2025

corvink committed rGe9fe7b08eb2e: sys/intpm: fix SMBus Read Block (authored by corvink).
sys/intpm: fix SMBus Read Block
May 19 2025, 12:54 PM

May 6 2025

corvink committed rG691833ad3776: sys/intpm: fix SMBus Read Block (authored by corvink).
sys/intpm: fix SMBus Read Block
May 6 2025, 11:55 AM