-
Bug
-
Resolution: Done-Errata
-
Undefined
-
None
-
4.14, 4.15, 4.16
-
Low
-
No
-
3
-
251 - Core Packages, 252 - Core Packages, 253 - Core Packages, 254 - Core Packages, 255 - Core Packages, 256 - Core Packages
-
6
-
False
-
-
-
Bug Fix
-
Done
-
Description of problem:
We previously ran into issues running an IBU from X to Y, where X and Y have the same rhcos base image (OCPBUGS-25951). A workaround was found to resolve the issue in this scenario. However, an additional issue has been found when running consecutive IBUs from X to Y and then Y to Z, where Y and Z have the same rhcos base image. In the Y to Z upgrade, the pull-local and deploy commands are successful, with the workaround in place from OCPBUGS-25951. However, once we run the ostree admin set-default command, we get the following error: loading sysroot: Parsing deployment /ostree/boot.1/rhcos_4.15.0_rc.8/827728895611cec1dd1d51a4e88e64d96a0dbf0fbcb8dbd0d85e5d9634691ff8/0 in stateroot rhcos_4.15.0_rc.8: readlinkat: No such file or directory The Y and Z deployments have the same base rhcos image, same kernel, and the same bootloader config options, but are in separate stateroots. The deployment_bootconfigs_equal function in ostree-sysroot-deploy.c, however, doesn't look at the stateroot, so it returns TRUE when comparing them. When the deployments are swapped by the set-default command, the bootserials are modified and new symlinks are created. But since deployment_bootconfigs_equal returns true, the ostree_sysroot_write_deployments_with_options function does not update the bootloader config. After this point, ostree is unable to parse the deployment references from the bootloader config files as they are stale. As a workaround, LCA has been updated to include an unused karg when running the deploy command (ibu=$VERSION). This ensures that the boot config options will be unique between deployments, so that set-default updates the bootloader config.
Version-Release number of selected component (if applicable):
How reproducible:
Steps to Reproduce:
1. 2. 3.
Actual results:
Expected results:
Additional info:
- blocks
-
OCPBUGS-36435 [4.16] IBU x->y->z with no rhcos delta results in ostree corruption
- Closed
- depends on
-
RHEL-36770 [9.4.z] Update ostree to 2024.6
- Closed
-
RHEL-36778 [9.2.z] ostree Backport - check if deployments are in the same stateroot.
- Closed
- is cloned by
-
OCPBUGS-36435 [4.16] IBU x->y->z with no rhcos delta results in ostree corruption
- Closed
- links to
-
RHEA-2024:3718 OpenShift Container Platform 4.17.z bug fix update
(1 links to)