Bug 26708 - Mageia7 netinstall 64 bit ISO image fails "install from hard disk" when system has NVMe SSD - does not find NVMe SSD
Summary: Mageia7 netinstall 64 bit ISO image fails "install from hard disk" when syste...
Status: RESOLVED OLD
Alias: None
Product: Mageia
Classification: Unclassified
Component: Release (media or process) (show other bugs)
Version: 7
Hardware: All Linux
Priority: Normal normal
Target Milestone: ---
Assignee: Mageia tools maintainers
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2020-05-31 20:07 CEST by Paul Blackburn
Modified: 2021-09-07 14:09 CEST (History)
2 users (show)

See Also:
Source RPM:
CVE:
Status comment:


Attachments

Description Paul Blackburn 2020-05-31 20:07:35 CEST
Description of problem:

Attempting to install Mageia 7 from ISO image stored on disk. Am able to configure grub to boot the 64 bit netinstall ISO but then when running netinstall the option to "Install from disk" fails because the netinstall instance cannot identify the NVMe SSD.

Version-Release number of selected component (if applicable):


How reproducible: Happens every time.


Steps to Reproduce:
1. Based on the process documented here: https://wiki.mageia.org/en/Installing_Mageia_from_ISO_images_on_disk_using_grub2

2. Used a modified local grub to provide option to boot the netinstall image.
Two updates for NVMe (UEFI) boot:
a) line 30: insmod part_gpt
b) line 38: set root="hd0,gpt5"

These are to enable access to the GPT (global partition table). 
The /mnt/install-iso/ partition:
    [mpb@localhost ~]$ df /mnt/install-iso
    Filesystem      Size  Used Avail Use% Mounted on
    /dev/nvme0n1p5  9.8G  4.3G  5.0G  47% /mnt/install-iso
                ^^ => gpt5

[mpb@localhost ~]$ nl -ba etc_grub.d_40_custom
     1	
     2	# --------------------------------------------- added on 2020_05_30 at 18:51
     3	# Example for adding to /etc/grub.d/40_custom
     4	# 
     5	# Reference: https://wiki.mageia.org/en/Installing_Mageia_from_ISO_images_on_disk_using_grub2
     6	#
     7	# NB ensure correct values set for your configuration below:
     8	#
     9	#    1) set isofile=
    10	#       example: set isofile="/Mageia-7-netinstall-nonfree-x86_64.iso"
    11	#       NB leading "/"
    12	#
    13	#    2) set root=
    14	#       example: set root="hd0,1"
    15	#       This is for /dev/sda1. Other examples:
    16	#        /mnt/install-iso/ mounted at /dev/sda12 is "hd0,12"
    17	#        /mnt/install-iso/ mounted at /dev/sdb9 is "hd1,9"
    18	#
    19	#    3) loopback loop
    20	#       example: loopback loop (hd0,1)$isofile
    21	#       NB "hd0,1" is /dev/sda1 and no "/" before "$isofile"
    22	#
    23	#   
    24	
    25	# 64-bit example: 
    26	
    27	 menuentry "Mageia 7 Network Install nonfree 64-bit iso" {
    28	         insmod gzio
    29	#         insmod part_msdos
    30		 insmod part_gpt
    31	         insmod ext2
    32	         insmod xfs
    33	         insmod loopback
    34	         insmod iso9660
    35	         insmod udf
    36	         set isofile="/Mageia-7-netinstall-nonfree-x86_64.iso"
    37	#         set root="hd0,1"
    38		 set root="hd0,gpt5"
    39	         loopback loop (hd0,gpt5)$isofile
    40	         linux (loop)/isolinux/x86_64/vmlinuz isofile=$isofile
    41	         initrd (loop)/isolinux/x86_64/all.rdz
    42	 }


3. After selecting "boot netinstall" boot option, attempting to install from ISO image stroed on disk fails because the netinstall iso is not able to access the NVMe at all. In this case we are attempting to access Mageia-7.1-x86_64.iso in the same gpt5 partition as the netinstall iso.

[mpb@localhost install-iso]$ df /mnt/install-iso/
Filesystem      Size  Used Avail Use% Mounted on
/dev/nvme0n1p5  9.8G  4.3G  5.0G  47% /mnt/install-iso

[mpb@localhost install-iso]$ cd /mnt/install-iso/

[mpb@localhost install-iso]$ ls -lh
total 4.3G
drwx------ 2 root root  16K May 30 17:48 lost+found/
-rw-r--r-- 1 mpb  mpb  4.2G Jul 13  2019 Mageia-7.1-x86_64.iso
-rw-r--r-- 1 mpb  mpb   152 Jul 13  2019 Mageia-7.1-x86_64.iso.sha512
-rw-rw-r-- 1 mpb  mpb   81M Aug 14  2019 Mageia-7-netinstall-nonfree-x86_64.iso
-rw-rw-r-- 1 mpb  mpb   169 Aug 14  2019 Mageia-7-netinstall-nonfree-x86_64.iso.sha512
Comment 1 Lewis Smith 2020-06-01 17:54:43 CEST
Thank you for the care in the evidence you present.

Assigning to the Mageia Tools group, I imagine that is where the installers live.

Assignee: bugsquad => mageiatools

Comment 2 Paul Blackburn 2020-06-08 17:32:25 CEST
Some screenshots (taken with camera) showing issue:

a) Grub boot menu
   https://i.imgur.com/UL69gfZ.jpg
   Grub configured as per comment 1 (above)
   ref: https://wiki.mageia.org/en/Installing_Mageia_from_ISO_images_on_disk_using_grub2

b) Selection of "Hard Disk" installation method when running netinstall ISO
   https://i.imgur.com/mBIXDOy.jpg

c) Error message: "No DISK drive found". Disk is NVMe SSD.
   https://i.imgur.com/sNaAI4q.jpg

d) Logs shown by ket alt-f3:
   https://i.imgur.com/0vIusuU.jpg

e) alt-f2 access to shell and attempt to run "bug" command but not present.
   https://i.imgur.com/auXCTmO.jpg
Comment 3 Paul Blackburn 2020-06-09 13:24:34 CEST
Wondering if there is any available module/driver I can load via USB when running netinstall ISO image to enable access to the internal system NVMe SSD?
Comment 4 Paul Blackburn 2020-06-11 19:16:38 CEST
Tried using the most recently available Cauldron netinstall ISO
from:
rsync -av ${server}::mageia.org/pub/mageia/distrib/cauldron/x86_64/install/images/Mageia-Cauldron-netinstall* .

Same issue: the system boots up from the internal NVMe internal SSD and presents the grub menu correctly.
photo1: https://i.imgur.com/JTBUlE1.jpg

Selecting "Mageia Cauldron Network install non-free 64-bit iso" loads the ISO image.
photo2: https://i.imgur.com/gvm9pK6.jpg

Selecting "Hard Disk" results in: "No DISK drive found"
photo3: https://i.imgur.com/PSOU2EX.jpg

keys alt-f3 to display log:
photo4: https://i.imgur.com/XYL9rgA.jpg

keys alt-f2 to display shell and "uname -a":
photo5: https://i.imgur.com/jGNgDKU.jpg


So, the puzzle is: why the netinstall ISO image cannot access the NVMe ssd internal drive?

Is there an additional driver to be loaded (via USB)?
Pascal Terjan 2020-06-11 21:09:59 CEST

CC: (none) => pterjan

Comment 5 Pascal Terjan 2020-06-11 21:21:23 CEST
I believe the problem is not with drivers but http://gitweb.mageia.org/software/drakx/tree/mdk-stage1/probing.c#n540 needing to be updated to handle nvme.

I wonder if that code could be made much more generic nowadays...

I'll try to look into it.
Comment 6 Pascal Terjan 2020-06-11 23:09:25 CEST
I have submitted to cauldron drakx-installer-binaries-2.44-1.mga8 which should get on the mirrors soon.

It may or may not work for you as I found problem when testing it more widely. It assumes all disks have a "vendor" sysfs attribute but one machine I tried as only "model" which includes the vendor name.

I'll fix the code to support both and upload a new version.
Comment 7 Pascal Terjan 2020-06-11 23:29:54 CEST
drakx-installer-binaries-2.45-1.mga8 submitted, I'll update images when it is uploaded.
Comment 8 Pascal Terjan 2020-06-12 00:21:30 CEST
Images are available, at least on http://ftp.free.fr/mirrors/mageia.org/distrib/cauldron/x86_64/install/images/
Comment 9 Paul Blackburn 2020-06-12 01:21:35 CEST
Salut Pascal, merci!  Your new (cauldron) version is working here. Marche bien.

NVMe appears in the disk partition list:
Photo1: https://i.imgur.com/4ejXoWN.jpg

Finds the install ISO images:
Photo2: https://i.imgur.com/xgZThhV.jpg

Wow... This is so fast. ;-)
Comment 10 Marja Van Waes 2021-09-07 14:09:43 CEST
Hi bug reporter and hi assignee and others involved,

Please reopen this bug report if it is still valid for Mageia 8 or 9(cauldron), and change "Version:" in the upper left of this report accordingly.

This report is being closed as OLD because it was filed against Mageia 7, for which  support ended on June 30th 2021.

Thanks,
Marja

Status: NEW => RESOLVED
Resolution: (none) => OLD


Note You need to log in before you can comment on or make changes to this bug.