Hello community, here is the log from the commit of package dmidecode for openSUSE:Leap:15.2 checked in at 2020-02-10 16:40:55 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Leap:15.2/dmidecode (Old) and /work/SRC/openSUSE:Leap:15.2/.dmidecode.new.26092 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "dmidecode" Mon Feb 10 16:40:55 2020 rev:17 rq:770734 version:3.2 Changes: -------- --- /work/SRC/openSUSE:Leap:15.2/dmidecode/dmidecode.changes 2020-01-15 14:52:33.401493576 +0100 +++ /work/SRC/openSUSE:Leap:15.2/.dmidecode.new.26092/dmidecode.changes 2020-02-10 16:40:56.303681544 +0100 @@ -1,0 +2,16 @@ +Wed Dec 18 11:08:18 UTC 2019 - Jean Delvare <jdelv...@suse.de> + +Partial support for SMBIOS 3.3.0: +- dmidecode-add-enumerated-values-from-smbios-3.3.0.patch: Add + enumerated values from SMBIOS 3.3.0 (bsc#1153533 bsc#1158833 + jsc#SLE-10875). + +3 recommended fixes from upstream: +- dmidecode-only-scan-dev-mem-for-entry-point-on-x86.patch: Only + scan /dev/mem for entry point on x86 (fixes reboot on ARM64). +- dmidecode-fix-formatting-of-tpm-table-output.patch: Fix + formatting of TPM table output (missing newlines). +- dmidecode-fix-system-slot-information-for-pcie-ssd.patch: Fix + System Slot Information for PCIe SSD. + +------------------------------------------------------------------- New: ---- dmidecode-add-enumerated-values-from-smbios-3.3.0.patch dmidecode-fix-formatting-of-tpm-table-output.patch dmidecode-fix-system-slot-information-for-pcie-ssd.patch dmidecode-only-scan-dev-mem-for-entry-point-on-x86.patch ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ dmidecode.spec ++++++ --- /var/tmp/diff_new_pack.VsDfez/_old 2020-02-10 16:40:56.847681928 +0100 +++ /var/tmp/diff_new_pack.VsDfez/_new 2020-02-10 16:40:56.867681942 +0100 @@ -29,6 +29,10 @@ Source2: %{name}.keyring Patch1: dmidecode-fix-redfish-hostname-print-length.patch Patch2: dmidecode-add-logical-non-volatile-device.patch +Patch3: dmidecode-only-scan-dev-mem-for-entry-point-on-x86.patch +Patch4: dmidecode-fix-formatting-of-tpm-table-output.patch +Patch5: dmidecode-fix-system-slot-information-for-pcie-ssd.patch +Patch6: dmidecode-add-enumerated-values-from-smbios-3.3.0.patch Provides: pmtools:%{_sbindir}/dmidecode Obsoletes: pmtools < 20071117 BuildRoot: %{_tmppath}/%{name}-%{version}-build @@ -53,6 +57,10 @@ %setup -q %patch1 -p1 %patch2 -p1 +%patch3 -p1 +%patch4 -p1 +%patch5 -p1 +%patch6 -p1 %build make CFLAGS="%{optflags}" %{?_smp_mflags} ++++++ dmidecode-add-enumerated-values-from-smbios-3.3.0.patch ++++++ From: Jean Delvare <jdelv...@suse.de> Date: Wed, 23 Oct 2019 12:44:13 +0200 Subject: dmidecode: Add enumerated values from SMBIOS 3.3.0 Git-commit: 3fa833fd78ff5eb74f9459e061e26e063ed648d5 Patch-mainline: yes References: bsc#1153533 bsc#1158833 jsc#SLE-10875 Add all the enumerated values from the SMBIOS 3.3.0 specification update that was released last month. Signed-off-by: Jean Delvare <jdelv...@suse.de> Reviewed-by: Jerry Hoemann <jerry.hoem...@hpe.com> --- dmidecode.c | 44 +++++++++++++++++++++++++++++++++++--------- 1 file changed, 35 insertions(+), 9 deletions(-) --- a/dmidecode.c +++ b/dmidecode.c @@ -932,6 +932,10 @@ static const char *dmi_processor_family( { 0x140, "WinChip" }, { 0x15E, "DSP" }, { 0x1F4, "Video Processor" }, + + { 0x200, "RV32" }, + { 0x201, "RV64" }, + { 0x202, "RV128" }, }; /* * Note to developers: when adding entries to this list, check if @@ -1815,6 +1819,9 @@ static const char *dmi_slot_type(u8 code "PCI Express Mini 52-pin without bottom-side keep-outs", "PCI Express Mini 76-pin" /* 0x23 */ }; + static const char *type_0x30[] = { + "CXL FLexbus 1.0" /* 0x30 */ + }; static const char *type_0xA0[] = { "PC-98/C20", /* 0xA0 */ "PC-98/C24", @@ -1838,7 +1845,14 @@ static const char *dmi_slot_type(u8 code "PCI Express 3 x2", "PCI Express 3 x4", "PCI Express 3 x8", - "PCI Express 3 x16" /* 0xB6 */ + "PCI Express 3 x16", + out_of_spec, /* 0xB7 */ + "PCI Express 4", + "PCI Express 4 x1", + "PCI Express 4 x2", + "PCI Express 4 x4", + "PCI Express 4 x8", + "PCI Express 4 x16" /* 0xBD */ }; /* * Note to developers: when adding entries to these lists, check if @@ -1847,7 +1861,9 @@ static const char *dmi_slot_type(u8 code if (code >= 0x01 && code <= 0x23) return type[code - 0x01]; - if (code >= 0xA0 && code <= 0xB6) + if (code == 0x30) + return type_0x30[code - 0x30]; + if (code >= 0xA0 && code <= 0xBD) return type_0xA0[code - 0xA0]; return out_of_spec; } @@ -1951,6 +1967,12 @@ static void dmi_slot_id(u8 code1, u8 cod case 0xB4: /* PCI Express 3 */ case 0xB5: /* PCI Express 3 */ case 0xB6: /* PCI Express 3 */ + case 0xB8: /* PCI Express 4 */ + case 0xB9: /* PCI Express 4 */ + case 0xBA: /* PCI Express 4 */ + case 0xBB: /* PCI Express 4 */ + case 0xBC: /* PCI Express 4 */ + case 0xBD: /* PCI Express 4 */ printf("%sID: %u\n", prefix, code1); break; case 0x07: /* PCMCIA */ @@ -2292,12 +2314,13 @@ static const char *dmi_memory_array_loca "PC-98/C20 Add-on Card", /* 0xA0 */ "PC-98/C24 Add-on Card", "PC-98/E Add-on Card", - "PC-98/Local Bus Add-on Card" /* 0xA3 */ + "PC-98/Local Bus Add-on Card", + "CXL Flexbus 1.0" /* 0xA4 */ }; if (code >= 0x01 && code <= 0x0A) return location[code - 0x01]; - if (code >= 0xA0 && code <= 0xA3) + if (code >= 0xA0 && code <= 0xA4) return location_0xA0[code - 0xA0]; return out_of_spec; } @@ -2420,10 +2443,11 @@ static const char *dmi_memory_device_for "RIMM", "SODIMM", "SRIMM", - "FB-DIMM" /* 0x0F */ + "FB-DIMM", + "Die" /* 0x10 */ }; - if (code >= 0x01 && code <= 0x0F) + if (code >= 0x01 && code <= 0x10) return form_factor[code - 0x01]; return out_of_spec; } @@ -2472,10 +2496,12 @@ static const char *dmi_memory_device_typ "LPDDR2", "LPDDR3", "LPDDR4", - "Logical non-volatile device" /* 0x1F */ + "Logical non-volatile device", + "HBM", + "HBM2" /* 0x21 */ }; - if (code >= 0x01 && code <= 0x1F) + if (code >= 0x01 && code <= 0x21) return type[code - 0x01]; return out_of_spec; } @@ -2531,7 +2557,7 @@ static void dmi_memory_technology(u8 cod "NVDIMM-N", "NVDIMM-F", "NVDIMM-P", - "Intel persistent memory" /* 0x07 */ + "Intel Optane DC persistent memory" /* 0x07 */ }; if (code >= 0x01 && code <= 0x07) printf(" %s", technology[code - 0x01]); ++++++ dmidecode-fix-formatting-of-tpm-table-output.patch ++++++ From: Deomid rojer Ryabkov <roj...@fb.com> Date: Mon, 26 Aug 2019 14:20:15 +0200 Subject: Fix formatting of TPM table output Git-commit: 1d0db85949a5bdd96375f6131d393a11204302a6 Patch-mainline: yes Added missing newlines. Fixes: 48a8132058a0 ("dmidecode: Add support for structure type 43 (TPM Device)") --- dmidecode.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) --- dmidecode-3.2.orig/dmidecode.c 2019-08-26 14:35:26.209257695 +0200 +++ dmidecode-3.2/dmidecode.c 2019-08-26 14:35:28.271284010 +0200 @@ -4991,7 +4991,7 @@ static void dmi_decode(const struct dmi_ printf("\tVendor ID:"); dmi_tpm_vendor_id(data + 0x04); printf("\n"); - printf("\tSpecification Version: %d.%d", data[0x08], data[0x09]); + printf("\tSpecification Version: %d.%d\n", data[0x08], data[0x09]); switch (data[0x08]) { case 0x01: @@ -5014,7 +5014,7 @@ static void dmi_decode(const struct dmi_ */ break; } - printf("\tDescription: %s", dmi_string(h, data[0x12])); + printf("\tDescription: %s\n", dmi_string(h, data[0x12])); printf("\tCharacteristics:\n"); dmi_tpm_characteristics(QWORD(data + 0x13), "\t\t"); if (h->length < 0x1F) break; ++++++ dmidecode-fix-system-slot-information-for-pcie-ssd.patch ++++++ From: Prabhakar pujeri <prabhakar.puj...@dell.com> Date: Tue, 15 Oct 2019 14:24:46 +0200 Subject: dmidecode: Fix System Slot Information for PCIe SSD Git-commit: fd08479625b5845e4d725ab628628f7ebfccc407 Patch-mainline: yes Output for type 9 show <out of spec> for PCIe SSD. SMBIOS spec table 48 describes 2.5" and 3.5" PCIe SSD formats. Signed-off-by: Prabhakar pujeri <prabhakar.puj...@dell.com> Signed-off-by: Jean Delvare <jdelv...@suse.de> --- dmidecode.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) --- a/dmidecode.c +++ b/dmidecode.c @@ -1900,10 +1900,12 @@ static const char *dmi_slot_length(u8 co "Other", /* 0x01 */ "Unknown", "Short", - "Long" /* 0x04 */ + "Long", + "2.5\" drive form factor", + "3.5\" drive form factor" /* 0x06 */ }; - if (code >= 0x01 && code <= 0x04) + if (code >= 0x01 && code <= 0x06) return length[code - 0x01]; return out_of_spec; } ++++++ dmidecode-only-scan-dev-mem-for-entry-point-on-x86.patch ++++++ From: Jean Delvare <jdelv...@suse.de> Date: Mon, 26 Aug 2019 14:20:15 +0200 Subject: dmidecode: Only scan /dev/mem for entry point on x86 Git-commit: e12ec26e19e02281d3e7258c3aabb88a5cf5ec1d Patch-mainline: yes x86 is the only architecture which can have a DMI entry point scanned from /dev/mem. Do not attempt it on other architectures, because not only it can't work, but it can even cause the system to reboot. This fixes support request #109697: https://savannah.nongnu.org/support/?109697 --- dmidecode.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) --- dmidecode-3.2.orig/dmidecode.c 2019-08-26 14:35:22.767213766 +0200 +++ dmidecode-3.2/dmidecode.c 2019-08-26 14:35:26.209257695 +0200 @@ -2,7 +2,7 @@ * DMI Decode * * Copyright (C) 2000-2002 Alan Cox <a...@redhat.com> - * Copyright (C) 2002-2018 Jean Delvare <jdelv...@suse.de> + * Copyright (C) 2002-2019 Jean Delvare <jdelv...@suse.de> * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -5535,7 +5535,7 @@ int main(int argc, char * const argv[]) off_t fp; size_t size; int efi; - u8 *buf; + u8 *buf = NULL; /* * We don't want stdout and stderr to be mixed up if both are @@ -5639,7 +5639,7 @@ int main(int argc, char * const argv[]) printf("Failed to get SMBIOS data from sysfs.\n"); } - /* Next try EFI (ia64, Intel-based Mac) */ + /* Next try EFI (ia64, Intel-based Mac, arm64) */ efi = address_from_efi(&fp); switch (efi) { @@ -5672,6 +5672,7 @@ int main(int argc, char * const argv[]) goto done; memory_scan: +#if defined __i386__ || defined __x86_64__ if (!(opt.flags & FLAG_QUIET)) printf("Scanning %s for entry point.\n", opt.devmem); /* Fallback to memory scan (x86, x86_64) */ @@ -5714,6 +5715,7 @@ int main(int argc, char * const argv[]) } } } +#endif done: if (!found && !(opt.flags & FLAG_QUIET))