[edk2-devel] OVMF and SMBIOS

Tomas Pilar (tpilar) tpilar at solarflare.com
Wed May 29 09:44:09 UTC 2019


On 28/05/2019 18:06, Laszlo Ersek wrote:
> On 05/28/19 17:18, Tomas Pilar (tpilar) wrote:
>> Hi,
>>
>> I am trying to create kvm instance using libvirt and Qemu and OVMF that also has SMBIOS included. My current version of Qemu only supports type 0 and type 1 SMBIOS tables so I specify those. However, when I use smbiosview in the UEFI shell, I get back "SMBIOS not found".
>>
>> I attach my current libvirt xml specification for the kvm host.
>>
>> Does anyone have any immediate ideas?
> The SMBIOS fw_cfg interface between QEMU and guest firmware was reworked
> in the QEMU v2.1.0 release (primarily in commit c97294ec1b9e, "SMBIOS:
> Build aggregate smbios tables and entry point", 2014-05-05).
>
> If you use an earlier QEMU release, or else you use a machine type
> earlier than pc-i440fx-2.1, then the new SMBIOS fw_cfg interface is not
> exposed to guest firmware.
>
> And, upstream OVMF never gained patches for the "legacy" SMBIOS fw_cfg
> interface. I had posted patches for that in 2013, but they were not
> accepted. The thread starts here:
>
> [edk2] [PATCH 0/3] OvmfPkg: basic SMBIOS support on QEMU
> https://www.mail-archive.com/edk2-devel@lists.sourceforge.net/msg02917.html
>
> We (RH) carried forward these patches for quite some time in RHEL7 and
> (IIRC) Fedora as well, but QEMU v2.1.0 was released in Aug 2014 if I
> read the git log right, and so we too dropped the downstream-only
> patches at some point, in favor of the new interface.
>
> Based on your libvirt domain xml... It looks likely that you use the
> qemu-kvm package that is part of base RHEL7. That package is based on
> upstream QEMU 1.5.3, and so it indeed lacks support for the "new" SMBIOS
> interface. If you can use CentOS, you could try the qemu-kvm-ev package
> instead. (That one is based on upstream 2.12.)
>
> Alternatively, you could check the "OVMF-20160202-2.gitd7c0dfa.el7"
> package (or earlier), which should (a) still include the
> above-referenced patches, and (b) still run on the 1.5.3-based qemu-kvm
> emulator. (Later OVMF packages would only provide the SMM_REQUIRE
> firmware binary, which does not boot on the 1.5.3-based qemu-kvm emulator.)
>
> Thanks
> Laszlo
Thank you Laszlo, that was incredibly thorough! I should be able to work with this.

Cheers,
Tom

-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.

View/Reply Online (#41586): https://edk2.groups.io/g/devel/message/41586
Mute This Topic: https://groups.io/mt/31822936/1813853
Group Owner: devel+owner at edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub  [edk2-devel-archive at redhat.com]
-=-=-=-=-=-=-=-=-=-=-=-




More information about the edk2-devel-archive mailing list