From fe8eeca2c80bcbf29408cd555403a036e756ad2d Mon Sep 17 00:00:00 2001 From: CentOS Sources Date: Tue, 18 May 2021 02:53:23 -0400 Subject: [PATCH] import lsvpd-1.7.11-2.el8 --- ...436fdd467acd70c9fefa471570681d31e619.patch | 43 +++++++++++++++++ ...870797f732129b4d2703a37461dac7c27098.patch | 26 ++++++++++ ...38452b8299f1a7f8e9a94259b25218a92acc.patch | 47 +++++++++++++++++++ SPECS/lsvpd.spec | 37 +++++++++------ 4 files changed, 138 insertions(+), 15 deletions(-) create mode 100644 SOURCES/lsvpd-1.7.11-0359436fdd467acd70c9fefa471570681d31e619.patch create mode 100644 SOURCES/lsvpd-1.7.11-cc99870797f732129b4d2703a37461dac7c27098.patch create mode 100644 SOURCES/lsvpd-1.7.11-fa1638452b8299f1a7f8e9a94259b25218a92acc.patch diff --git a/SOURCES/lsvpd-1.7.11-0359436fdd467acd70c9fefa471570681d31e619.patch b/SOURCES/lsvpd-1.7.11-0359436fdd467acd70c9fefa471570681d31e619.patch new file mode 100644 index 0000000..2c7d54e --- /dev/null +++ b/SOURCES/lsvpd-1.7.11-0359436fdd467acd70c9fefa471570681d31e619.patch @@ -0,0 +1,43 @@ +commit 0359436fdd467acd70c9fefa471570681d31e619 +Author: Vasant Hegde +Date: Sun Jan 24 22:37:38 2021 +0530 + + sysfs: Fix PCI device manufacturer parsing logic + + If we fail to get manufacturer name using subsystem vendor ID + then use vendor ID to get manufacturer name. + + Sample output diff with the this fix: + ------------------------------------ + *AX 0032:00 + *YL 0032:00 + *FC + -*DS usb-xhci (00008241) + +*DS usb-xhci (104c8241) + *AX 0005:01:00.0 + *AX wakeup0 + *AX usbmon1 + *AX usbmon2 + *AX usb-xhci + -*MF Unknown + +*MF Texas Instruments + *TM TUSB73x0 SuperSpeed USB 3.0 xHCI Host Controller + -*CD 00008241 + +*CD 104c8241 + + Signed-off-by: Vasant Hegde + +diff --git a/src/internal/sys_interface/sysfstreecollector.cpp b/src/internal/sys_interface/sysfstreecollector.cpp +index 70fcc1b..9e808de 100644 +--- a/src/internal/sys_interface/sysfstreecollector.cpp ++++ b/src/internal/sys_interface/sysfstreecollector.cpp +@@ -1434,7 +1434,8 @@ ERROR: + if( mPciTable != NULL ) + { + // Fill Manufacturer Name +- if( subMan == UNKNOWN_ID ) ++ if( subMan == UNKNOWN_ID || ++ (mPciTable->getName( subMan ) == "Unknown") ) + { + if( manID != UNKNOWN_ID ) + { diff --git a/SOURCES/lsvpd-1.7.11-cc99870797f732129b4d2703a37461dac7c27098.patch b/SOURCES/lsvpd-1.7.11-cc99870797f732129b4d2703a37461dac7c27098.patch new file mode 100644 index 0000000..c7a55c2 --- /dev/null +++ b/SOURCES/lsvpd-1.7.11-cc99870797f732129b4d2703a37461dac7c27098.patch @@ -0,0 +1,26 @@ +commit cc99870797f732129b4d2703a37461dac7c27098 +Author: Vasant Hegde +Date: Fri Jan 22 18:41:44 2021 +0530 + + nvme: Populate NVMe firmware version + + Looks like NVMe firmware version is added as `firmware_rev` + property in sysfs. Also its not available in `vpd` blob. + Hence add explicit logic to parse sysfs property. + + Signed-off-by: Vasant Hegde + +diff --git a/src/internal/sys_interface/sysfstreecollector.cpp b/src/internal/sys_interface/sysfstreecollector.cpp +index 4404013..70fcc1b 100644 +--- a/src/internal/sys_interface/sysfstreecollector.cpp ++++ b/src/internal/sys_interface/sysfstreecollector.cpp +@@ -1794,6 +1794,9 @@ ERROR: + + fillMe->mFirmwareLevel.setValue( getAttrValue( classNode, + "fwrev" ), 30, __FILE__, __LINE__ ); ++ ++ fillMe->mFirmwareVersion.setValue( getAttrValue( classNode, ++ "firmware_rev" ), 30, __FILE__, __LINE__ ); + } + } + diff --git a/SOURCES/lsvpd-1.7.11-fa1638452b8299f1a7f8e9a94259b25218a92acc.patch b/SOURCES/lsvpd-1.7.11-fa1638452b8299f1a7f8e9a94259b25218a92acc.patch new file mode 100644 index 0000000..04a68d4 --- /dev/null +++ b/SOURCES/lsvpd-1.7.11-fa1638452b8299f1a7f8e9a94259b25218a92acc.patch @@ -0,0 +1,47 @@ +commit fa1638452b8299f1a7f8e9a94259b25218a92acc +Author: Vasant Hegde +Date: Wed Jan 20 12:30:51 2021 +0530 + + sysvpd: Add UUID property + + Recent LPARs contains "ibm,partition-uuid" device tree property.. which + is unique UUID for each LPAR. This is represented by `MU` keyword. + + Lets add support to parse this property and populate vpddb. + + Ideally we should enhance libvpd to support new keyword. But that will + add depedency on libvpd version. Hence adding this new keyword (MU) + as DeviceSpecific keyword. + + Signed-off-by: Vasant Hegde + +diff --git a/src/internal/sys_interface/devicetreecollector.cpp b/src/internal/sys_interface/devicetreecollector.cpp +index 6afbe85..db4e8b5 100644 +--- a/src/internal/sys_interface/devicetreecollector.cpp ++++ b/src/internal/sys_interface/devicetreecollector.cpp +@@ -1215,6 +1215,12 @@ ERROR: + sys->mSerialNum2.setValue( val, 80 , __FILE__, __LINE__ ); + } + ++ val = getAttrValue("/proc/device-tree", "ibm,partition-uuid" ); ++ if( val != "" ) ++ { ++ setVPDField( sys, string("MU"), val, __FILE__, __LINE__ ); ++ } ++ + getSystemVPD(sys); + } + +diff --git a/src/internal/sys_interface/icollector.cpp b/src/internal/sys_interface/icollector.cpp +index ffa2466..5c4dccc 100644 +--- a/src/internal/sys_interface/icollector.cpp ++++ b/src/internal/sys_interface/icollector.cpp +@@ -313,6 +313,8 @@ namespace lsvpd + else if( key == "SE" ) { + sys->mSerialNum1.setValue( val, 70, file, lineNum ); + sys->mProcessorID.setValue( val, 70, file, lineNum ); ++ } else if ( key == "MU" ) { ++ sys->addDeviceSpecific( key, "UUID", val, 90 ); + } else + /* XXX: Un-recognized key */ + sys->addDeviceSpecific( key, "System Specific", val, 90 ); diff --git a/SPECS/lsvpd.spec b/SPECS/lsvpd.spec index 22f7e36..4941f23 100644 --- a/SPECS/lsvpd.spec +++ b/SPECS/lsvpd.spec @@ -1,22 +1,26 @@ %define name lsvpd %define version 1.7.11 -Name: %{name} -Version: %{version} -Release: 1%{?dist} -Summary: VPD/hardware inventory utilities for Linux +Name: %{name} +Version: %{version} +Release: 2%{?dist} +Summary: VPD/hardware inventory utilities for Linux -Group: Applications/System -License: GPLv2+ -URL: https://github.com/power-ras/%{name}/releases -Source: https://github.com/power-ras/%{name}/archive/v%{version}/%{name}-%{version}.tar.gz +Group: Applications/System +License: GPLv2+ +URL: https://github.com/power-ras/%{name}/releases +Source: https://github.com/power-ras/%{name}/archive/v%{version}/%{name}-%{version}.tar.gz -BuildRequires: libvpd-devel >= 2.2.5 -BuildRequires: sg3_utils-devel -BuildRequires: zlib-devel -BuildRequires: automake -BuildRequires: libtool -BuildRequires: librtas-devel +Patch0: lsvpd-1.7.11-fa1638452b8299f1a7f8e9a94259b25218a92acc.patch +Patch1: lsvpd-1.7.11-cc99870797f732129b4d2703a37461dac7c27098.patch +Patch2: lsvpd-1.7.11-0359436fdd467acd70c9fefa471570681d31e619.patch + +BuildRequires: libvpd-devel >= 2.2.5 +BuildRequires: sg3_utils-devel +BuildRequires: zlib-devel +BuildRequires: automake +BuildRequires: libtool +BuildRequires: librtas-devel Requires(post): %{_sbindir}/vpdupdate @@ -34,7 +38,7 @@ firmware levels. lsvio lists virtual devices, usually only found on POWER PC based systems. %prep -%autosetup +%autosetup -p1 %build ./bootstrap.sh @@ -70,6 +74,9 @@ exit 0 %dir %{_sysconfdir}/lsvpd %changelog +* Tue Jan 26 2021 Than Ngo - 1.7.11-2 +- Resolves: #1920497, Vendor and Device information mismatch for usb-xhci + * Mon Apr 06 2020 Than Ngo - 1.7.11-1 - Resolves: #1779204, rebase 1.7.11