Uploaded image for project: 'RHEL'
  1. RHEL
  2. RHEL-100324

leapp dies in reboot phase when "mount -a" executes when a file system is mounted on a non-existing mount point

Linking RHIVOS CVEs to...Migration: Automation ...RHELPRIO AssignedTeam ...SWIFT: POC ConversionSync from "Extern...XMLWordPrintable

    • No
    • Low
    • Upstream
    • rhel-upgrades
    • 5
    • False
    • False
    • Hide

      None

      Show
      None
    • None
    • Red Hat Enterprise Linux
    • None
    • None
    • None
    • Unspecified
    • Unspecified
    • Unspecified
    • None

      With systemd, it's possible to specify a mount point in /etc/fstab which doesn't currently exist. In such case, systemd will create it and mount the file system on it.

      This is an issue when upgrading, because mount -a doesn't proceed similarly, causing failure of the upgrade in reboot phase.

      Reproducer

      1. Add a line in /etc/fstab to bind mount /boot on some non-existing directory /run/non-existing/boot
        # echo "/boot    /run/non-existing/boot    none    bind,defaults    0 0" >> /etc/fstab
      2. Execute leapp upgrade
      3. Reboot

      Result

      leapp fails early while executing mount -a:

      [   17.848932] upgrade[801]: mount: /run/non-existing/boot: mount point does not exist.
      [   33.536692] upgrade[810]: ==> Processing phase `InitRamStart`
      [   33.537195] upgrade[810]: ====> * remove_upgrade_efi_entry
      [   33.537551] upgrade[810]:         Remove UEFI entry for LEAPP upgrade (see AddArmBootloaderWorkaround).
      [   33.603854] upgrade[810]: ====> * remove_upgrade_boot_entry
      [   33.604285] upgrade[810]:         Remove boot entry for Leapp provided initramfs.
      [   33.797963] xfs filesystem being mounted at /boot supports timestamps until 2038 (0x7fffffff)
      [   33.970634] upgrade[1308]: Process Process-210:
      [   33.971138] upgrade[1308]: Traceback (most recent call last):
      [   33.971671] upgrade[1308]:   File "/usr/lib64/python3.6/multiprocessing/process.py", line 258, in _bootstrap
      [   33.972355] upgrade[1308]:     self.run()
      [   33.972665] upgrade[1308]:   File "/usr/lib64/python3.6/multiprocessing/process.py", line 93, in run
      [   33.973247] upgrade[1308]:     self._target(*self._args, **self._kwargs)
      [   33.973695] upgrade[1308]:   File "/usr/lib/python3.6/site-packages/leapp/repository/actor_definition.py", line 75, in _do_run
      [   33.974376] upgrade[1308]:     actor_instance.run(*args, **kwargs)
      [   33.974785] upgrade[1308]:   File "/usr/lib/python3.6/site-packages/leapp/actors/__init__.py", line 319, in run
      [   33.975467] upgrade[1308]:     self.process(*args)
      [   33.975832] upgrade[1308]:   File "/etc/leapp/repos.d/system_upgrade/common/actors/removeupgradebootentry/actor.py", line 20, in process
      [   33.976600] upgrade[1308]:     remove_boot_entry()
      [   33.976976] upgrade[1308]:   File "/etc/leapp/repos.d/system_upgrade/common/actors/removeupgradebootentry/libraries/removeupgradebootentry.py", line 49, in remove_boot_entry
      [   33.977920] upgrade[1308]:     '/bin/mount', '-a'
      [   33.978252] upgrade[1308]:   File "/usr/lib/python3.6/site-packages/leapp/libraries/stdlib/__init__.py", line 192, in run
      [   33.978906] upgrade[1308]:     result=result
      [   33.979247] upgrade[1308]: leapp.libraries.stdlib.CalledProcessError: Command ['/bin/mount', '-a'] failed with exit code 32.
      [   34.014564] upgrade[810]: 2025-06-26 07:55:07.84  ERROR    PID: 3 leapp.workflow.InitRamStart: Actor remove_upgrade_boot_entry has crashed: Traceback (most recent call last):
      [   34.015666] upgrade[810]:   File "/usr/lib/python3.6/site-packages/leapp/repository/actor_definition.py", line 75, in _do_run
      [   34.016502] upgrade[810]:     actor_instance.run(*args, **kwargs)
      [   34.016964] upgrade[810]:   File "/usr/lib/python3.6/site-packages/leapp/actors/__init__.py", line 319, in run
      [   34.017677] upgrade[810]:     self.process(*args)
      [   34.018076] upgrade[810]:   File "/etc/leapp/repos.d/system_upgrade/common/actors/removeupgradebootentry/actor.py", line 20, in process
      [   34.018918] upgrade[810]:     remove_boot_entry()
      [   34.019306] upgrade[810]:   File "/etc/leapp/repos.d/system_upgrade/common/actors/removeupgradebootentry/libraries/removeupgradebootentry.py", line 49, in remove_boot_entry
      [   34.020351] upgrade[810]:     '/bin/mount', '-a'
      [   34.020709] upgrade[810]:   File "/usr/lib/python3.6/site-packages/leapp/libraries/stdlib/__init__.py", line 192, in run
      [   34.021473] upgrade[810]:     result=result
      [   34.021789] upgrade[810]: leapp.libraries.stdlib.CalledProcessError: Command ['/bin/mount', '-a'] failed with exit code 32.
      

              leapp-notifications leapp-notifications
              rhn-support-rmetrich Renaud Métrich
              leapp-notifications leapp-notifications
              RHEL Upgrades QE Team RHEL Upgrades QE Team
              Votes:
              0 Vote for this issue
              Watchers:
              5 Start watching this issue

                Created:
                Updated: