Hello community, here is the log from the commit of package pciutils for openSUSE:Leap:15.2 checked in at 2020-06-08 13:44:18 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Leap:15.2/pciutils (Old) and /work/SRC/openSUSE:Leap:15.2/.pciutils.new.3606 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "pciutils" Mon Jun 8 13:44:18 2020 rev:17 rq:811815 version:3.5.6 Changes: -------- --- /work/SRC/openSUSE:Leap:15.2/pciutils/pciutils.changes 2020-01-15 15:39:28.791113813 +0100 +++ /work/SRC/openSUSE:Leap:15.2/.pciutils.new.3606/pciutils.changes 2020-06-08 13:44:18.803015700 +0200 @@ -1,0 +2,9 @@ +Thu May 21 15:27:52 UTC 2020 - Michal Suchanek <[email protected]> + +- Fix lspci outputs few of the VPD data fields are displayed as unknown (bsc#1170554, ltc#185587). + Added: + * pciutils-VPD-When-printing-item-IDs-escape-non-ASCII-characte.patch + * pciutils-VPD-Cleanup.patch + * pciutils-Add-decoding-of-vendor-specific-VPD-fields.patch + +------------------------------------------------------------------- New: ---- pciutils-Add-decoding-of-vendor-specific-VPD-fields.patch pciutils-VPD-Cleanup.patch pciutils-VPD-When-printing-item-IDs-escape-non-ASCII-characte.patch ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ pciutils.spec ++++++ --- /var/tmp/diff_new_pack.Lcb92N/_old 2020-06-08 13:44:19.171016780 +0200 +++ /var/tmp/diff_new_pack.Lcb92N/_new 2020-06-08 13:44:19.175016791 +0200 @@ -31,6 +31,9 @@ Patch1: pciutils-3.1.9_pkgconfig.patch Patch2: pciutils-ocloexec.patch Patch3: pciutils-endianh.patch +Patch4: pciutils-VPD-When-printing-item-IDs-escape-non-ASCII-characte.patch +Patch5: pciutils-Add-decoding-of-vendor-specific-VPD-fields.patch +Patch6: pciutils-VPD-Cleanup.patch BuildRequires: pkgconfig BuildRequires: pkgconfig(libkmod) BuildRequires: pkgconfig(zlib) @@ -65,10 +68,7 @@ %prep %setup -q -%patch0 -p1 -%patch1 -p1 -%patch2 -p1 -%patch3 -p1 +%autopatch -p1 %build make %{?_smp_mflags} OPT="%{optflags}" PREFIX=%{_prefix} LIBDIR=/%{_lib} SBINDIR=/sbin STRIP="" SHARED="yes" ++++++ pciutils-Add-decoding-of-vendor-specific-VPD-fields.patch ++++++ >From eff7cc9ee7f8b6efeb7d5854abbcfb8cdc486a95 Mon Sep 17 00:00:00 2001 From: "return.0" <[email protected]> Date: Mon, 18 Jun 2018 17:00:31 -0500 Subject: [PATCH] pciutils: Add decoding of vendor specific VPD fields References: bsc#1170554 ltc#185587 Upstream: v3.6.0 Git-commit: eff7cc9ee7f8b6efeb7d5854abbcfb8cdc486a95 IBM has defined several VPD fields that are not part of the PCI spec, but are frequently used on embedded and pluggable pcie adapters. Since these fields are "Unknown", they are listed in hex and less readable. This patch adds commonly used vendor specific VPD keywords described in "Table 160. LoPAPR VPD Fields" of the Linux on Power Architecture Platform Reference (LoPAPR). Signed-off-by: John Walthour <[email protected]> --- ls-vpd.c | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/ls-vpd.c b/ls-vpd.c index b79abfc..cc279c3 100644 --- a/ls-vpd.c +++ b/ls-vpd.c @@ -41,6 +41,19 @@ static const struct vpd_item { { 'Y','A', F_TEXT, "Asset tag" }, { 'V', 0 , F_TEXT, "Vendor specific" }, { 'Y', 0 , F_TEXT, "System specific" }, +/* + * The following VPD keywords are vendor specific or not part of any + * current PCI-SIG specification + */ + { 'C','C', F_TEXT, "CCIN" }, + { 'F','C', F_TEXT, "Feature code" }, + { 'F','N', F_TEXT, "FRU" }, + { 'N','A', F_TEXT, "Network address" }, + { 'R','M', F_TEXT, "Firmware version" }, + { 'Z', 0 , F_TEXT, "Product specific" }, +/* + * End vendor specific VPD keywords + */ { 0, 0 , F_BINARY, "Unknown" } }; -- 2.26.2 ++++++ pciutils-VPD-Cleanup.patch ++++++ >From d9b702cde8550b245defa130f3d93a5b34ae68d7 Mon Sep 17 00:00:00 2001 From: Martin Mares <[email protected]> Date: Tue, 19 Jun 2018 11:44:42 +0200 Subject: [PATCH] VPD: Cleanup References: bsc#1170554 ltc#185587 Upstream: v3.6.0 Git-commit: d9b702cde8550b245defa130f3d93a5b34ae68d7 --- ls-vpd.c | 20 +++++++------------- 1 file changed, 7 insertions(+), 13 deletions(-) diff --git a/ls-vpd.c b/ls-vpd.c index cc279c3..37217f0 100644 --- a/ls-vpd.c +++ b/ls-vpd.c @@ -41,19 +41,13 @@ static const struct vpd_item { { 'Y','A', F_TEXT, "Asset tag" }, { 'V', 0 , F_TEXT, "Vendor specific" }, { 'Y', 0 , F_TEXT, "System specific" }, -/* - * The following VPD keywords are vendor specific or not part of any - * current PCI-SIG specification - */ - { 'C','C', F_TEXT, "CCIN" }, - { 'F','C', F_TEXT, "Feature code" }, - { 'F','N', F_TEXT, "FRU" }, - { 'N','A', F_TEXT, "Network address" }, - { 'R','M', F_TEXT, "Firmware version" }, - { 'Z', 0 , F_TEXT, "Product specific" }, -/* - * End vendor specific VPD keywords - */ + /* Non-standard extensions */ + { 'C','C', F_TEXT, "CCIN" }, + { 'F','C', F_TEXT, "Feature code" }, + { 'F','N', F_TEXT, "FRU" }, + { 'N','A', F_TEXT, "Network address" }, + { 'R','M', F_TEXT, "Firmware version" }, + { 'Z', 0 , F_TEXT, "Product specific" }, { 0, 0 , F_BINARY, "Unknown" } }; -- 2.26.2 ++++++ pciutils-VPD-When-printing-item-IDs-escape-non-ASCII-characte.patch ++++++ >From 726b641b0dd842b920f7e1c985cb4a22494fe466 Mon Sep 17 00:00:00 2001 From: Martin Mares <[email protected]> Date: Sat, 25 Jan 2020 20:42:03 +0100 Subject: [PATCH] VPD: When printing item IDs, escape non-ASCII characters References: bsc#1170554 ltc#185587 Upstream: v3.6.4 Git-commit: 726b641b0dd842b920f7e1c985cb4a22494fe466 --- ls-vpd.c | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/ls-vpd.c b/ls-vpd.c index 37217f0..92627e4 100644 --- a/ls-vpd.c +++ b/ls-vpd.c @@ -10,6 +10,7 @@ */ #include <stdio.h> +#include <string.h> #include "lspci.h" @@ -156,13 +157,14 @@ cap_vpd(struct device *d) { word read_len; const struct vpd_item *item; - byte id1, id2; + byte id[2], id1, id2; if (!read_vpd(d, res_addr + part_pos, buf, 3, &csum)) break; part_pos += 3; - id1 = buf[0]; - id2 = buf[1]; + memcpy(id, buf, 2); + id1 = id[0]; + id2 = id[1]; part_len = buf[2]; if (part_len > res_len - part_pos) break; @@ -178,7 +180,9 @@ cap_vpd(struct device *d) if (!read_vpd(d, res_addr + part_pos, buf, read_len, &csum)) break; - printf("\t\t\t[%c%c] %s: ", id1, id2, item->name); + printf("\t\t\t["); + print_vpd_string(id, 2); + printf("] %s: ", item->name); switch (item->format) { -- 2.26.2
