<!DOCTYPE html>
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
</head>
<body>
<p>Hello!</p>
<p><br>
</p>
<p>The OI bhyve firmware package seems to be outdated.</p>
<p>The related github has no more recent version, so it seems github
has to be updated beforehand... (?)<br>
</p>
<p><br>
</p>
<p>$ pkg info system/bhyve/firmware<br>
Name: system/bhyve/firmware<br>
Summary: UEFI-EDK2(+CSM) firmware for bhyve<br>
Category: System/Core<br>
State: Installed<br>
Publisher: openindiana.org<br>
Version: 20210201<br>
Branch: 2022.0.0.2<br>
Packaging Date: March 25, 2022 at 06:39:30 AM<br>
Last Install Time: December 23, 2023 at 08:13:52 AM<br>
Size: 7.88 MB<br>
FMRI:
<a class="moz-txt-link-abbreviated" href="mailto:pkg://openindiana.org/system/bhyve/firmware@20210201-2022.0.0.2:20220325T063930Z">pkg://openindiana.org/system/bhyve/firmware@20210201-2022.0.0.2:20220325T063930Z</a><br>
Project URL: <a class="moz-txt-link-freetext" href="https://github.com/illumos/uefi-edk2">https://github.com/illumos/uefi-edk2</a><br>
Source URL:
<a class="moz-txt-link-freetext" href="https://github.com/illumos/uefi-edk2/releases/download/il-udk2014.sp1-3/uefi-edk2-il-udk2014.sp1-3.tar.xz">https://github.com/illumos/uefi-edk2/releases/download/il-udk2014.sp1-3/uefi-edk2-il-udk2014.sp1-3.tar.xz</a><br>
</p>
<p><br>
</p>
<p>GitHub:</p>
<p><a class="moz-txt-link-freetext" href="https://github.com/illumos/uefi-edk2/releases">https://github.com/illumos/uefi-edk2/releases</a></p>
<p><br>
</p>
<p>Regards,</p>
<p>Stephan<br>
</p>
<div class="moz-forward-container"><br>
<br>
-------- Forwarded Message --------
<table class="moz-email-headers-table" cellspacing="0"
cellpadding="0" border="0">
<tbody>
<tr>
<th valign="BASELINE" nowrap="nowrap" align="RIGHT">Subject:
</th>
<td>[bugs] [illumos gate - Feature #15916] bhyve upstream
sync 2023 September</td>
</tr>
<tr>
<th valign="BASELINE" nowrap="nowrap" align="RIGHT">Date: </th>
<td>Fri, 22 Dec 2023 22:10:32 +0000</td>
</tr>
<tr>
<th valign="BASELINE" nowrap="nowrap" align="RIGHT">From: </th>
<td>illumos project via illumos-bugs
<a class="moz-txt-link-rfc2396E" href="mailto:bugs@lists.illumos.org"><bugs@lists.illumos.org></a></td>
</tr>
<tr>
<th valign="BASELINE" nowrap="nowrap" align="RIGHT">Reply-To:
</th>
<td>illumos-bugs <a class="moz-txt-link-rfc2396E" href="mailto:bugs@lists.illumos.org"><bugs@lists.illumos.org></a></td>
</tr>
</tbody>
</table>
<br>
<br>
Issue #15916 has been updated by Andy Fiddaman.<br>
<br>
<br>
The changes in the associated Gerrit review have been integrated
in OmniOS bloody for a few weeks, and tested with a wide range of
different VMs -- including illumos, FreeBSD, Windows and Linux --
in a range of configurations including pass-through of USB hubs,
NICs and GPUs (many thanks due to Jorge Schrauen and Marco van
Wieringen for helping out here).<br>
<br>
Although this change includes new code to load ACPI tables into
the guest via a fwcfg interface, this is not enabled by default.
Enabling this appears to work but dumping ACPI tables from a guest
running the old and new bits produces the same output in both
cases.<br>
<br>
<br>
----------------------------------------<br>
Feature #15916: bhyve upstream sync 2023 September<br>
<a class="moz-txt-link-freetext" href="https://www.illumos.org/issues/15916#change-43755">https://www.illumos.org/issues/15916#change-43755</a><br>
<br>
* Author: Andy Fiddaman<br>
* Status: In Progress<br>
* Priority: Low<br>
* Assignee: Andy Fiddaman<br>
* Category: bhyve<br>
* Difficulty: Medium<br>
* Gerrit CR: 3044<br>
----------------------------------------<br>
This is a set of merges from bhyve in FreeBSD, summarised in the
following table.<br>
<br>
There is very little change to the kernel components, we already
had several of the fixes there.<br>
The biggest set of changes are around:<br>
- ACPI table generation and loading them into the guest via the
fwctl interfaces;<br>
- A basic emulated E820 device;<br>
- TPM pass-through.<br>
<br>
Each line is prefixed by a set of flags showing which action was
taken. The key for these is:<br>
<br>
<pre><br>
S - skipped<br>
U - updated to match upstream<br>
~ - partially taken<br>
* - merged<br>
F - only freebsd-specific code changed<br>
A - already had<br>
</pre><br>
<br>
<pre><br>
* 1 bhyve: Avoid triggering false -Wfree-nonheap-object warnings.<br>
* 2 bhyve: Remove vmctx argument from PCI device model methods.<br>
*F 3 bhyve: Fix a global buffer overread in the PCI hda device
model.<br>
*F 4 bhyve: Fix a buffer overread in the PCI hda device model.<br>
S 5 vmm: take exclusive mem_segs_lock when (un)assigning ppt dev<br>
S 6 vmm: take exclusive mem_segs_lock in vm_cleanup()<br>
S 7 vmm: fix use after free in ppt_detach()<br>
S 8 vm: centralize VM_BATCHQUEUE_SIZE definition<br>
* 9 53545967642d850eee4f2dd9fa27cae52ae981b9 vtd: Increase
DRHD_MAX_UNITS<br>
S 10 vmm: avoid spurious rendezvous<br>
S 11 vmm: purge EOL release compatibility<br>
S 12 vmm: Collapse identical case statements in
vlapic_icrlo_write_handler()<br>
S 13 vmm: Remove an unneeded initialization of "retu"<br>
S 14 vmm: Fix AP startup compatibility for old bhyve executables<br>
* 15 bhyve: add helper struct for acpi device handling<br>
* 16 bhyve: add helper func to add acpi resources<br>
* 17 bhyve: add helper func to write a dsdt entry<br>
* 18 bhyve: maintain a list of acpi devices<br>
* 19 bhyve: add basic qemu fwcfg implementation<br>
* 20 bhyve: add emulation for the qemu fwcfg selector port<br>
* 21 bhyve: add emulation for qemu's fwcfg data port<br>
* 22 bhyve: add helper to add fwcfg items<br>
* 23 bhyve: add common fwcfg items<br>
S 24 vmm: fix restore of TSC offset<br>
S 25 bhyve: fix restore of kernel structs<br>
S 26 bhyve: fix resume for vms with guest_ncpus > 1<br>
* 27 bhyve: remove redundant variable<br>
* 28 bhyve: Remove useless return at the end of void function<br>
* 29 bhyvectl: Address compiler warnings and bump WARNS<br>
S 30 bhyvectl: do not return garbage from send_message<br>
S 31 bhyvectl: correct socket_fd closing in send_message<br>
S 32 bhyvectl: don't leak nvlist in send_message<br>
S 33 libvmm: add missing ioctl's to vm_ioctl_cmds<br>
S 34 bhyve: don't flush readonly device at blockif_pause<br>
S 35 bhyve: add cap limits for ipc socket<br>
S 36 bhyve: exit with EX_OSERR if init checkpoint or restore time
failed<br>
S 37 bhyve: init checkput before caph_enter<br>
S 38 bhyvectl: don't permit using --suspend and --checkpoint at
same time<br>
S 39 bhyve: Move libcasper dependecy to lib9p<br>
* 40 bhyve: Remove trailing semicolon<br>
* 41 bhyve: add helper for adding fwcfg files<br>
* 42 bhyve: add cmdline option to enable qemu's fwcfg<br>
SA 43 vmm: fix missing ipi statistic<br>
S 44 bhyve: Sleep briefly in the VMEXIT_DEBUG handler<br>
* 45 bhyve: Accept a variable-length string name for
qemu_fwcfg_add_file.<br>
* 46 bhyve: Don't return -ENOMEM from qemu_fwcfg_add_file.<br>
* 47 libvmmapi: Add a struct vcpu and use it in most APIs.<br>
S 48 bhyve: Remove vmctx member from struct vm_snapshot_meta.<br>
* 49 bhyve: add helper to read PCI IDs from bhyve config<br>
* 50 bhyve: make use of helper to read PCI IDs from bhyve config<br>
* 51 bhyve: add config option to modify LPC IDs<br>
* 52 bhyve: fix spelling mistake of pcireg option<br>
* 53 bhyve: remove unnecessary const qualifier in acpi_device.h<br>
* 54 bhyve: return EEXIST when adding a fwcfg item twice<br>
*F 55 bhyve: scan PCI device functions to find host LPC<br>
* 56 bhyve: add QEMU_FWCFG_INDEX_NB_CPUS item<br>
* 57 bhyve: add missing include to qemu_fwcfg.c<br>
* 58 bhyve: introduce acpi_device_emul struct<br>
* 59 bhyve: do not exit if LPC finds no host selector<br>
* 60 bhyve: allow building device specific ACPI tables<br>
* 61 bhyve: check for errors when writing device specific DSDT
entries<br>
* 62 bhyve: allow device specific DSDT entries<br>
* 63 bhyve: define array to protect passthru regs<br>
* 64 bhyve: add hook for PCI header of passthru devices<br>
* 65 bhyve: add QEMU_FWCFG_INDEX_MAX_CPUS item<br>
* 66 bhyve: save softc of ACPI devices<br>
S 67 Update/fix Makefile.depend for userland<br>
* 68 x86: Move i386 timerreg.h to x86<br>
* 69 ext2fs: extract crc16 into sys/crc16.h<br>
* 70 bhyve: add helper struct for qemus acpi table loader<br>
* 71 bhyve: make use of qemus acpi table loader<br>
* 72 vmm: Expose some more AVX512 CPUID bits to guests<br>
* 73 bhyve: add basic E820 implementation<br>
* 74 bhyve: add common memory holes to E820 table<br>
* 75 bhyve: add allocation function to E820<br>
* 76 bhyve: add E820 dump function<br>
* 77 bhyve: pass E820 table to guest<br>
S 78 vmm: fix HLT loop while vcpu has requested virtual interrupts<br>
S 79 vmm: Dynamically allocate a couple of per-CPU state save
areas<br>
*F 80 bhyve: Disable bhyve HDA debug by default.<br>
*F 81 bhyve: Add DEBUG_HDA_FILE define to specify location of
debug output<br>
S 82 bhyve: use directory file descriptor for checkpoint<br>
S 83 bhyve: enable capsicum for snapshot code<br>
* 84 bhyve(8): fix typo in examples<br>
S 85 vmm: don't free unallocated memory<br>
* 86 bhyve: specify OpenSSL 1.1 API<br>
S 87 bhyve: fix vCPU single-stepping on VMX<br>
S 88 bhyve: save/restore pir_desc<br>
* 89 bhyve: add cmdline option for user defined fw_cfg items<br>
S 90 bhyve: make passthru sel public available<br>
* 91 bhyve: don't panic if e820 finds no available memory<br>
S 92 bhyve: add helper for passthru specific mmio ranges<br>
S 93 bhyve: import OpRegion definitions<br>
* 94 spdx: The BSD-2-Clause-FreeBSD identifier is obsolete, drop
-FreeBSD<br>
* 95 bhyve: error out if fwcfg user file isn't read completely<br>
S 96 vmm: Avoid embedding cpuset_t ioctl ABIs<br>
* 97 bhyve: Remove the exitcode stats structure<br>
S 98 bhyvectl: Update usage of vm_run()<br>
* 99 bhyve: Fix typos<br>
* 100 libvmmapi: Remove some unneeded includes<br>
* 101 bhyve: Remove vestigial support for setting max vCPUs.<br>
* 102 bhyve: allow adding FwCfg items to ACPI tables<br>
* 103 bhyve: add basic TPM device<br>
* 104 bhyve: register TPM device as ACPI device<br>
* 105 bhyve: Remove special no-op handling for I/O port 0x488<br>
* 106 bhyve: Sort SRCS<br>
S 107 bhyve: add empty GVT-d emulation<br>
S 108 bhyve: read out graphics stolen memory address and size<br>
S 109 bhyve: allocate guest memory for graphics stolen memory<br>
S 110 bhyve: emulate graphics stolen memory register<br>
S 111 bhyve: read OpRegion address and size for GVT-d<br>
S 112 bhyve: copy OpRegion into guest memory<br>
S 113 bhyve: pass address of OpRegion to the guest<br>
* 114 bhyve: use assert for missing TPM version<br>
* 115 bhyve: add basic TPM emulation struct<br>
* 116 bhyve: add basic TPM passthrough emulation<br>
* 117 bhyve: add basic CRB interface for TPM devices<br>
S 118 bhyve: rename 'structs' snapshot key with 'kern_structs'<br>
S 119 bhyve: simplify restore of kernel structs<br>
S 120 bhyve: rename 'user_dev' with 'devices'<br>
* 121 bhyve: add bus, slot and func to device name<br>
S 122 bhyve: add .pe_snapshot method for PCI 'hostbridge'<br>
S 123 bhyve: use pci_next() to save/restore pci devices<br>
S 124 bhyve: add command line parameter and parsing for migration<br>
S 125 bhyve: Remove some unneeded includes of segments.h<br>
*F 126 bhyve: Include vmm.h via the usual path<br>
* 127 bhyve: Register hlt and pause vmexit handlers
unconditionally<br>
* 128 bhyve: Refactor vmexit_suspend() a bit<br>
* 129 bhyve: add helper to create a bootorder<br>
* 130 bhyve: add bootindex option for several devices<br>
* 131 bhyve: maintain RSDT and XSDT by basl<br>
* 132 bhyve/tpm: build TPM2 table by tpm interface<br>
* 133 bhyve/tpm: create crb thread for sending tpm commands<br>
* 134 bhyve: dos2unix<br>
S 135 lib9p: Remove set but unused sockets[] array from
l9p_start_server.<br>
S 136 Revert "bhyve: add command line parameter and parsing for
migration"<br>
* 137 Replace BSD-2-Clause-FreeBSD with BSD-2-Clause<br>
* 138 nvme: Fix typo in "Command Aborted by Host" constant name.<br>
* 139 bhyve: Stop calling pci_lintr_request() in the NVMe device
model<br>
* 140 bhyve: Rename a pci_cfgrw() parameter<br>
* 141 bhyve: Deduplicate some code in modify_bar_registration()<br>
S 142 vmm: don't return random error from vcpu_lock_all() if vcpu
is empty<br>
S 143 vmm: don't leak locks exiting vmmdev_ioctl()<br>
* 144 bhyve: Fix whitespace in bhyverun.c<br>
* 145 bhyve: Remove an unneeded vm_get_register() call in main()<br>
* 146 bhyve: do not hold CRB mutex when executing TPM commands<br>
* 147 bhyvectl: Add '--get-debug-cpus' command<br>
SA 148 bhyve: Fully reset the fwctl state machine if the guest
requests a reset.<br>
* 149 nvme: Add more NVME Base Spec 2.0 and NVME Command Set Spec
1.0a<br>
* 150 bhyve: add emulation for CRB register of TPM devices<br>
* 151 bhyve: emulate TPM passthru by accessing /dev/tpmX<br>
* 152 bhyve: add Qemu PPI emulation for TPM devices<br>
* 153 nvme.h: Fix a comment typo in admin opcode enum<br>
* 154 sys: Remove $FreeBSD$: two-line .h pattern<br>
* 155 Remove $FreeBSD$: two-line .h pattern<br>
* 156 sys: Remove $FreeBSD$: one-line .h pattern<br>
* 157 sys: Remove $FreeBSD$: one-line .c pattern<br>
* 158 Remove $FreeBSD$: one-line .c pattern<br>
* 159 sys: Remove $FreeBSD$: one-line sh pattern<br>
* 160 Remove $FreeBSD$: one-line sh pattern<br>
* 161 Remove $FreeBSD$: two-line nroff pattern<br>
* 162 bhyve: add cmdline option for TPM emulation<br>
* 163 bhyve: Store the FreeBSD OUI in little-endian in the
controller data<br>
* 164 bhyve: default UART to 115200<br>
S 165 vmm: Fix VM_GET_CPUS compatibility<br>
* 166 bhyve: add config option to load ACPI tables into memory<br>
* 193 bhyve nvme: Add NQN value<br>
</pre><br>
<br>
<br>
<br>
<pre class="moz-signature">--
You have received this notification because you have either subscribed to it, or are involved in it.
To change your notification preferences, please click here: <a class="moz-txt-link-freetext" href="https://www.illumos.org/my/account">https://www.illumos.org/my/account</a>
------------------------------------------
illumos: illumos-bugs
Permalink: <a class="moz-txt-link-freetext" href="https://illumos.topicbox.com/groups/bugs/T2f419f5be07c6e45-Mccd7307621486f4dc0fea867">https://illumos.topicbox.com/groups/bugs/T2f419f5be07c6e45-Mccd7307621486f4dc0fea867</a>
Delivery options: <a class="moz-txt-link-freetext" href="https://illumos.topicbox.com/groups/bugs/subscription">https://illumos.topicbox.com/groups/bugs/subscription</a>
</pre>
</div>
</body>
</html>