Skip to content
  • Stafford Horne's avatar
    initramfs: Always do fput() and load modules after rootfs populate · 17a9be31
    Stafford Horne authored
    In OpenRISC we do not have a bootloader passed initrd, but the built in
    initramfs does contain the /init and other binaries, including modules.
    The previous commit 08865514 ("initramfs: finish fput() before
    accessing any binary from initramfs") made a change to only call fput()
    if the bootloader initrd was available, this caused intermittent crashes
    for OpenRISC.
    
    This patch changes the fput() to happen unconditionally if any rootfs is
    loaded. Also, I added some comments to make it a bit more clear why we
    call unpack_to_rootfs() multiple times.
    
    Fixes: 08865514
    
     ("initramfs: finish fput() before accessing any binary from initramfs")
    Cc: stable@vger.kernel.org
    Cc: Lokesh Vutla <lokeshvutla@ti.com>
    Cc: Al Viro <viro@zeniv.linux.org.uk>
    Acked-by: default avatarAl Viro <viro@zeniv.linux.org.uk>
    Signed-off-by: default avatarStafford Horne <shorne@gmail.com>
    17a9be31