Skip to content
Snippets Groups Projects
  1. Aug 19, 2020
  2. Jul 28, 2020
  3. Jun 19, 2020
  4. Jun 08, 2020
    • Guilherme G. Piccoli's avatar
      scripts/functions: Prevents printf error carry over if wrong console is set · c3cbf355
      Guilherme G. Piccoli authored
      
      Currently the _log_msg() functions is "void" typed - with no return -,
      which in terms of shell means it returns whatever its last command
      returns. This function is the basic building block for all error/warning
      messages in initramfs-tools.
      
      It was noticed [0] that in case of bad console is provided to kernel on
      command-line, printf (and apparently all write()-related functions) returns
      error, and so this error is carried over in _log_msg(). Happens that
      checkfs() function has a loop that runs forever in this scenario (*if* fsck
      is not present in initramfs, and obviously if "quiet" is not provided in the
      command-line). The situation is easily reproducible and we can find various
      reports dating back some years. The reports usually are of the form
      "machine can't boot if wrong console is provided" or slightly different
      forms of that, almost always relating serial consoles with boot issues.
      
      This patch proposes a pretty simple fix: return zero on _log_msg().
      We should definitely not brake the boot due to error log functions;
      one could argue we could fix checkfs() and that's true, until eventually
      we find another subtle corner case of "misuse" of the _log_msg() return
      value (after some debugging), and fix that too, and so on...
      W could also argue that printf shouldn't return error in this case,
      and although a valid discussion, it's not worth to have users waiting
      on a dilemma while boot is quite easy to brake, just by passing a wrong
      kernel parameter (or having the underlying serial console device changed
      to output to a different port than the previously set on kernel cmdline).
      
      [0] bugs.launchpad.net/cloud-images/+bug/1573095/comments/46
      Signed-off-by: default avatarGuilherme G. Piccoli <gpiccoli@canonical.com>
      c3cbf355
  5. May 24, 2020
    • Vagrant Cascadian's avatar
      hook-functions: Add modules needed for Pinebook LCD display. · 482897b9
      Vagrant Cascadian authored
      The Pinebook LCD disply does not show output until after the initramfs
      is loaded, which is too late to enter an encryption passphrase or
      debug issues with mounting the rootfs.
      
      Fix this by adding modules to "fb": analogix-anx6345, pwm-sun4i,
      sun4i-drm and sun8i-mixer.
      482897b9
  6. Apr 28, 2020
  7. Mar 29, 2020
  8. Jan 30, 2020
  9. Jan 18, 2020
  10. Jan 13, 2020
  11. Jan 11, 2020
  12. Jan 07, 2020
    • Ben Hutchings's avatar
      mkinitramfs: Remove armhf dynamic linker hack · a9e5169f
      Ben Hutchings authored
      
      This reverts commit da64d1a1, which
      was a workaround for the inconsistent choices of interpreter path in
      the early days of armhf and the limitations of copy_file at the time.
      Now that copy_file automatically replicates symlinks and their
      targets, we don't need to do anything special about the dynamic
      linker.
      
      An initramfs built for Debian 10 on armhf currently contains:
      
      /lib/arm-linux-gnueabihf/ld-2.28.so           regular file
      /lib/arm-linux-gnueabihf/ld-linux-armhf.so.3  link to ld-2.28.so
      /lib/arm-linux-gnueabihf/ld-linux.so.3        link to /lib/ld-linux-armhf.so.3
      /lib/ld-linux-armhf.so.3                      regular file
      
      There are two *copies* of the dynamic linker as well as two symlinks
      to one or the other of them.
      
      After this commit, the initramfs contains:
      
      /lib/arm-linux-gnueabihf/ld-2.28.so           regular file
      /lib/arm-linux-gnueabihf/ld-linux-armhf.so.3  link to ld-2.28.so
      /lib/ld-linux-armhf.so.3                      link to arm-linux-gnueabihf/ld-2.28.so
      
      The /lib/…/ld-linux.so.3 symlink is no longer created, because Debian
      armhf binaries all use /lib/ld-linux-armhf.so.3 as the interpreter
      path, but it would be created if we ever switched over.
      
      Signed-off-by: default avatarBen Hutchings <ben@decadent.org.uk>
      a9e5169f
    • Ben Hutchings's avatar
      mkinitramfs: Remove special case for Arm OABI ports · 2b55aca6
      Ben Hutchings authored
      
      This reverts commit 879602b2.  The
      arm (OABI little-endian) port was replaced by armel and was last
      released in Debian 5.0.  The armeb (OABI big-endian) port never made
      it into a Debian release and has died off completely.
      
      Signed-off-by: default avatarBen Hutchings <ben@decadent.org.uk>
      2b55aca6
Loading