[lm-sensors] sensord exits on any error

Jean Delvare khali at linux-fr.org
Sun Dec 14 16:44:29 CET 2008


Hi Andy,

On Fri, 12 Dec 2008 15:45:35 -0600 (CST), Andy Poling wrote:
> It is kind of embarrassingly simple.  I hope a unified diff is acceptable.

A unified diff is perfect. However I do not think the fix is as simple
as you suggested. The original code has a rather fragile way to handle
sleep times between actions, and now that failures no longer break the
loop, odd things can happen. In particular, with your patch, I hit a
case where the system log would get filled at a very high rate on
permanent errors, presumably because sleep() was called with negative
values.

Please see my attached patch which hopefully fixes all the issues. It
worked fine for me. Main differences with your original patch:
* Errors on reloadLib() are logged.
* Errors are logged using sensorLog() instead of syslog().
* Error messages use %d instead of %m. %m read errno but the sensord
  code doesn't set errno.
* Each of the 3 actions are handled separately, even if one fails, the
  other ones are attempted.

Please give it a try and report.

Thanks,
-- 
Jean Delvare
-------------- next part --------------
A non-text attachment was scrubbed...
Name: sensord-survive-transient-errors.patch
Type: text/x-patch
Size: 1908 bytes
Desc: not available
URL: <http://lists.lm-sensors.org/pipermail/lm-sensors/attachments/20081214/22fa51f1/attachment.bin>


More information about the lm-sensors mailing list