aboutsummaryrefslogtreecommitdiff
path: root/hw/smbios
diff options
context:
space:
mode:
authorIgor Mammedov <imammedo@redhat.com>2024-03-14 16:23:02 +0100
committerMichael S. Tsirkin <mst@redhat.com>2024-03-18 08:42:46 -0400
commitbb949df637bdb6136a9acca55a2371fe1721e109 (patch)
tree69d04e7ff69f94fa5e1ebbe7f6d9d709972ea224 /hw/smbios
parent86e372ad1e22df373878e5c1cbda2d5026a34331 (diff)
downloadqemu-bb949df637bdb6136a9acca55a2371fe1721e109.zip
qemu-bb949df637bdb6136a9acca55a2371fe1721e109.tar.gz
qemu-bb949df637bdb6136a9acca55a2371fe1721e109.tar.bz2
smbios: add extra comments to smbios_get_table_legacy()
Signed-off-by: Igor Mammedov <imammedo@redhat.com> Message-Id: <20240314152302.2324164-22-imammedo@redhat.com> Reviewed-by: Michael S. Tsirkin <mst@redhat.com> Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
Diffstat (limited to 'hw/smbios')
-rw-r--r--hw/smbios/smbios_legacy.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/hw/smbios/smbios_legacy.c b/hw/smbios/smbios_legacy.c
index 06907cd..c37a8ee 100644
--- a/hw/smbios/smbios_legacy.c
+++ b/hw/smbios/smbios_legacy.c
@@ -151,6 +151,9 @@ uint8_t *smbios_get_table_legacy(size_t *length, Error **errp)
smbios_entries_len = sizeof(uint16_t);
smbios_entries = g_malloc0(smbios_entries_len);
+ /*
+ * build a set of legacy smbios_table entries using user provided blobs
+ */
for (i = 0, usr_offset = 0; usr_blobs_sizes && i < usr_blobs_sizes->len;
i++)
{
@@ -166,6 +169,10 @@ uint8_t *smbios_get_table_legacy(size_t *length, Error **errp)
table->header.length = cpu_to_le16(sizeof(*table) + size);
memcpy(table->data, header, size);
smbios_entries_len += sizeof(*table) + size;
+ /*
+ * update number of entries in the blob,
+ * see SeaBIOS: qemu_cfg_legacy():QEMU_CFG_SMBIOS_ENTRIES
+ */
(*(uint16_t *)smbios_entries) =
cpu_to_le16(le16_to_cpu(*(uint16_t *)smbios_entries) + 1);
usr_offset += size;