Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

05core/dracut: enable iscsi module #2640

Merged
merged 1 commit into from
Sep 29, 2023

Conversation

jlebon
Copy link
Member

@jlebon jlebon commented Sep 28, 2023

In 9997df7 ("Move from initramfs-args in manifest to dracut.conf.d files"), we migrated FCOS to use dracut dropins rather than CLI args. One notable semantic change was that these dropins were also now inherited by RHCOS.

One of the migrated directives was omitting the iscsi module. But RHCOS OTOH has always included the iscsi dracut module, using --add iscsi. This apparent conflict was noted in a comment and deemed safe[1]. And in fact, it did seem to work at the time, but only because there was a bug in dracut: RHCOS happened to define some --omit arguments as well and the bug made it so that the CLI arguments overrode the inherited omit_dracutmodules dropin directives rather than being added to them.[2]

The presence of this bug meant that --add iscsi still worked. However, in RHEL9, the bug was fixed[3], which meant that we now stopped pulling in the iscsi module since it's listed in the set of modules to omit (--add arguments cannot undo earlier --omit/ omit_dracutmodules arguments).

The minimal fix needed here is to stop omitting the iscsi module. This fixes https://issues.redhat.com/browse/OCPBUGS-19811, where some users had already taken a dep on iSCSI iBFT support for autoconfiguration. It also aligns with efforts to support root-on-iSCSI in the near future, and there's no reason to not have that work happen in FCOS too.

A related larger task is to stop using initramfs-args in RHCOS since it's now deprecated.[4]

In 9997df7 ("Move from `initramfs-args` in manifest to `dracut.conf.d`
files"), we migrated FCOS to use dracut dropins rather than CLI args.
One notable semantic change was that these dropins were also now
inherited by RHCOS.

One of the migrated directives was omitting the `iscsi` module. But RHCOS
OTOH has always included the `iscsi` dracut module, using `--add iscsi`.
This apparent conflict was noted in a comment and deemed safe[[1]].
And in fact, it *did* seem to work at the time, but only because there
was a bug in dracut: RHCOS happened to define some `--omit` arguments
as well and the bug made it so that the CLI arguments overrode the
inherited `omit_dracutmodules` dropin directives rather than being added
to them.[[2]]

The presence of this bug meant that `--add iscsi` still worked.
However, in RHEL9, the bug was fixed[[3]], which meant that we now
stopped pulling in the `iscsi` module since it's listed in the set
of modules to omit (`--add` arguments cannot undo earlier `--omit`/
`omit_dracutmodules` arguments).

The minimal fix needed here is to stop omitting the `iscsi` module. This
fixes https://issues.redhat.com/browse/OCPBUGS-19811, where some users
had already taken a dep on iSCSI iBFT support for autoconfiguration. It
also aligns with efforts to support root-on-iSCSI in the near future,
and there's no reason to not have that work happen in FCOS too.

A related larger task is to stop using `initramfs-args` in RHCOS since
it's now deprecated.[[4]]

[1]: coreos#1828 (comment)
[2]: dracutdevs/dracut#1341
[3]: dracutdevs/dracut#1342
[4]: coreos/rpm-ostree#3834
@jlebon
Copy link
Member Author

jlebon commented Sep 28, 2023

This is all we need to backport down to 4.13 for https://issues.redhat.com/browse/OCPBUGS-19811.

@jlebon
Copy link
Member Author

jlebon commented Sep 28, 2023

A related larger task is to stop using initramfs-args in RHCOS since it's now deprecated.[https://github.com/coreos/rpm-ostree/pull/3834]

This is done in openshift/os#1376 but we don't need to/shouldn't backport that series.

Copy link
Member

@dustymabe dustymabe left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@jlebon jlebon merged commit bc9ce57 into coreos:testing-devel Sep 29, 2023
2 checks passed
@jlebon jlebon deleted the pr/iscsi-dracut-module branch September 29, 2023 14:47
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants