rasdaemon: ras-mc-ctl: Modify check for HiSilicon KunPeng9xx error fields

This commit is contained in:
xia-bing1 2023-11-02 20:47:05 +08:00
parent 9ac493a3be
commit 9ea0f76ce8
2 changed files with 130 additions and 1 deletions

View File

@ -0,0 +1,122 @@
From 3576ebb2e0e7badb475807058776de748bbc8c43 Mon Sep 17 00:00:00 2001
From: Shiju Jose <shiju.jose@huawei.com>
Date: Thu, 24 Aug 2023 13:07:17 +0100
Subject: [PATCH] rasdaemon: ras-mc-ctl: Modify check for HiSilicon KunPeng9xx
error fields
Modify check for valid HiSilicon KunPeng9xx error fields.
Fixes an error data is not printed when it's value is 0.
Signed-off-by: Shiju Jose <shiju.jose@huawei.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
---
util/ras-mc-ctl.in | 72 +++++++++++++++++++++++-----------------------
1 file changed, 36 insertions(+), 36 deletions(-)
diff --git a/util/ras-mc-ctl.in b/util/ras-mc-ctl.in
index 4178dcf..07e6fca 100755
--- a/util/ras-mc-ctl.in
+++ b/util/ras-mc-ctl.in
@@ -1672,13 +1672,13 @@ sub vendor_errors
if ($module eq 0 || ($module_id && uc($module) eq uc($module_id))) {
$out .= "$id. $timestamp Error Info: ";
$out .= "version=$version, ";
- $out .= "soc_id=$soc_id, " if ($soc_id);
- $out .= "socket_id=$socket_id, " if ($socket_id);
- $out .= "nimbus_id=$nimbus_id, " if ($nimbus_id);
- $out .= "module_id=$module_id, " if ($module_id);
- $out .= "sub_module_id=$sub_module_id, " if ($sub_module_id);
- $out .= "err_severity=$err_severity, " if ($err_severity);
- $out .= "Error Registers: $regs " if ($regs);
+ $out .= "soc_id=$soc_id, " if (defined $soc_id && length $soc_id);
+ $out .= "socket_id=$socket_id, " if (defined $socket_id && length $socket_id);
+ $out .= "nimbus_id=$nimbus_id, " if (defined $nimbus_id && length $nimbus_id);
+ $out .= "module_id=$module_id, " if (defined $module_id && length $module_id);
+ $out .= "sub_module_id=$sub_module_id, " if (defined $sub_module_id && length $sub_module_id);
+ $out .= "err_severity=$err_severity, " if (defined $err_severity && length $err_severity);
+ $out .= "Error Registers: $regs " if (defined $regs && length $regs);
$out .= "\n\n";
$found_module = 1;
}
@@ -1697,13 +1697,13 @@ sub vendor_errors
if ($module eq 0 || ($module_id && uc($module) eq uc($module_id))) {
$out .= "$id. $timestamp Error Info: ";
$out .= "version=$version, ";
- $out .= "soc_id=$soc_id, " if ($soc_id);
- $out .= "socket_id=$socket_id, " if ($socket_id);
- $out .= "nimbus_id=$nimbus_id, " if ($nimbus_id);
- $out .= "module_id=$module_id, " if ($module_id);
- $out .= "sub_module_id=$sub_module_id, " if ($sub_module_id);
- $out .= "err_severity=$err_severity, " if ($err_severity);
- $out .= "Error Registers: $regs " if ($regs);
+ $out .= "soc_id=$soc_id, " if (defined $soc_id && length $soc_id);
+ $out .= "socket_id=$socket_id, " if (defined $socket_id && length $socket_id);
+ $out .= "nimbus_id=$nimbus_id, " if (defined $nimbus_id && length $nimbus_id);
+ $out .= "module_id=$module_id, " if (defined $module_id && length $module_id);
+ $out .= "sub_module_id=$sub_module_id, " if (defined $sub_module_id && length $sub_module_id);
+ $out .= "err_severity=$err_severity, " if (defined $err_severity && length $err_severity);
+ $out .= "Error Registers: $regs " if (defined $regs && length $regs);
$out .= "\n\n";
$found_module = 1;
}
@@ -1722,15 +1722,15 @@ sub vendor_errors
if ($module eq 0 || ($sub_module_id && uc($module) eq uc($sub_module_id))) {
$out .= "$id. $timestamp Error Info: ";
$out .= "version=$version, ";
- $out .= "soc_id=$soc_id, " if ($soc_id);
- $out .= "socket_id=$socket_id, " if ($socket_id);
- $out .= "nimbus_id=$nimbus_id, " if ($nimbus_id);
- $out .= "sub_module_id=$sub_module_id, " if ($sub_module_id);
- $out .= "core_id=$core_id, " if ($core_id);
- $out .= "port_id=$port_id, " if ($port_id);
- $out .= "err_severity=$err_severity, " if ($err_severity);
- $out .= "err_type=$err_type, " if ($err_type);
- $out .= "Error Registers: $regs " if ($regs);
+ $out .= "soc_id=$soc_id, " if (defined $soc_id && length $soc_id);
+ $out .= "socket_id=$socket_id, " if (defined $socket_id && length $socket_id);
+ $out .= "nimbus_id=$nimbus_id, " if (defined $nimbus_id && length $nimbus_id);
+ $out .= "sub_module_id=$sub_module_id, " if (defined $sub_module_id && length $sub_module_id);
+ $out .= "core_id=$core_id, " if (defined $core_id && length $core_id);
+ $out .= "port_id=$port_id, " if (defined $port_id && length $port_id);
+ $out .= "err_severity=$err_severity, " if (defined $err_severity && length $err_severity);
+ $out .= "err_type=$err_type, " if (defined $err_type && length $err_type);
+ $out .= "Error Registers: $regs " if (defined $regs && length $regs);
$out .= "\n\n";
$found_module = 1;
}
@@ -1749,19 +1749,19 @@ sub vendor_errors
if ($module eq 0 || ($module_id && uc($module) eq uc($module_id))) {
$out .= "$id. $timestamp Error Info: ";
$out .= "version=$version, ";
- $out .= "soc_id=$soc_id, " if ($soc_id);
- $out .= "socket_id=$socket_id, " if ($socket_id);
- $out .= "totem_id=$totem_id, " if ($totem_id);
- $out .= "nimbus_id=$nimbus_id, " if ($nimbus_id);
- $out .= "sub_system_id=$sub_system_id, " if ($sub_system_id);
- $out .= "module_id=$module_id, " if ($module_id);
- $out .= "sub_module_id=$sub_module_id, " if ($sub_module_id);
- $out .= "core_id=$core_id, " if ($core_id);
- $out .= "port_id=$port_id, " if ($port_id);
- $out .= "err_type=$err_type, " if ($err_type);
- $out .= "pcie_info=$pcie_info, " if ($pcie_info);
- $out .= "err_severity=$err_severity, " if ($err_severity);
- $out .= "Error Registers: $regs" if ($regs);
+ $out .= "soc_id=$soc_id, " if (defined $soc_id && length $soc_id);
+ $out .= "socket_id=$socket_id, " if (defined $socket_id && length $socket_id);
+ $out .= "totem_id=$totem_id, " if (defined $totem_id && length $totem_id);
+ $out .= "nimbus_id=$nimbus_id, " if (defined $nimbus_id && length $nimbus_id);
+ $out .= "sub_system_id=$sub_system_id, " if (defined $sub_system_id && length $sub_system_id);
+ $out .= "module_id=$module_id, " if (defined $module_id && length $module_id);
+ $out .= "sub_module_id=$sub_module_id, " if (defined $sub_module_id && length $sub_module_id);
+ $out .= "core_id=$core_id, " if (defined $core_id && length $core_id );
+ $out .= "port_id=$port_id, " if (defined $port_id && length $port_id);
+ $out .= "err_type=$err_type, " if (defined $err_type && length $err_type);
+ $out .= "pcie_info=$pcie_info, " if (defined $pcie_info && length $pcie_info);
+ $out .= "err_severity=$err_severity, " if (defined $err_severity && length $err_severity);
+ $out .= "Error Registers: $regs" if (defined $regs && length $regs);
$out .= "\n\n";
$found_module = 1;
}
--
2.25.1

View File

@ -1,6 +1,6 @@
Name: rasdaemon
Version: 0.6.7
Release: 13
Release: 14
License: GPLv2
Summary: Utility to get Platform Reliability, Availability and Serviceability (RAS) reports via the Kernel tracing events
URL: https://github.com/mchehab/rasdaemon.git
@ -53,6 +53,7 @@ Patch9004: 0002-rasdaemon-fix-issue-of-signed-and-unsigned-integer-c.patch
Patch9005: 0003-rasdaemon-Add-support-for-creating-the-vendor-error-.patch
Patch9006: 0004-rasdaemon-Add-four-modules-supported-by-HiSilicon-co.patch
Patch9007: fix-ras-events-quit-loop-in-read_ras_event-when-kbuf-dat.patch
Patch9008: 0001-rasdaemon-ras-mc-ctl-Modify-check-for-HiSilicon-KunP.patch
%description
The rasdaemon program is a daemon which monitors the platform
@ -98,6 +99,12 @@ rm INSTALL %{buildroot}/usr/include/*.h
/usr/bin/systemctl enable rasdaemon.service >/dev/null 2>&1 || :
%changelog
* Wed Nov 1 2023 Xia Bing <xiabing12@h-partners.com> - 0.6.7-14
- Type:bugfix
- ID:NA
- SUG:NA
- DESC:Fix "nimbus_id=0" field is not displayed when query RAS error information
* Tue Jun 20 2023 zhangnan <zhangnan134@huawei.com> - 0.6.7-13
- Type:bugfix
- ID:NA