Bug 1258816

Summary: IMSM RAID 0 array not assembled in initrd on boot
Product: [Fedora] Fedora Reporter: srakitnican <samuel.rakitnican>
Component: dracutAssignee: dracut-maint-list
Status: CLOSED EOL QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: high Docs Contact:
Priority: unspecified    
Version: 22CC: dracut-maint-list, harald, jonathan, zbyszek
Target Milestone: ---   
Target Release: ---   
Hardware: x86_64   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2016-07-19 19:17:56 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Attachments:
Description Flags
rdsosreport.txt
none
rdsosreport.txt.gz with "rd.debug" and without "rd.auto" flag - Software RAID
none
rdsosreport.txt.gz with "rd.debug" and without "rd.auto" flag - FakeRAID none

Description srakitnican 2015-09-01 10:59:14 UTC
Created attachment 1068951 [details]
rdsosreport.txt

Description of problem:  I have created a "fakeraid" RAID 0 array with on board Intel controler (IMSM) by using two SSD disks. The Fedora kernel (not initrd) booted from non-RAID hard disk assembles RAID partitions automatically, but when booted from RAID drives initrd is not assembling it resulting in 'disk with UUID not found' and boot fails.


Version-Release number of selected component (if applicable):
dracut-041-14.fc22.x86_64
kernel-4.1.6-200.fc22.x86_64


How reproducible: Always


Steps to Reproduce:
1. Make Intel fakeraid array with gpt, partition it and copy files from working fedora install disk by using rsync.
2. Update fstab with new UUID, install grub2 and remake initramfs with dracut on the RAID array.
3. Try to boot from RAID array

Actual results: Boot hangs with disk with UUID not found.


Expected results: RAID array is assembled and Fedora boots normally.


Additional info:  I believe that is not a module or driver problem because I can assemble the drives manually when it drops me to dracut prompt during the boot process by using 'mdadm -I /dev/sda' and 'mdadm -I /dev/sdb'.

https://lists.fedoraproject.org/pipermail/users/2015-August/464727.html

mdadm --detail-platform
       Platform : Intel(R) Matrix Storage Manager
        Version : 11.2.0.1527
    RAID Levels : raid0 raid1 raid10 raid5
    Chunk Sizes : 4k 8k 16k 32k 64k 128k
    2TB volumes : supported
      2TB disks : supported
      Max Disks : 6
    Max Volumes : 2 per array, 4 per controller
 I/O Controller : /sys/devices/pci0000:00/0000:00:1f.2 (SATA)

00:1f.2 RAID bus controller [0104]: Intel Corporation SATA Controller [RAID mode] [8086:2822] (rev 04)

Comment 1 Harald Hoyer 2015-09-02 09:58:36 UTC
please add "rd.debug" to the kernel command line and attach the rdsosreport.txt

Comment 2 Harald Hoyer 2015-09-02 10:03:47 UTC
Also, does adding "rd.auto" to the kernel command line help?

What is the output of:
# dracut --print-cmdline

of the booted system (if you manage to boot)?

Comment 3 srakitnican 2015-09-02 15:23:41 UTC
In the meantime I have switched the drives to software RAID using mdadm. I was having the same problem. With appending rd.auto I was able to boot the kernel.

Steps that I have performed:

1. Mounted / RAID array and separated /boot partition to /mnt
2. Binded /sys /dev /run /proc to /mnt and chrooted to /mnt
3. Created mdadm.conf (mdadm --examine --scan --verbose > /etc/mdadm.conf)
4. Rebuilt initramfs, installed grub2 to /dev/sda and made /boot/grub2/grub.cfg
5. After reboot appended rd.auto to command line to be able to boot

# dracut --print-cmdline
rd.md.uuid=2cd3793a:ccdf6b2f:b32ade77:a0affb93  root=UUID=80cbf9c5-b4a8-452a-ac1f-b1ff6f190190 rootflags=rw,relatime,lazytime,attr2,inode64,sunit=1024,swidth=2048,noquota rootfstype=xfs

Attached "rdsosreport.txt.gz" with "rd.debug" and without "rd.auto" flags



I will try again the same with onboard RAID controler.

Comment 4 srakitnican 2015-09-02 15:30:41 UTC
Created attachment 1069478 [details]
rdsosreport.txt.gz with "rd.debug" and without "rd.auto" flag - Software RAID

Comment 5 srakitnican 2015-09-02 15:39:23 UTC
# mdadm --detail /dev/md0
/dev/md0:
        Version : 1.2
  Creation Time : Wed Sep  2 01:40:21 2015
     Raid Level : raid0
     Array Size : 40927232 (39.03 GiB 41.91 GB)
   Raid Devices : 2
  Total Devices : 2
    Persistence : Superblock is persistent

    Update Time : Wed Sep  2 01:40:21 2015
          State : clean 
 Active Devices : 2
Working Devices : 2
 Failed Devices : 0
  Spare Devices : 0

     Chunk Size : 512K

           Name : oldiemodern:0  (local to host oldiemodern)
           UUID : 2cd3793a:ccdf6b2f:b32ade77:a0affb93
         Events : 0

    Number   Major   Minor   RaidDevice State
       0       8        2        0      active sync   /dev/sda2
       1       8       18        1      active sync   /dev/sdb2

Comment 6 srakitnican 2015-09-02 19:00:37 UTC
Fakeraid working as well with "rd.auto" at kernel command line. Steps same as in previous message:

1. Mounted / RAID array and separated /boot partition to /mnt
2. Binded /sys /dev /run /proc to /mnt and chrooted to /mnt
3. Created mdadm.conf (mdadm --examine --scan --verbose > /etc/mdadm.conf)
4. Rebuilt initramfs, installed grub2 to /dev/sda and made /boot/grub2/grub.cfg
5. After reboot appended rd.auto to command line to be able to boot

# dracut --print-cmdline
 rd.md.uuid=dfb0d453:e42b5ea1:1072c5b2:259bb47d  root=UUID=c94199d0-2f52-4745-89a3-6a9a50ed8c93 rootflags=rw,relatime,lazytime,seclabel,attr2,inode64,logbsize=128k,sunit=256,swidth=512,noquota rootfstype=xfs




# mdadm --detail /dev/md126
/dev/md126:
      Container : /dev/md/imsm0, member 0
     Raid Level : raid0
     Array Size : 250064896 (238.48 GiB 256.07 GB)
   Raid Devices : 2
  Total Devices : 2

          State : clean 
 Active Devices : 2
Working Devices : 2
 Failed Devices : 0
  Spare Devices : 0

     Chunk Size : 128K


           UUID : 268bc2d5:ca059a6e:5e6cb760:42662de2
    Number   Major   Minor   RaidDevice State
       1       8        0        0      active sync   /dev/sda
       0       8       16        1      active sync   /dev/sdb

# mdadm --detail /dev/md127 
/dev/md127:
        Version : imsm
     Raid Level : container
  Total Devices : 2

Working Devices : 2


           UUID : dfb0d453:e42b5ea1:1072c5b2:259bb47d
  Member Arrays : /dev/md/TranscendPowa

    Number   Major   Minor   RaidDevice

       0       8        0        -        /dev/sda
       1       8       16        -        /dev/sdb

Comment 7 srakitnican 2015-09-02 19:01:46 UTC
Created attachment 1069577 [details]
rdsosreport.txt.gz with "rd.debug" and without "rd.auto" flag - FakeRAID

Comment 8 Harald Hoyer 2015-09-03 10:01:49 UTC
(In reply to semiRocket from comment #6)

> # dracut --print-cmdline
>  rd.md.uuid=dfb0d453:e42b5ea1:1072c5b2:259bb47d 
> root=UUID=c94199d0-2f52-4745-89a3-6a9a50ed8c93
> rootflags=rw,relatime,lazytime,seclabel,attr2,inode64,logbsize=128k,
> sunit=256,swidth=512,noquota rootfstype=xfs
> 

Does it also boot with the kernel cmdline parameter suggested by dracut? Especially "rd.md.uuid=..."

Comment 9 srakitnican 2015-09-03 10:18:21 UTC
Yes it does. I have added rd.md.uuid to kernel cmdline in /etc/default/grub and remade with grub2-mkconfig. Computer now boots fine from RAID array.

Comment 10 Fedora End Of Life 2016-07-19 19:17:56 UTC
Fedora 22 changed to end-of-life (EOL) status on 2016-07-19. Fedora 22 is
no longer maintained, which means that it will not receive any further
security or bug fix updates. As a result we are closing this bug.

If you can reproduce this bug against a currently maintained version of
Fedora please feel free to reopen this bug against that version. If you
are unable to reopen this bug, please file a new report against the
current release. If you experience problems, please add a comment to this
bug.

Thank you for reporting this bug and we are sorry it could not be fixed.