Bug 1945700 - Syncing boot mode after changing device should be restricted to Supermicro
Summary: Syncing boot mode after changing device should be restricted to Supermicro
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: OpenShift Container Platform
Classification: Red Hat
Component: Bare Metal Hardware Provisioning
Version: 4.8
Hardware: Unspecified
OS: Unspecified
high
high
Target Milestone: ---
: 4.8.0
Assignee: Bob Fournier
QA Contact: Lubov
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2021-04-01 16:52 UTC by Bob Fournier
Modified: 2021-07-27 22:57 UTC (History)
1 user (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Cause: An earlier fix for https://bugzilla.redhat.com/show_bug.cgi?id=1892302 introduced a regression for Dell servers. When changing boot mode from UeFI to BIOS an error resulted. Consequence: Could not change boot mode on Dell servers. Fix: Restrict the change that was made to boot mode in the earlier fix only for Supermicro servers. Result: Both Supermicro and Dell servers work properly for boot mode.
Clone Of:
: 1945701 (view as bug list)
Environment:
Last Closed: 2021-07-27 22:57:07 UTC
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
OpenStack Storyboard 2008712 0 None None None 2021-04-01 16:53:40 UTC
OpenStack gerrit 784156 0 None MERGED Restrict syncing of boot mode to Supermicro 2021-04-01 16:54:25 UTC
Red Hat Product Errata RHSA-2021:2438 0 None None None 2021-07-27 22:57:42 UTC

Description Bob Fournier 2021-04-01 16:52:48 UTC
We have a report upstream of problems with Dell systems when changing boot mode because of the fix for https://bugzilla.redhat.com/show_bug.cgi?id=1892302. This fix (https://review.opendev.org/c/openstack/ironic/+/758856) syncs the boot mode after setting the boot device. On Dell systems this can cause problems when changing the boot mode because the change is cached.

From the upstream report:
=========================

Node deployment failed for cross boot mode scenario using redfish driver
This issue is only observed for cross-boot mode scenarios i.e. uefi-bios or bios-uefi.

Configurational Details
• iDRAC Model : PowerEdge XE2420
• BIOS version : 1.3.3
• Boot Mode :- UEFI in script and BIOS in idrac

Steps to reproduce:
a. Create node on devstack using create_node.sh (make appropriate changes in CLI for node creation).
./create_node.sh
Provision state should be in Available mode, after node get created.
b. Once Node is available then Deploy the node
Command to Execute :- openstack baremetal node deploy
c: Keep track on log - sudo journalctl -f -u devstack
d. Expected Result :- Once node is deployed, provision state should be in Active Mode

Observations:-
In case of cross boot mode using redfish drivers , while deploying the node it get failed . BIOS is getting displayed in pending jobs in job queue and Console power state remains off .

Note- This is a regression issue. It occurs beacause of an upstream change to ironic : "https://review.opendev.org/c/openstack/ironic/+/758856"
It was working fine with iDRAC f/w 4.22.00.00.

LOG:
Redfish exception occurred. Error: Setting boot mode to uefi failed for node Error: HTTP PATCH https://192.168.110.22/redfish/v1/Systems/System.Embedded.1 returned code 400. Base.1.5.GeneralError: Pending configuration values are already committed, unable to perform another set operation. Extended information: [{'Message': 'Pending configuration values are already committed, unable to perform another set operation.', 'MessageArgs': ['BootSourceOverrideMode'], 'MessageArgs': 1, 'MessageId': 'IDRAC.2.1.SYS011', 'RelatedProperties': ['BootSourceOverrideMode'], 'RelatedProperties': 1, 'Resolution': 'Wait for the scheduled job to complete or delete the configuration jobs before attempting more set attribute operations.', 'Severity': 'Warning'}]:

Comment 1 Bob Fournier 2021-04-06 16:50:23 UTC
Need to pick up the Ironic patch in ironic-image.

Comment 2 Bob Fournier 2021-04-08 12:26:46 UTC
Will be picked up in this ironic-image patch - https://github.com/openshift/ironic-image/pull/159.

Comment 3 Lubov 2021-05-06 17:10:09 UTC
Verified on 4.8.0-0.nightly-2021-04-30-201824

Steps: Use a setup with all machines with boot mode set to UEFI
1. Set bootMode: legacy in install-config.yaml for one of the workers machines
2. Deploy the cluster: inspection error for the worker with bootMode: legacy
3. After deployment finished, re-deploy it setting bootMode: UEFI in config-install.yaml for the same worker: cluster deployed with no problems

Comment 6 errata-xmlrpc 2021-07-27 22:57:07 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 (Moderate: OpenShift Container Platform 4.8.2 bug fix and security update), and where to find the updated
files, follow the link below.

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

https://access.redhat.com/errata/RHSA-2021:2438


Note You need to log in before you can comment on or make changes to this bug.