Hello community,
here is the log from the commit of package smartmontools for openSUSE:Factory checked in at 2017-08-12 20:00:11
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/smartmontools (Old)
and /work/SRC/openSUSE:Factory/.smartmontools.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "smartmontools"
Sat Aug 12 20:00:11 2017 rev:72 rq:514991 version:6.5
Changes:
--------
--- /work/SRC/openSUSE:Factory/smartmontools/smartmontools.changes 2017-01-11 12:01:37.619795046 +0100
+++ /work/SRC/openSUSE:Factory/.smartmontools.new/smartmontools.changes 2017-08-12 20:00:20.625817756 +0200
@@ -1,0 +2,8 @@
+Fri Jul 14 21:04:35 CEST 2017 - sbrabec@suse.com
+
+- SCSI temperature error fixes (bsc#1047198,
+ smartmontools-scsi-suppress-no-temperature.patch,
+ smartmontools-scsi-temperature-check.patch,
+ smartmontools-log-scsi-temperature.patch).
+
+-------------------------------------------------------------------
New:
----
smartmontools-log-scsi-temperature.patch
smartmontools-scsi-suppress-no-temperature.patch
smartmontools-scsi-temperature-check.patch
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ smartmontools.spec ++++++
--- /var/tmp/diff_new_pack.XO6GfB/_old 2017-08-12 20:00:23.037479951 +0200
+++ /var/tmp/diff_new_pack.XO6GfB/_new 2017-08-12 20:00:23.045478831 +0200
@@ -1,7 +1,7 @@
#
# spec file for package smartmontools
#
-# Copyright (c) 2016 SUSE LINUX GmbH, Nuernberg, Germany.
+# Copyright (c) 2017 SUSE LINUX GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -38,6 +38,12 @@
Patch11: smartd-service-novm.patch
# PATCH-FIX-OPENSUSE smartmontools-systemd-no-syslog.patch bsc983938 sbrabec@suse.cz -- syslog.target does not exist any more.
Patch12: smartmontools-systemd-no-syslog.patch
+# PATCH-FIX-UPSTREAM smartmontools-scsi-suppress-no-temperature.patch bsc1047198 sbrabec@suse.cz -- Always suppress "failed to read Temperature" message.
+Patch13: smartmontools-scsi-suppress-no-temperature.patch
+# PATCH-FIX-UPSTREAM smartmontools-scsi-temperature-check.patch bsc1047198 sbrabec@suse.cz -- Fix initial check for SCSI temperature support.
+Patch14: smartmontools-scsi-temperature-check.patch
+# PATCH-FIX-UPSTREAM smartmontools-log-scsi-temperature.patch bsc1047198 sbrabec@suse.cz -- Log SCSI temperature regardless of its origin.
+Patch15: smartmontools-log-scsi-temperature.patch
Requires(pre): %fillup_prereq
# Needed by generate_smartd_opt:
Requires(pre): coreutils
@@ -74,6 +80,9 @@
%patch10 -p1
%patch11
%patch12 -p1
+%patch13 -p1
+%patch14 -p1
+%patch15 -p1
#
# PATCH-FEATURE-OPENSUSE (sed on smartd.service.in) sbrabec@suse.cz -- Use generated smartd_opts (from SUSE sysconfig file). Systemd smartd.service cannot be smart enough to parse SUSE sysconfig file and generate smartd_opts on fly. And we do not want to launch shell just for it in every boot.
sed "s:/usr/local/etc/sysconfig/smartmontools:%{_localstatedir}/lib/smartmontools/smartd_opts:" smartd.service.in.new
++++++ smartmontools-log-scsi-temperature.patch ++++++
Index: smartmontools-6.5/ChangeLog
===================================================================
--- smartmontools-6.5.orig/ChangeLog
+++ smartmontools-6.5/ChangeLog
@@ -5,6 +5,7 @@ $Id: ChangeLog 4318 2016-05-07 11:18:20Z
smartd.cpp: Always suppress "failed to read Temperature" message
if SCSI device does not support temperature (ticket #817).
Fix initial check for SCSI temperature support.
+ Log SCSI temperature regardless of its origin.
2016-05-07 Christian Franke
Index: smartmontools-6.5/smartd.cpp
===================================================================
--- smartmontools-6.5.orig/smartd.cpp
+++ smartmontools-6.5/smartd.cpp
@@ -794,8 +794,8 @@ static bool write_dev_attrlog(const char
fprintf(f, "\tnon-medium-errors;%" PRIu64 ";", state.scsi_nonmedium_error.nme.counterPC0);
}
// write SCSI current temperature if it is monitored
- if(state.TempPageSupported && state.temperature)
- fprintf(f, "\ttemperature;%d;", state.temperature);
+ if (state.temperature)
+ fprintf(f, "\ttemperature;%d;", state.temperature);
// end of line
fprintf(f, "\n");
return true;
++++++ smartmontools-scsi-suppress-no-temperature.patch ++++++
Index: smartmontools-6.5/ChangeLog
===================================================================
--- smartmontools-6.5.orig/ChangeLog
+++ smartmontools-6.5/ChangeLog
@@ -1,5 +1,10 @@
$Id: ChangeLog 4318 2016-05-07 11:18:20Z chrfranke $
+2017-03-27 Christian Franke
+
+ smartd.cpp: Always suppress "failed to read Temperature" message
+ if SCSI device does not support temperature (ticket #817).
+
2016-05-07 Christian Franke
smartmontools 6.5
Index: smartmontools-6.5/smartd.cpp
===================================================================
--- smartmontools-6.5.orig/smartd.cpp
+++ smartmontools-6.5/smartd.cpp
@@ -3448,7 +3448,7 @@ static int SCSICheckDevice(const dev_con
PrintOut(LOG_INFO,"Device: %s, SMART health: passed\n", name);
// check temperature limits
- if (cfg.tempdiff || cfg.tempinfo || cfg.tempcrit || !cfg.attrlog_file.empty())
+ if (cfg.tempdiff || cfg.tempinfo || cfg.tempcrit)
CheckTemperature(cfg, state, currenttemp, triptemp);
// check if number of selftest errors has increased (note: may also DECREASE)
@@ -3483,6 +3483,9 @@ static int SCSICheckDevice(const dev_con
scsiDecodeNonMediumErrPage(tBuf, &state.scsi_nonmedium_error.nme);
state.scsi_nonmedium_error.found=1;
}
+ // store temperature if not done by CheckTemperature() above
+ if (!(cfg.tempdiff || cfg.tempinfo || cfg.tempcrit))
+ state.temperature = currenttemp;
}
CloseDevice(scsidev, name);
return 0;
++++++ smartmontools-scsi-temperature-check.patch ++++++
Index: smartmontools-6.5/ChangeLog
===================================================================
--- smartmontools-6.5.orig/ChangeLog
+++ smartmontools-6.5/ChangeLog
@@ -4,6 +4,7 @@ $Id: ChangeLog 4318 2016-05-07 11:18:20Z
smartd.cpp: Always suppress "failed to read Temperature" message
if SCSI device does not support temperature (ticket #817).
+ Fix initial check for SCSI temperature support.
2016-05-07 Christian Franke
Index: smartmontools-6.5/smartd.cpp
===================================================================
--- smartmontools-6.5.orig/smartd.cpp
+++ smartmontools-6.5/smartd.cpp
@@ -2345,11 +2345,12 @@ static int SCSIDeviceScan(dev_config & c
&asc, &ascq, ¤ttemp, &triptemp)) {
PrintOut(LOG_INFO, "Device: %s, unexpectedly failed to read SMART values\n", device);
state.SuppressReport = 1;
- if (cfg.tempdiff || cfg.tempinfo || cfg.tempcrit) {
- PrintOut(LOG_INFO, "Device: %s, can't monitor Temperature, ignoring -W %d,%d,%d\n",
- device, cfg.tempdiff, cfg.tempinfo, cfg.tempcrit);
- cfg.tempdiff = cfg.tempinfo = cfg.tempcrit = 0;
- }
+ }
+ if ( (state.SuppressReport || !currenttemp)
+ && (cfg.tempdiff || cfg.tempinfo || cfg.tempcrit)) {
+ PrintOut(LOG_INFO, "Device: %s, can't monitor Temperature, ignoring -W %d,%d,%d\n",
+ device, cfg.tempdiff, cfg.tempinfo, cfg.tempcrit);
+ cfg.tempdiff = cfg.tempinfo = cfg.tempcrit = 0;
}
}