<feed xmlns='http://www.w3.org/2005/Atom'>
<title>bwlp/qemu.git/hw/smbios, branch spice_video_codecs</title>
<subtitle>Experimental fork of QEMU with video encoding patches</subtitle>
<id>https://git.openslx.org/bwlp/qemu.git/atom/hw/smbios?h=spice_video_codecs</id>
<link rel='self' href='https://git.openslx.org/bwlp/qemu.git/atom/hw/smbios?h=spice_video_codecs'/>
<link rel='alternate' type='text/html' href='https://git.openslx.org/bwlp/qemu.git/'/>
<updated>2022-11-07T19:08:17+00:00</updated>
<entry>
<title>hw/smbios: add core_count2 to smbios table type 4</title>
<updated>2022-11-07T19:08:17+00:00</updated>
<author>
<name>Julia Suvorova</name>
</author>
<published>2022-10-11T11:17:27+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/bwlp/qemu.git/commit/?id=05e27d74c7dc5318367521f020bf0d4a32228dcc'/>
<id>urn:sha1:05e27d74c7dc5318367521f020bf0d4a32228dcc</id>
<content type='text'>
In order to use the increased number of cpus, we need to bring smbios
tables in line with the SMBIOS 3.0 specification. This allows us to
introduce core_count2 which acts as a duplicate of core_count if we have
fewer cores than 256, and contains the actual core number per socket if
we have more.

core_enabled2 and thread_count2 fields work the same way.

Signed-off-by: Julia Suvorova &lt;jusual@redhat.com&gt;
Reviewed-by: Igor Mammedov &lt;imammedo@redhat.com&gt;
Message-Id: &lt;20220731162141.178443-2-jusual@redhat.com&gt;
Message-Id: &lt;20221011111731.101412-2-jusual@redhat.com&gt;
Reviewed-by: Michael S. Tsirkin &lt;mst@redhat.com&gt;
Signed-off-by: Michael S. Tsirkin &lt;mst@redhat.com&gt;
</content>
</entry>
<entry>
<title>hw/smbios: support for type 8 (port connector)</title>
<updated>2022-10-09T20:38:45+00:00</updated>
<author>
<name>Hal Martin</name>
</author>
<published>2022-08-12T13:51:53+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/bwlp/qemu.git/commit/?id=fd8caa253c56ed126c09d3b9cc682753ff12218f'/>
<id>urn:sha1:fd8caa253c56ed126c09d3b9cc682753ff12218f</id>
<content type='text'>
PATCH v1: add support for SMBIOS type 8 to qemu
PATCH v2: incorporate patch v1 feedback and add smbios type=8 to qemu-options

internal_reference: internal reference designator
external_reference: external reference designator
connector_type: hex value for port connector type (see SMBIOS 7.9.2)
port_type: hex value for port type (see SMBIOS 7.9.3)

After studying various vendor implementationsi (Dell, Lenovo, MSI),
the value of internal connector type was hard-coded to 0x0 (None).

Example usage:
-smbios type=8,internal_reference=JUSB1,external_reference=USB1,connector_type=0x12,port_type=0x10 \
-smbios type=8,internal_reference=JAUD1,external_reference="Audio Jack",connector_type=0x1f,port_type=0x1d \
-smbios type=8,internal_reference=LAN,external_reference=Ethernet,connector_type=0x0b,port_type=0x1f \
-smbios type=8,internal_reference=PS2,external_reference=Mouse,connector_type=0x0f,port_type=0x0e \
-smbios type=8,internal_reference=PS2,external_reference=Keyboard,connector_type=0x0f,port_type=0x0d

Signed-off-by: Hal Martin &lt;hal.martin@gmail.com&gt;

Message-Id: &lt;20220812135153.17859-1-hal.martin@gmail.com&gt;
Reviewed-by: Michael S. Tsirkin &lt;mst@redhat.com&gt;
Signed-off-by: Michael S. Tsirkin &lt;mst@redhat.com&gt;
</content>
</entry>
<entry>
<title>smbios: sanitize type from external type before checking have_fields_bitmap</title>
<updated>2022-09-18T07:17:40+00:00</updated>
<author>
<name>Paolo Bonzini</name>
</author>
<published>2022-09-05T10:32:44+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/bwlp/qemu.git/commit/?id=57e3069641d057a9ca90bb603c86477d5b331ecd'/>
<id>urn:sha1:57e3069641d057a9ca90bb603c86477d5b331ecd</id>
<content type='text'>
test_bit uses header-&gt;type as an offset; if the file incorrectly specifies a
type greater than 127, smbios_entry_add will read and write garbage.

To fix this, just pass the smbios data through, assuming the user knows what
to do.  Reported by Coverity as CID 1487255.

Signed-off-by: Paolo Bonzini &lt;pbonzini@redhat.com&gt;
</content>
</entry>
<entry>
<title>hw/smbios: Add table 4 parameter, "processor-id"</title>
<updated>2022-03-06T10:28:55+00:00</updated>
<author>
<name>Patrick Venture</name>
</author>
<published>2022-01-25T16:31:18+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/bwlp/qemu.git/commit/?id=cb5fb04fe6805bafc46534637d701874835315fe'/>
<id>urn:sha1:cb5fb04fe6805bafc46534637d701874835315fe</id>
<content type='text'>
This parameter is to be used in the processor_id entry in the type 4
table.

This parameter is set as optional and if left will use the values from
the CPU model.

This enables hiding the host information from the guest and allowing AMD
VMs to run pretending to be Intel for some userspace software concerns.

Reviewed-by: Peter Foley &lt;pefoley@google.com&gt;
Reviewed-by: Titus Rwantare &lt;titusr@google.com&gt;
Signed-off-by: Patrick Venture &lt;venture@google.com&gt;
Reviewed-by: Igor Mammedov &lt;imammedo@redhat.com&gt;
Message-Id: &lt;20220125163118.1011809-1-venture@google.com&gt;
Reviewed-by: Michael S. Tsirkin &lt;mst@redhat.com&gt;
Signed-off-by: Michael S. Tsirkin &lt;mst@redhat.com&gt;
</content>
</entry>
<entry>
<title>hw/smbios: add assertion to ensure handles of tables 19 and 32 do not collide</title>
<updated>2022-03-04T13:30:52+00:00</updated>
<author>
<name>Ani Sinha</name>
</author>
<published>2022-02-23T14:33:22+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/bwlp/qemu.git/commit/?id=63670bd3fce3d0c033d939d1b2b7a5f6834d0cf3'/>
<id>urn:sha1:63670bd3fce3d0c033d939d1b2b7a5f6834d0cf3</id>
<content type='text'>
Since change dcf359832eec02 ("hw/smbios: fix table memory corruption with large memory vms")
we reserve additional space between handle numbers of tables 17 and 19 for
large VMs. This may cause table 19 to collide with table 32 in their handle
numbers for those large VMs. This change adds an assertion to ensure numbers
do not collide. If they do, qemu crashes with useful debug information for
taking additional steps.

Signed-off-by: Ani Sinha &lt;ani@anisinha.ca&gt;
Reviewed-by: Igor Mammedov &lt;imammedo@redhat.com&gt;
Message-Id: &lt;20220223143322.927136-8-ani@anisinha.ca&gt;
Reviewed-by: Michael S. Tsirkin &lt;mst@redhat.com&gt;
Signed-off-by: Michael S. Tsirkin &lt;mst@redhat.com&gt;
</content>
</entry>
<entry>
<title>hw/smbios: fix overlapping table handle numbers with large memory vms</title>
<updated>2022-03-04T13:30:52+00:00</updated>
<author>
<name>Ani Sinha</name>
</author>
<published>2022-02-23T14:33:21+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/bwlp/qemu.git/commit/?id=a379d4550c4a949bb1ca51bc5272d68b4a619b18'/>
<id>urn:sha1:a379d4550c4a949bb1ca51bc5272d68b4a619b18</id>
<content type='text'>
The current smbios table implementation splits the main memory in 16 GiB
(DIMM like) chunks. With the current smbios table assignment code, we can have
only 512 such chunks before the 16 bit handle numbers in the header for tables
17 and 19 conflict. A guest with more than 8 TiB of memory will hit this
limitation and would fail with the following assertion in isa-debugcon:

ASSERT_EFI_ERROR (Status = Already started)
ASSERT /builddir/build/BUILD/edk2-ca407c7246bf/OvmfPkg/SmbiosPlatformDxe/SmbiosPlatformDxe.c(125): !EFI_ERROR (Status)

This change adds an additional offset between tables 17 and 19 handle numbers
when configuring VMs larger than 8 TiB of memory. The value of the offset is
calculated to be equal to the additional space required to be reserved
in order to accomodate more DIMM entries without the table handles colliding.
In normal cases where the VM memory is smaller or equal to 8 TiB, this offset
value is 0. Hence in this case, no additional handle numbers are reserved and
table handle values remain as before.

Since smbios memory is not transmitted over the wire during migration,
this change can break migration for large memory vms if the guest is in the
middle of generating the tables during migration. However, in those
situations, qemu generates invalid table handles anyway with or without this
fix. Hence, we do not preserve the old bug by introducing compat knobs/machine
types.

Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=2023977

Signed-off-by: Ani Sinha &lt;ani@anisinha.ca&gt;
Reviewed-by: Igor Mammedov &lt;imammedo@redhat.com&gt;
Message-Id: &lt;20220223143322.927136-7-ani@anisinha.ca&gt;
Reviewed-by: Michael S. Tsirkin &lt;mst@redhat.com&gt;
Signed-off-by: Michael S. Tsirkin &lt;mst@redhat.com&gt;
</content>
</entry>
<entry>
<title>hw/smbios: code cleanup - use macro definitions for table header handles</title>
<updated>2022-03-04T13:30:52+00:00</updated>
<author>
<name>Ani Sinha</name>
</author>
<published>2022-02-23T14:33:20+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/bwlp/qemu.git/commit/?id=3818acf56480ae07f8801f9255b82fe587ef39c1'/>
<id>urn:sha1:3818acf56480ae07f8801f9255b82fe587ef39c1</id>
<content type='text'>
This is a minor cleanup. Using macro definitions makes the code more
readable. It is at once clear which tables use which handle numbers in their
header. It also makes it easy to calculate the gaps between the numbers and
update them if needed.

Reviewed-by: Igor Mammedov &lt;imammedo@redhat.com&gt;
Signed-off-by: Ani Sinha &lt;ani@anisinha.ca&gt;
Message-Id: &lt;20220223143322.927136-6-ani@anisinha.ca&gt;
Reviewed-by: Michael S. Tsirkin &lt;mst@redhat.com&gt;
Signed-off-by: Michael S. Tsirkin &lt;mst@redhat.com&gt;
Reviewed-by: Philippe Mathieu-Daudé &lt;f4bug@amsat.org&gt;
</content>
</entry>
<entry>
<title>smbios: Rename SMBIOS_ENTRY_POINT_* enums</title>
<updated>2022-01-07T10:19:55+00:00</updated>
<author>
<name>Eduardo Habkost</name>
</author>
<published>2021-10-26T15:10:58+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/bwlp/qemu.git/commit/?id=10be11d0b48f508646509844bc32b983d4204d2b'/>
<id>urn:sha1:10be11d0b48f508646509844bc32b983d4204d2b</id>
<content type='text'>
Rename the enums to match the naming style used by QAPI, and to
use "32" and "64" instead of "20" and "31".  This will allow us
to more easily move the enum to the QAPI schema later.

About the naming choice: "SMBIOS 2.1 entry point"/"SMBIOS 3.0
entry point" and "32-bit entry point"/"64-bit entry point" are
synonymous in the SMBIOS specification.  However, the phrases
"32-bit entry point" and "64-bit entry point" are used more often.

The new names also avoid confusion between the entry point format
and the actual SMBIOS version reported in the entry point
structure.  For example: currently the 32-bit entry point
actually report SMBIOS 2.8 support, not 2.1.

Based on portions of a patch submitted by Daniel P. Berrangé.

Signed-off-by: Eduardo Habkost &lt;ehabkost@redhat.com&gt;
Message-Id: &lt;20211026151100.1691925-2-ehabkost@redhat.com&gt;
Reviewed-by: Philippe Mathieu-Daudé &lt;philmd@redhat.com&gt;
Reviewed-by: Michael S. Tsirkin &lt;mst@redhat.com&gt;
Signed-off-by: Michael S. Tsirkin &lt;mst@redhat.com&gt;
</content>
</entry>
<entry>
<title>hw/smbios: support for type 41 (onboard devices extended information)</title>
<updated>2021-05-14T14:26:18+00:00</updated>
<author>
<name>Vincent Bernat</name>
</author>
<published>2021-04-01T17:11:38+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/bwlp/qemu.git/commit/?id=05dfb447a4e11b32d4ed94f73629c497235fc3dc'/>
<id>urn:sha1:05dfb447a4e11b32d4ed94f73629c497235fc3dc</id>
<content type='text'>
Type 41 defines the attributes of devices that are onboard. The
original intent was to imply the BIOS had some level of control over
the enablement of the associated devices.

If network devices are present in this table, by default, udev will
name the corresponding interfaces enoX, X being the instance number.
Without such information, udev will fallback to using the PCI ID and
this usually gives ens3 or ens4. This can be a bit annoying as the
name of the network card may depend on the order of options and may
change if a new PCI device is added earlier on the commande line.
Being able to provide SMBIOS type 41 entry ensure the name of the
interface won't change and helps the user guess the right name without
booting a first time.

This can be invoked with:

    $QEMU -netdev user,id=internet
          -device virtio-net-pci,mac=50:54:00:00:00:42,netdev=internet,id=internet-dev \
          -smbios type=41,designation='Onboard LAN',instance=1,kind=ethernet,pcidev=internet-dev

The PCI segment is assumed to be 0. This should hold true for most
cases.

    $ dmidecode -t 41
    # dmidecode 3.3
    Getting SMBIOS data from sysfs.
    SMBIOS 2.8 present.

    Handle 0x2900, DMI type 41, 11 bytes
    Onboard Device
            Reference Designation: Onboard LAN
            Type: Ethernet
            Status: Enabled
            Type Instance: 1
            Bus Address: 0000:00:09.0

    $ ip -brief a
    lo               UNKNOWN        127.0.0.1/8 ::1/128
    eno1             UP             10.0.2.14/24 fec0::5254:ff:fe00:42/64 fe80::5254:ff:fe00:42/64

Signed-off-by: Vincent Bernat &lt;vincent@bernat.ch&gt;
Message-Id: &lt;20210401171138.62970-1-vincent@bernat.ch&gt;
Reviewed-by: Michael S. Tsirkin &lt;mst@redhat.com&gt;
Signed-off-by: Michael S. Tsirkin &lt;mst@redhat.com&gt;
</content>
</entry>
<entry>
<title>i386: do not use ram_size global</title>
<updated>2020-12-10T17:15:08+00:00</updated>
<author>
<name>Paolo Bonzini</name>
</author>
<published>2020-10-28T10:22:23+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/bwlp/qemu.git/commit/?id=86378b29fa22a9854a084241bf51515e149133e4'/>
<id>urn:sha1:86378b29fa22a9854a084241bf51515e149133e4</id>
<content type='text'>
Use the loader parameters instead.

Signed-off-by: Paolo Bonzini &lt;pbonzini@redhat.com&gt;
</content>
</entry>
</feed>
