Originally, the kickstarts would automatically select the first disk for installation, which is where the code in "pre_disk_setup_common.cfg" originated. We introduced the configurable installation parameters to allow the user to configure which device should be used - at the time, this was specifically to allow for disk selection in a host with a mix of disks and SDDs. A default of sda was chosen for initial ISO installation of controller-0 as the most common choice (at the time, at least). There are some considerations for removing this default selection: a. Just for initial install of controller-0, or for all nodes? As you've seen, it would be easy enough for the ISO boot config. During initial configuration, we check to see which disk was used for the install and record it in sysinv for reinstalls/upgrades, so there'd be no further code changes required. b. For all nodes: This is set as the default value for configurable installation parameters for each node. We'd need work to support having this value unset by default, changing the utility that generates the pelinux.cfg files for each node. Likewise, we'd need to ensure sysinv-agent records the boot/rootfs device on initial boot and updates the host data in sysinv on the active controller. Not voting against making such changes, mind you... just noting some of the work items/considerations that would be required. Cheers, Don. -----Original Message----- From: Jones, Bruce E [mailto:bruce.e.jones@intel.com] Sent: Wednesday, March 13, 2019 12:39 PM To: Saul Wold Cc: starlingx-discuss@lists.starlingx.io Subject: Re: [Starlingx-discuss] about NVME disk as the boot disk Saul wrote:
While editing the kernel cmdline is a workaround for this issue, does it also make sense to have a launchpad issue and work to fix the logic in selecting an appropriate boot/rootfs device target.
+1 this sounds like a great idea! -----Original Message----- From: Saul Wold [mailto:sgw@linux.intel.com] Sent: Tuesday, March 12, 2019 5:24 PM To: starlingx-discuss@lists.starlingx.io Subject: Re: [Starlingx-discuss] about NVME disk as the boot disk On 3/12/19 6:54 AM, Penney, Don wrote:
Hi Yong,
Please see the following reference:
https://docs.starlingx.io/installation_guide/index.html#nvme-drive-as- boot-drive
Edit the kernel boot parameter. After you are presented with the StarlingX ISO boot options and after you have selected the preferred installation option (e.g. Standard Configuration / All-in-One Controller Configuration), press the TAB key to edit the Kernel boot parameters. Modify the *boot_device* and *rootfs_device* from the default *sda* so that it is the correct device name for the NVMe drive (e.g. “nvme0n1”).
While editing the kernel cmdline is a workaround for this issue, does it also make sense to have a launchpad issue and work to fix the logic in selecting an appropriate boot/rootfs device target. There already is some logic to check for a USB device and fail out, so why not move that into the loop and have it auto detect nvme devices. Another option would be to change the ordering in pre_disk_setup_common code. Sau!
Cheers,
Don.
*From:*Hu, Yong [mailto:yong.hu@intel.com] *Sent:* Tuesday, March 12, 2019 8:51 AM *To:* starlingx-discuss@lists.starlingx.io *Subject:* [Starlingx-discuss] about NVME disk as the boot disk
Hi folks,
I was installing StarlingX in a NUC with 2 NVME disks (without other HD or SATA disks), and the installation was ended up with an issue as follows:
“ERROR: Specified installation (sda) or boot (sda) device is a USB drive.”
It seemed NVME disk was not recognized as valid boot disk.
With the help from @Saul, we found in “bsp-files/grub.cfg”, “boot_device” and “rootfs_device” were by default set as “sda” in ks cmdline:
/linuxefi /vmlinuz inst.ks=hd:LABEL=oe_iso_boot:/smallsystem_ks.cfg boot_device=sda rootfs_device=sda biosdevname=0 usbcore.autosuspend=-1 console=tty0 inst.text inst.stage2=hd:LABEL=oe_iso_boot inst.gpt security_profile=standard user_namespace.enable=1/
So, there are 2 ways to make NVME disks work as boot disk:
1. to change the grub cmdline, with “nvme0n1” for “rootfs_device” and “boot_device” accordingly, during the installation. 2. Not to set “rootfs_device” and “boot_device” in ks cmdline, and let “bsp-files/kickstarts/pre_disk_setup_common.cfg” detect “nvme0n1” dynamically.
Though, I wonder if there are other better ways in such a case.
Regards,
Yong
_______________________________________________ Starlingx-discuss mailing list Starlingx-discuss@lists.starlingx.io http://lists.starlingx.io/cgi-bin/mailman/listinfo/starlingx-discuss
_______________________________________________ Starlingx-discuss mailing list Starlingx-discuss@lists.starlingx.io http://lists.starlingx.io/cgi-bin/mailman/listinfo/starlingx-discuss _______________________________________________ Starlingx-discuss mailing list Starlingx-discuss@lists.starlingx.io http://lists.starlingx.io/cgi-bin/mailman/listinfo/starlingx-discuss