Skip to content

kdump-utils calls dracut_no_switch_root(), which dracut 111 removed #162

Description

@NTMan

Every kdump initramfs rebuild now prints:

/usr/lib/dracut/modules.d/99kdumpbase/module-setup.sh: line 1248: dracut_no_switch_root: command not found

Reproducer:

  # kdumpctl rebuild

Versions:

kdump-utils-1.0.61-2.fc45
dracut-111-1.fc45 (installed 2026-08-10)
kexec-tools-2.0.32-4.fc45

Cause: dracut 111 removed the function. From its NEWS.md, under Bug Fixes:

remove unused dracut_no_switch_root (f61865ce)

kdump-utils still calls it, at the end of the kdump_setup_bootdev() install hook in dracut-module-setup.sh:

  # Save more memory by dropping switch root capability dracut_no_switch_root

The call was added in 2020 by commit e05c550 ("Drop switch root capability for non fadump initramfs") and is still present in kdump-utils upstream (rhkdump/kdump-utils, main).

Impact, as far as I can tell:

  • the error is printed on every rebuild, and the install hook returns 127 instead of 0. dracut tolerates this today - the image is still built and "kexec: loaded kdump kernel" succeeds - but it is a latent hazard if dracut ever starts checking that return value;

  • the intended effect is lost. Note however that in dracut 110 the function only created the marker file $initdir/lib/dracut/no-switch-root, and nothing in dracut 110 read that file - it is the only occurrence in the tree. So the memory saving this call was meant to achieve appears to have been ineffective for some time already, which is presumably why dracut considered the function unused.

That suggests the fix is simply to drop the call, but somebody who knows whether anything outside dracut still consumes /lib/dracut/no-switch-root should confirm that before it is removed.

Downstream report: https://bugzilla.redhat.com/show_bug.cgi?id=2515152

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions