blob: 2cf8cdb9806bf8b36fccffeefbb03640987c94a6 [file] [log] [blame]
Artem Senichev67355a82018-03-16 12:35:51 +03001From a1f98d850d356001d37242ccf13f94114bd6378c Mon Sep 17 00:00:00 2001
2From: Artem Senichev <a.senichev@yadro.com>
3Date: Tue, 13 Mar 2018 15:44:05 +0300
4Subject: [PATCH] Fill empty sensor id to reserved id 0xFF
5
6Originally created by MSI (S188)
7
8Signed-off-by: Artem Senichev <a.senichev@yadro.com>
9---
10 src/usr/ipmi/ipmisensor.C | 5 +----
11 src/usr/targeting/common/processMrw.pl | 21 ++++++++++++++++++---
12 2 files changed, 19 insertions(+), 7 deletions(-)
13
14diff --git a/src/usr/ipmi/ipmisensor.C b/src/usr/ipmi/ipmisensor.C
15index 4aa1c9f4b..a5bded63a 100644
16--- a/src/usr/ipmi/ipmisensor.C
17+++ b/src/usr/ipmi/ipmisensor.C
18@@ -216,14 +216,11 @@ namespace SENSOR
19 }
20 else
21 {
22- TRACFCOMP(g_trac_ipmi,"We were not able to find a sensor number in"
23+ TRACFCOMP(g_trac_ipmi,"Found a reserved sensor number (0xFF) in"
24 " the IPMI_SENSORS attribute for sensor_name=0x%x"
25 "for target with huid=0x%x, skipping call to "
26 "sendSetSensorReading()",
27 iv_name, TARGETING::get_huid( iv_target ));
28-
29- assert(false);
30-
31 }
32
33 return l_err;
34diff --git a/src/usr/targeting/common/processMrw.pl b/src/usr/targeting/common/processMrw.pl
35index 8bfa7bddd..45d250872 100644
36--- a/src/usr/targeting/common/processMrw.pl
37+++ b/src/usr/targeting/common/processMrw.pl
38@@ -239,14 +239,29 @@ sub processIpmiSensors {
39 $sensor_name=$name."_".$name_suffix;
40 }
41 my $attribute_name="";
42- my $s=sprintf("0x%02X%02X,0x%02X",
43- oct($sensor_type),oct($entity_id),oct($sensor_id));
44- push(@sensors,$s);
45+
46+ if ($sensor_id ne "")
47+ {
48+ my $s = sprintf("0x%02X%02X,0x%02X",
49+ oct($sensor_type), oct($entity_id), oct($sensor_id));
50+ push(@sensors, $s);
51+ }
52+ else
53+ {
54+ my $s = sprintf("0x%02X%02X,0xFF",
55+ oct($sensor_type), oct($entity_id));
56+ push(@sensors, $s);
57+ }
58+
59 my $sensor_id_str = "";
60 if ($sensor_id ne "")
61 {
62 $sensor_id_str = sprintf("0x%02X",oct($sensor_id));
63 }
64+ else
65+ {
66+ $sensor_id_str = sprintf("N/A");
67+ }
68 my $str=sprintf(
69 " %30s | %10s | 0x%02X | 0x%02X | 0x%02x |" .
70 " %4s | %4d | %4d | %10s | %s\n",
71--
722.14.1
73