tree e1c1cfffe23cecbdda61ec9429abf3280d39a665
parent 4ddd6df1ac119007fd516418cd217a593b5cb2bc
author Matt Spinler <spinler@us.ibm.com> 1657141074 -0500
committer Matt Spinler <spinler@us.ibm.com> 1657550434 +0000

monitor: Default tach sensors to true

Instead of reading the functional status of the tach sensors out of the
inventory on startup, just default them to true.  Any issues with the
fans could then be rediscovered after the reboot.

This was the original behavior.  It was probably changed with the intent
that the shutdown timers could immediately start back up again after a
reboot if things were nonfunctional before.

In practice, we've found that there can be a race between the shutdown
actions turning off the system (due to nonfunctional sensors) and the
sensor objects being marked functional again, even when the only reason
they were nonfunctional before the reboot was because the fan sensor
daemon was turned off before fan monitor on the way down.

For this to make a noticeable change, the shutdown actions/timers would
have to be in progress during the reboot anyway, which is pretty
unlikely.

Worst case, it would extend a shutdown by the time it takes an error to
be rediscovered, which is:

If the 'count' method is configured:
    monitor_start_delay + (count_interval * threshold)

If the 'timebased' method is configured:
    monitor_start_delay + nonfunc_rotor_error_delay

This has no affect on shutdowns caused by missing fans, as the code
still reads that out of the inventory on startup, plus it can be
instantaneously detected as opposed to being calculated over time.

In summary, extending the shutdown time in very uncommon cases seems
better than mistakenly shutting off a running system, which can be a
huge deal depending on the user.

Signed-off-by: Matt Spinler <spinler@us.ibm.com>
Change-Id: I2840c5f2e79bd734626b4144713e4428af28551a
