aboutsummaryrefslogtreecommitdiffstats
path: root/meta/recipes-core/initrdscripts
AgeCommit message (Collapse)Author
2018-03-06init-install.sh: support multiple kernels and don't assume vmlinuzCalifornia Sullivan
Since kernels will not necessarily be installed as vmlinuz anymore, don't assume that's its name for either the bootloader config or the copy of the kernel. Also, allow installing multiple kernels by searching for common kernel names. Signed-off-by: California Sullivan <california.l.sullivan@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-03-06init-install-efi.sh: Update to support installing multiple kernelsCalifornia Sullivan
We can no longer rely on the kernel having a static name of "vmlinuz". This means we can't use it as a sentinel value in our sed commands, and we can't just copy vmlinuz to the boot directory. Instead, we'll use "root=" as the sentinel value for our sed commands, and we'll search for common kernel names to copy into our boot directory. Signed-off-by: California Sullivan <california.l.sullivan@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-02-16initramfs-framework: rootfs: add support for LABELRicardo Salveti
The rootfs can also be found via the partition label. Signed-off-by: Ricardo Salveti <ricardo@opensourcefoundries.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2017-12-10initramfs-module-install: Remove allarch and FILESEXTRAPATHSMartin Jansa
* files is already included in default FILESPATH * it cannot inherit allarch as it RDEPENDS on bunch of TUNE_PKGARCH packages * use the same COMPATIBLE_HOST restrictions as grub has to prevent ERRORs in bitbake world ERROR: Nothing RPROVIDES 'grub' (but oe-core/meta/recipes-core/initrdscripts/initramfs-module-install_1.0.bb RDEPENDS on or otherwise requires it) grub was skipped: incompatible with host arm-oe-linux-gnueabi (not in COMPATIBLE_HOST) grub was skipped: incompatible with host arm-oe-linux-gnueabi (not in COMPATIBLE_HOST) NOTE: Runtime target 'grub' is unbuildable, removing... Missing or unbuildable dependency chain was: ['grub'] ERROR: Required build target 'meta-world-pkgdata' has no buildable providers. Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2017-12-10initramfs-framework: Add exec moduleOtavio Salvador
This new module allow for easy execution of external scripts or applications. It runs anything found in /exec.d directory in order and in case of no scripts to be available, it opens a shell. Signed-off-by: Otavio Salvador <otavio@ossystems.com.br> Signed-off-by: Ross Burton <ross.burton@intel.com>
2017-12-02initramfs-live-boot-tiny: Create the initramfs-live-boot-tiny recipeAlejandro Hernandez
The original initramfs-live-boot recipe RDEPENDS on udev, which is ok since the init script relies some of its functionality on udevadm and such, but on core-image-tiny-initramfs the init script simply drops to shell after a basic setup, so udev is not needed. This patch splits up an initramfs-live-boot-tiny recipe which does not use udev, but uses busybox-mdev instead, eudev installed about 600 extra Kilobytes to core-image-tiny-initramfs userspace, by avoiding to install eudev we achieve an even smaller footprint (almost 40% smaller). Signed-off-by: Alejandro Hernandez <alejandro.hernandez@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2017-12-02install*.sh: add short sleep after parted commandsCalifornia Sullivan
I wasn't able to install to my Optane SSD due to the following error: Formatting /dev/nvme0n1p1 to vfat... mkfs.fat 4.1 (2017-01-24) mkfs.vfat: unable to open /dev/nvme0n1p1: No such file or directory Target install-efi failed A couple lines later I see: [ 10.265401] nvme0n1: p1 p2 p3 Then looking at the device itself after booting from a USB stick: root@intel-corei7-64: ~# ls /dev/nvme0n1* /dev/nvme0n1 /dev/nvme0n1p1 /dev/nvme0n1p2 /dev/nvme0n1p3 So it looks like the parted commands return before the device node is actually created. Work around this issue by waiting for device nodes for a short duration. Signed-off-by: California Sullivan <california.l.sullivan@intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2017-12-02init-install: fix grub-install commandCalifornia Sullivan
The grub_version variable was calling 'grub-install -v' (verbose) instead of 'grub-install -V' (version) causing unexpected failures. Fixes bug [YOCTO #12111]. Signed-off-by: California Sullivan <california.l.sullivan@intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2017-11-29initramfs-framework: add install moduleCalifornia Sullivan
The non-EFI counterpart for installation was previously missing for initramfs-framework. This simply puts the normal install script in the correct location for initramfs-framework to make use of it. Partial fix for [YOCTO #12346]. Signed-off-by: California Sullivan <california.l.sullivan@intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2017-11-29initramfs-module-install-efi: update summaryCalifornia Sullivan
Note that this is an installation option for EFI systems. Signed-off-by: California Sullivan <california.l.sullivan@intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2017-11-29initramfs-module-install-efi: point to original copy and delete new fileCalifornia Sullivan
There is no need to maintain two of the exact same files. Signed-off-by: California Sullivan <california.l.sullivan@intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2017-11-10initramfs-live-install: Add aarch64 arch to COMPATIBLE_HOST.Peter Griffin
So that we can use this on aarch64 with HiKey board. Signed-off-by: Peter Griffin <peter.griffin@linaro.org> Signed-off-by: Ross Burton <ross.burton@intel.com>
2017-09-12initramfs-framework: Allow directories with spacesOtavio Salvador
When mdev module loads the Linux kernel modules, it can visit directories with spaces. To allow that, we must quote the variable otherwise it misunderstand it arguments as multiple entries. Fixes: ,---- | Freeing unused kernel memory: 3072K (80d00000 - 81000000) | cat: can't open '/sys/devices/platform/Vivante': No such file or directory | cat: can't open 'GCCore/modalias': No such file or directory `---- Signed-off-by: Otavio Salvador <otavio@ossystems.com.br> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-09-12initramfs-framework: bump PR and fix install-efi and setup-live modulesCalifornia Sullivan
Bump initramfs-framework PR, as it was missed in the previous initramfs-framework patch. These modules are shell scripts so they can be allarch. Fix the SIGGEN_EXCLUDE_SAFE_RECIPE_DEPS in layer.conf, as these dependencies moved from the main recipe to these modules. Finally, set the PR to 4 in the new module recipes to avoid breaking package feeds. Fixes [YOCTO #12024]. Signed-off-by: California Sullivan <california.l.sullivan@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-09-11initramfs-framework: split setup-live and install-efi into separate recipesCalifornia Sullivan
Having these the initramfs-framework recipe forced initramfs-framework users to build several tools they didn't need, and made it more difficult to declare the recipe as allarch. Fixes [YOCTO #12024]. Signed-off-by: California Sullivan <california.l.sullivan@intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2017-09-01initramfs-live-boot: disable systemd-update-done.service on live imagesCarlos Alberto Lopez Perez
When systemd is used, it will invoke a service on first boot that triggers a rebuild of ldconfig caches (rebuild dynamic linker cache). This is fine on the first boot of a system that has been installed, but it makes no sense on a live system. The worst part is that rebuilding this caches is slow and it causes the live system to take longer to boot. (I measured this in 30 seconds longer on a standard PC system booting core-image-sato live from an USB memory). Disable this by touching /etc/.updated and /var/.updated on the live initramfs. For more details see https://bugzilla.redhat.com/show_bug.cgi?id=1201725 and https://www.freedesktop.org/software/systemd/man/systemd-update-done.service.html Signed-off-by: Carlos Alberto Lopez Perez <clopez@igalia.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2017-08-30initramfs-framework: Change recipe to be allarchOtavio Salvador
There is no COMPATIBLE_HOST in the recipe neither it makes sense for this to be machine specific. Possibly, initramfs-framework's based modules may be machine specific but if there is the case they can just RDEPENDS on initramfs-framework-base and provide the specific module as another recipe. Signed-off-by: Otavio Salvador <otavio@ossystems.com.br> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-08-24initramfs-framework/setup-live: quote bootparam_root variableCalifornia Sullivan
When bootparam_root was empty the if statement would resolve into invalid syntax instead of short circuiting after the -z, causing a boot failure. Signed-off-by: California Sullivan <california.l.sullivan@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-08-19initramfs-framework/setup-live: also boot live image if root=/dev/ram0California Sullivan
Our grub and syslinux bootloaders both define root=/dev/ram0 for live images by default. Kernel docs show that root=/dev/ram0 is just a sentinel value for the kernel to mount the initrd as root, which then mounts and switches to the real root. This is exactly what our scripts do, so just check for root=/dev/ram0 as well. See: https://www.kernel.org/doc/html/v4.11/admin-guide/initrd.html#operation This fixes the issue where the new initramfs-framework scripts would not boot live images that use grub or syslinux bootloaders. Signed-off-by: California Sullivan <california.l.sullivan@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-08-09initramfs-framework/setup-live: remove superfluous breakCalifornia Sullivan
This causes us to fall out of the module setup/run loop in the base init script should "root=" be defined, causing a boot failure. Signed-off-by: California Sullivan <california.l.sullivan@intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2017-07-27initramfs-framework: include install-efi module in recipe for installationNg, Wei Tee
Utilized the existing init-install-efi.sh script and renamed it to install-efi.sh to manage the installation process of images in initramfs-framework model. This script will be executed when "install" option is being chosen in the grub menu and install the image on the target platform. A new install-efi module is being added in the recipe to handle the installation process using initramfs-framework. [YOCTO #10989] Signed-off-by: Ng, Wei Tee <wei.tee.ng@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-07-27initramfs-framework: module to support boot live imageNg, Wei Tee
setup-live module is a new module being introduced to integrate the functionality of init-live.sh into new scriptlet named setup-live in order to support the live boot image. The udev-extraconf rdepends is being added to perform automounting. It gets to run before the rootfs and finish module. The setup-live scriplet include the changes for: - Create a conditional loop for the bootparam_root variable. If it is not set, then it will boot from ROOT_IMAGE. Else, it will boot normally which is not from removable media. - Gives a standard path to the original boot disk mount which can be used to. While /media/sda is a good guess, it isn't always right, nor is it a good assumption that only one boot disk is in the system. - The current rootfs module has no support for rootfs images, currently it only support for rootfs partitions for wic image. Therefore, there is a need to assign the rootfs image for live image. [YOCTO #11701] Signed-off-by: Ng, Wei Tee <wei.tee.ng@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-01-09gummiboot: Remove/change gummiboot references with systemd-bootAlejandro Hernandez
After systemd-boot was introduced, its been tested for a while with no major issues being found until now, this patch completely replaces all gummiboot instances with systemd-boot ones, taking the next step into cleaning up systemd-boot/gummiboot. [YOCTO #10332] Signed-off-by: Alejandro Hernandez <alejandro.hernandez@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2016-11-15initrdscripts: add support for NVME target installJoe Konno
Add awareness of /dev/nvme* block devices to install scripts. As presently written, installer knows only of /dev/sd* and /dev/mmcblk* block devices. Building upon scaffolding put in place by Awais in... 80ec9f627915 ("initrdscripts: handle mmc device as installer medium") Signed-off-by: Joe Konno <joe.konno@intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2016-08-30init-install: Fixes the install script failing when not finding any mmcblk ↵Alejandro Hernandez
devices The init-install.sh and init-install-efi.sh scripts perform a check to see which devices are available on a booted system for installation. Recently, the way we check for these devices changed on 993bfb, greping for devices found on /sys/block/, this change caused the installer to fail (at least) when not finding any mmcblk devices, due to the fact that we call sh -e to execute this script, so any command (grep) or pipeline exiting with a non-zero status causes the whole script to exit This patch throws in a harmless true exit status at the end of the pipeline(s) of the grep commands to avoid the installer script from exiting, fixing the issue. [YOCTO #10189] Signed-off-by: Alejandro Hernandez <alejandro.hernandez@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-08-17init-install*: /etc/mtab make a link rather than a copyAwais Belal
Using a copy would only make management of devices erroneous and makes the system unstable in some scenarios as tools will have to manipulate both files separately. A link ensures that both files /proc/mounts and /etc/mtab will have the same information at all times and this is how it is handled on newer systems where there is such a need. Same is suggested by busybox. Signed-off-by: Awais Belal <awais_belal@mentor.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2016-08-17init-install*: only pick root mmc devicesAwais Belal
Some eMMC devices show special sub-devices such as mmcblk0boot0 etc. The installation script currently pick all of them up and displays it to the user which makes some confusions because these sub-devices are pretty small and complete installation including rootfs won't be possible in most cases. We simply now drop these sub-devices and only present the user with the root of such mmc devices. Signed-off-by: Awais Belal <awais_belal@mentor.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2016-08-17initrdscripts/init-install*: Add rootwait when installing to USB devicesCalifornia Sullivan
It can take a bit for USB devices to be detected, so if a USB device is your rootfs and you don't set rootwait you will most likely get a kernel panic. Fix this by adding rootwait to the kernel command line on installation. Fixes [YOCTO #9462]. Signed-off-by: California Sullivan <california.l.sullivan@intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2016-08-17initramfs-live-boot: Make sure we kill udev before switching root when live ↵Alejandro Hernandez
booting When live booting, we need to make sure the running udev processes are killed to avoid unexepected behavior, we do this just before switching root, once we do, a new udev process will be spawned from init and will take care of whatever work was still missing [YOCTO #9520] Signed-off-by: Alejandro Hernandez <alejandro.hernandez@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2016-07-21initrdscripts/init-install*: Select install target instead of looping throughCalifornia Sullivan
Its not immediately apparent that more than one install target could be available. With this change we list the available devices up front then prompt the user for which one to use, reducing confusion. Fixes [YOCTO #9919]. Signed-off-by: California Sullivan <california.l.sullivan@intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-07-20initramfs-framework: make rootfs module optionalPatrick Ohly
It still gets installed by default via RRECOMMENDS without having to update users of the framework (because without it, the framework is incomplete), but that recommendation can be overridden on a per-image basis. Signed-off-by: Patrick Ohly <patrick.ohly@intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2016-07-08initramfs-framework: Add support for PartUUIDsIgor Stoppa
The rootfs can be addressed also by referring to the PartUUID value from the GPT. This patch enables such type of reference. Signed-off-by: Igor Stoppa <igor.stoppa@intel.com> Signed-off-by: Patrick Ohly <patrick.ohly@intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2016-07-08initramfs-framework: add retry loop for slow boot devices (like USB)Patrick Ohly
On some hardware platforms (Gigabyte, qemu), detection of USB devices by the kernel is slow enough such that it happens only after the first attempt to mount the rootfs. We need to keep trying for a while (default: 5s seconds, controlled by roottimeout=<seconds>) and sleep between each attempt (default: one second, rootdelay=<seconds>). This change intentionally splits finding the rootfs (in the new "rootfs") and switching to it ("finish"). That is needed to keep udev running while waiting for the rootfs, because it shuts down before "finish" starts. It is also the direction that was discussed on the OE mailing list for future changes to initramfs-framework (like supporting a "live CD" module, which would replace or further augment mounting of the rootfs). Signed-off-by: Patrick Ohly <patrick.ohly@intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2016-06-23initramfs-framework: base: Ensures /run/lock is availableOtavio Salvador
Depending on the module we use, the /run/lock may be required. This creates it as part of initial setup and thus makes it available for every sub module. Signed-off-by: Otavio Salvador <otavio@ossystems.com.br> Signed-off-by: Ross Burton <ross.burton@intel.com>
2016-06-23initramfs-framework: mdev: Add a runtime dependency on busybox-mdevOtavio Salvador
The mdev support relies on the mdev support inside busybox, which thus builds the busybox-mdev package. Adding the runtime dependency ensures its installation fails if mdev support is disabled. Signed-off-by: Otavio Salvador <otavio@ossystems.com.br> Signed-off-by: Ross Burton <ross.burton@intel.com>
2016-04-01init-install-efi.sh: remove all root=foo from grub.cfgRobert Yang
There might be more than one root=/dev/foo in the config file which would cause unepected errros on the installed target, so remove all of them. [YOCTO #9354] Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-04-01init-install.sh: fix disk_sizeRobert Yang
It mis-matched "SanDisk" or "Disk Flags" before, which caused unexpected error. Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-03-29init-live.sh: fix overlay fsRobert Yang
* The name changes from overlayfs to overlayo * The workdir is a must when mount * The updir must be a subdir of rootfs.rw This patch plus with another one which has been sent to linux-yocto can fix the error when boot iso: EXT4-fs (loop0): re-mounted. Opts: data=ordered Populating dev cache /etc/init.d/rc: /etc/rcS.d/S37populate-volatile.sh: line 1: can't create /etc/volatile.cache.build: Read-only file system /etc/rcS.d/S36udev-cache: line 73: can't create /etc/udev-cache.tar.gz: Read-only file system udev-cache: update failed! rm: can't remove '/etc/udev/cache.data': Read-only file system /etc/init.d/rc: /etc/rcS.d/S37populate-volatile.sh: line 1: can't create /etc/volatile.cache.build: Read-only file system /etc/init.d/rc: /etc/rcS.d/S37populate-volatile.sh: line 1: can't create /etc/volatile.cache.build: Read-only file system /etc/init.d/rc: /etc/rcS.d/S37populate-volatile.sh: line 1: can't create /etc/volatile.cache.build: Read-only file system /etc/init.d/rc: /etc/rcS.d/S37populate-volatile.sh: line 1: can't create /etc/volatile.cache.build: Read-only file system /etc/init.d/rc: /etc/rcS.d/S37populate-volatile.sh: line 1: can't create /etc/volatile.cache.build: Read-only file system /etc/init.d/rc: /etc/rcS.d/S37populate-volatile.sh: line 1: can't create /etc/volatile.cache.build: Read-only file system /etc/init.d/rc: /etc/rcS.d/S37populate-volatile.sh: line 1: can't create /etc/volatile.cache.build: Read-only file system /etc/init.d/rc: /etc/rcS.d/S37populate-volatile.sh: line 1: can't create /etc/volatile.cache.build: Read-only file system rm: can't remove '/tmp': Read-only file system ln: /tmp/tmp: Read-only file system /etc/init.d/rc: /etc/rcS.d/S37populate-volatile.sh: line 1: can't create /etc/volatile.cache.build: Read-only file system /etc/init.d/rc: /etc/rcS.d/S37populate-volatile.sh: line 1: can't create /etc/volatile.cache.build: Read-only file system /etc/init.d/rc: /etc/rcS.d/S37populate-volatile.sh: line 1: can't create /etc/volatile.cache.build: Read-only file system ln: /etc/resolv.conf: Read-only file system /etc/init.d/rc: /etc/rcS.d/S37populate-volatile.sh: line 1: can't create /etc/volatile.cache.build: Read-only file system /etc/init.d/rc: /etc/rcS.d/S37populate-volatile.sh: line 1: can't create /etc/volatile.cache.build: Read-only file system Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-03-29init-live.sh: fix ROOT_MOUNTRobert Yang
The '/' in the end is not needed, which caused '//' in the path. Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-03-20init-live : make it easier to add custom boot targetsJérémy Rosen
When booting from the live image, the label from the bootloader is passed to init.sh. init.sh uses the label to either boot a live image or call a script to take over and install the system. It is possible to add new labels to the bootloader via the LABELS family of variables, but the names in init.sh were hardcoded to install and install-efi this patch checks if a shell script with the same name as the label is available instead of using a hardcoded list. Any recipe can add such file and this provide a new boot target to the live image Signed-off-by: Jérémy Rosen <jeremy.rosen@openwide.fr> Signed-off-by: Ross Burton <ross.burton@intel.com>
2016-02-11initrdscripts: fix mmc device as install targetUrs Fässler
Installing from USB to an internal SD Card did not work with Linux 4.4 in Yocto jethro. With this patch, consistent names are used for the paritions. Signed-off-by: Urs Fässler <urs.fassler@bbv.ch> Signed-off-by: Ross Burton <ross.burton@intel.com>
2016-01-05initramfs-framework_1.0:replace busybox for variable.Alejandro Joya
It replaces the use of busybox as hardcoded dependency to more dynamic this wouldn't affect the way that the initrams is build, just it let a more flexible replacement in the core. Signed-off-by: Alejandro Joya <alejandro.joya.cruz@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-12-08initramfs-framework: create directory /var/runWills Wang
The following error occurs when udevd startup: udevd[146]: bind failed: No such file or directory error binding udev control socket udevd[146]: error binding udev control socket Signed-off-by: Wills Wang <wills.wang@live.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2015-12-01init-install-efi: fix script for eMMC installationNg, Mei Yeen
Running the install option from bootloader to install image to eMMC will fail with error: Formatting /dev/mmcblk01 to vfat... mkfs.fat 3.0.28 (2015-05-16) /dev/mmcblk01: No such file or directory This issue impacts both grub and gummiboot install option to eMMC device. The installation failure is due to the following: [1] Unable to partition eMMC as the partition prefix 'p' is not appended The condition checking failed with the additional /dev/ appended with the target device name. [2] The partition uuid for boot, root and swap partition is not captured for eMMC This fix updated the condition checking and changed the variables to reference the boot, root and swap partitions for UUID. [YOCTO #8710] Signed-off-by: Ng, Mei Yeen <mei.yeen.ng@intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2015-12-01init-install-efi: fix script for gummiboot loaderNg, Mei Yeen
After running gummiboot loader install option, the installed target storage device boot parameter for root=PARTUUID is empty causing boot failure. This issue is only observed with gummiboot and not with GRUB loader. This fix assign the rootuuid of the rootfs partition for gummiboot loader. [YOCTO #8709] Signed-off-by: Ng, Mei Yeen <mei.yeen.ng@intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2015-09-21initramfs-framework: better error reporting for invalid root boot parameterPatrick Ohly
When the "boot" parameter refers to a non-existent device, the only visible output at normal log levels was a rather confusing: ERROR: There's no '/dev' on rootfs. That's because the actual error, not being able to find the root device, was only a debug message, which gets ignored in the default mode. Promoting the "root '$bootparam_root' doesn't exist." message from "debug" to "msg" gives sufficient context to understand the error. A more intrusive change would be to change also the control flow. Signed-off-by: Patrick Ohly <patrick.ohly@intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2015-09-21initramfs-framework: fix "support dropping into shell on failure"Patrick Ohly
Due to a missing $ before the variable name, all fatal errors ended up invoking a shell, instead of only doing that when init_fatal_sh is set as boot parameter. Signed-off-by: Patrick Ohly <patrick.ohly@intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2015-09-15init-install-efi.sh: Avoid /mnt/mtab creation if already presentLeonardo Sandoval
The base-files recipe installs /mnt/mtab (it is a softlink of /proc/mounts), so if an image includes the latter, there is no new to created it again inside the install-efi.sh script, otherwise an error may occur as indicated on the bug's site. [YOCTO #7971] Signed-off-by: Leonardo Sandoval <leonardo.sandoval.gonzalez@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-12initramfs-framework: support dropping into shell on failurePatrick Ohly
When the init_fatal_sh boot parameter is present (i.e. used without value) and a fatal problem occurs inside the initramfs-module, a shell will be started instead of looping forever. Useful for debugging. Interestingly enough, the code was already indented to support such an if check... Signed-off-by: Patrick Ohly <patrick.ohly@intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2015-09-12initramfs-framework: support init boot parameterPatrick Ohly
It can be useful for debugging to override the default /sbin/init. This is something typically done via the init boot parameter which then gets interpreted by the kernel. But when using an initramfs, it is the initramfs which must react to the option. Signed-off-by: Patrick Ohly <patrick.ohly@intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>