Note: This bug is displayed in read-only format because the product is no longer active in Red Hat Bugzilla.
For bugs related to Red Hat Enterprise Linux 5 product line. The current stable release is 5.10. For Red Hat Enterprise Linux 6 and above, please visit Red Hat JIRA https://issues.redhat.com/secure/CreateIssue!default.jspa?pid=12332745 to report new issues.

Bug 639850

Summary: BMC watchdog doesn't start if setup in bios with a bootup timeout
Product: Red Hat Enterprise Linux 5 Reporter: Tomas Smetana <tsmetana>
Component: freeipmiAssignee: Jan Safranek <jsafrane>
Status: CLOSED ERRATA QA Contact: Petr Sklenar <psklenar>
Severity: medium Docs Contact:
Priority: medium    
Version: 5.6CC: ajb2, azelinka, ovasik, psklenar, rvokal
Target Milestone: rc   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2011-11-29 14:06:55 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Attachments:
Description Flags
Proposed patch none

Description Tomas Smetana 2010-10-04 08:21:16 UTC
Description of problem:
If the BMC is setup in bios with a bootup timeout (for failed boots), the service will not start because the timer is already running and bmc-watchdog requires the timer be stopped before allowing itself to be daemonised. 

Version-Release number of selected component (if applicable):
freeipmi-0.5.1-6

How reproducible:
Not quite sure...

Steps to Reproduce:
1. Setup BMC with a timeout in the BIOS
2. Setup the freeipmi-bmc-watchdog
  
Actual results:
machine doesn't boot

Expected results:
machine boots up normally

Additional info:
Suggested fix is to force stopping the timer before launching the daemon in the init script. Stopping the timer is safe as an unconditional call during the script's "start" segment. No error is generated if a stop command is sent to an already stopped timer.

Comment 1 Tomas Smetana 2010-10-04 08:22:11 UTC
Created attachment 451350 [details]
Proposed patch

Comment 3 Alan Brown 2011-01-20 12:53:51 UTC
I'm the person who reported this to RH support and provided the proposed patch.

The "actual results" are wrong unless the BMC boot timeout is set to a very low value. 

The machine boots, but is subsequently killed by the BMC watchdog after a few minutes with the BMC recording a bootup timeout.

The first part of the patch addresses this issue by unconditionally unsetting the timer.

ADDITIONALLY:

If the service is running:

Stopping the service doesn't stop the timer. As a result the watchdog triggers. 

The second part of the patch addresses the issue using the same method.


The first issue is 100% reproducable on any machine with a bootup timer option in the BMC section of bios.

The second is 100% reproducable on any machine fitted with a BMC watchdog timer.


Freeipmi services interfere with access to the BMC timer, so they may need to be disabled in order to get a reproducer.

Comment 17 errata-xmlrpc 2011-11-29 14:06:55 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

http://rhn.redhat.com/errata/RHBA-2011-1499.html