Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 522176 - install-amd64-minimal-20140904.iso should include xhci-pci driver in initramfs
Summary: install-amd64-minimal-20140904.iso should include xhci-pci driver in initramfs
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Release Media
Classification: Unclassified
Component: InstallCD (show other bugs)
Hardware: All Linux
: Highest blocker with 4 votes (vote)
Assignee: Gentoo Release Team
URL:
Whiteboard:
Keywords:
: 546392 547716 550666 554418 563346 564850 (view as bug list)
Depends on: 556398
Blocks:
  Show dependency tree
 
Reported: 2014-09-05 06:12 UTC by Patrick Lauer
Modified: 2016-02-28 22:43 UTC (History)
13 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
Script which add xhci-pci.ko and ohci-pci.ko into initrd into install-amd64-minimal media (add-usb-to-iso.sh,1.39 KB, text/plain)
2015-11-13 13:03 UTC, Petr Bahula
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Patrick Lauer gentoo-dev 2014-09-05 06:12:21 UTC
The livecd install-amd64-minimal-20140904.iso fails to boot from USB.

Looking at dmesg it seems to load modules for {e,o,u,x}HCI controllers, but does not detect any USB devices attached. lsusb shows only the usb controller root.

usb_storage is loaded, but without detecting any devices it is a little bit useless.

(And it also disables usb keyboards, so that's ... not funny)


# lsusb 
Bus 005 Device 003: ID 0557:2260 ATEN International Co., Ltd 
Bus 007 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 006 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 005 Device 002: ID 0557:8021 ATEN International Co., Ltd CS1764A [CubiQ DVI KVMP Switch]
Bus 005 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 002 Device 003: ID 0781:556c SanDisk Corp. 
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Comment 1 Patrick Lauer gentoo-dev 2014-09-05 06:15:16 UTC
(The lsusb output is from a "working" system, just for reference)
Comment 2 hgdufp 2015-03-21 23:48:39 UTC
install-amd64-minimal-20150319.iso and install-amd64-minimal-20150312.iso appear to still be affected by the same issue.
Comment 3 enteest 2015-04-03 19:04:15 UTC
install-amd64-minimal-20150402.iso still/again affected. If, like me, you are using an USB CDROM drive and an usb keyboard the minimal iso completely fails to boot on such hardware: Form the console output:
Loading Keymap... (cant't enter anything here)
...
!! Meda not found
** No bootable medium found
Could not find CD to boot, something else needed
...
root block device() :: _ (again, can't enter anything)

Lacking PS/2 hardware and an alternative disc drive, I can't further debug but I suppose something's funky in the kernel .config. 

The install-x86-minimal isos work, as do the admincd-amd64 discs. Also, the install-amd64-minimal-201412XX.iso did run, in other words, 4 months of failed autobuilds in a row.
Comment 4 Jorge Manuel B. S. Vicetto (RETIRED) Gentoo Infrastructure gentoo-dev 2015-04-12 23:18:23 UTC
(In reply to enteest from comment #3)
> install-amd64-minimal-20150402.iso still/again affected. If, like me, you
> are using an USB CDROM drive and an usb keyboard the minimal iso completely
> fails to boot on such hardware: Form the console output:
> Loading Keymap... (cant't enter anything here)
> ...
> !! Meda not found
> ** No bootable medium found
> Could not find CD to boot, something else needed
> ...
> root block device() :: _ (again, can't enter anything)
> 
> Lacking PS/2 hardware and an alternative disc drive, I can't further debug
> but I suppose something's funky in the kernel .config. 
> 
> The install-x86-minimal isos work, as do the admincd-amd64 discs. Also, the
> install-amd64-minimal-201412XX.iso did run, in other words, 4 months of
> failed autobuilds in a row.

These CDs do work. They seem to lack the support for USB install - so this is a kernel config issue. I'll try to look at the diff when I get home.
Comment 5 enteest 2015-04-24 21:19:52 UTC
Do livecd images not use the standard genkernel? I think I remember I diffed its config a few weeks back and found no USB related changed in the relevant timeframe. Could it be initscripts/ramfs failing to load a module? Someone with PS/2 hardware could easily help narrow this down.
Comment 6 Jorge Manuel B. S. Vicetto (RETIRED) Gentoo Infrastructure gentoo-dev 2015-04-25 18:22:38 UTC
The releng team uses its own kernel config for the installcd / admincd[1].

 [1] - https://gitweb.gentoo.org/proj/releng.git/tree/releases/weekly/kconfig/amd64
Comment 7 Pacho Ramos gentoo-dev 2015-04-25 20:09:53 UTC
This are the systemrescuecd configs, maybe that will help us to find the culprit config option as this is supposedly working on that distro:
http://sourceforge.net/p/systemrescuecd/code/ci/master/tree/kernelcfg/
Comment 8 Pacho Ramos gentoo-dev 2015-04-25 20:17:11 UTC
*** Bug 546392 has been marked as a duplicate of this bug. ***
Comment 9 Pacho Ramos gentoo-dev 2015-04-25 20:17:45 UTC
*** Bug 547716 has been marked as a duplicate of this bug. ***
Comment 10 Pacho Ramos gentoo-dev 2015-04-25 20:25:19 UTC
Could this be caused by bug 534266?
Comment 11 Jorge Manuel B. S. Vicetto (RETIRED) Gentoo Infrastructure gentoo-dev 2015-04-25 20:53:14 UTC
(In reply to Pacho Ramos from comment #10)
> Could this be caused by bug 534266?

That bug is about the x86 install-cd and this one is about amd64.
Comment 12 enteest 2015-04-25 23:29:08 UTC
(In reply to Jorge Manuel B. S. Vicetto from comment #6)
> The releng team uses its own kernel config for the installcd / admincd[1].
> 
>  [1] -
> https://gitweb.gentoo.org/proj/releng.git/tree/releases/weekly/kconfig/amd64

Unless I'm missing something last commit there was 2014-10-31. For me the breakage occurred between the December 2014 and January 2015 releases. I did successfully use older media from 2014 as well but I can't say if install-amd64-minimal-20140904 was among them.

Just to throw this in here, it might be that this bug only affects UEFI based systems. I tried booting with legacy BIOS as well, with no success.
Comment 13 enteest 2015-05-25 17:31:14 UTC
(In reply to enteest from comment #3)

> The install-x86-minimal isos work, as do the admincd-amd64 discs. 

admincd-amd64-20150514.iso now exibits the same issue. x86 still unaffected. 

Maybe I'm misinterpreting the vibe (IRC and here) but I got the impression that it's implied if I make noise about a bug it's expected of me to post the patch or at least point out the exact cause as well. However, I really can't debug this and someone familiar with the live media build process should take this on. On a non rolling release distro this would be a major blocker but here it seems no one (releng team, maintainers?) cares. Not to push anyone but this has been open for many months and it's only the very first experience a new Gentoo user will have.
Comment 14 lkd-gentoo 2015-05-27 07:37:27 UTC
Misreported this issue in another bug (#522172); probable duplicate.  Cause listed there.  tl;dr: xhci-pci module (makes xhci-hcd actually usable on modern systems) isn't present inside the initrd, this cripples booting via USB3 root hub since all non-embedded examples attach said hub through the machine's PCI bus.

ohci-pci module is also missing.  This will cripple booting through an OHCI-based USB2 root hub on the PCI bus.
Comment 15 Jeroen Roovers (RETIRED) gentoo-dev 2015-05-28 10:34:07 UTC
Yes?
Comment 16 Jorge Manuel B. S. Vicetto (RETIRED) Gentoo Infrastructure gentoo-dev 2015-05-29 13:31:49 UTC
*** Bug 550666 has been marked as a duplicate of this bug. ***
Comment 17 Erik Jonsson 2015-05-29 18:11:33 UTC
The usb devices become attached and active again near where the bash prompt shows. I can tell since the keyboard start working again and typing works but the big problem is that if a usbdrive with a liveimage flashed using dd is used the root is removed during boot and everything fails.
Using usbdrives to install is a no go, maybe just on (some) UEFI systems.
I am using UEFI and I had no problems on my BIOS PC (non-UEFI).
Comment 18 Jeroen Roovers (RETIRED) gentoo-dev 2015-06-12 11:44:17 UTC
*** Bug 534266 has been marked as a duplicate of this bug. ***
Comment 19 hololeap 2015-07-08 03:37:52 UTC
Just tested this on my XPS 13 9343 (all external USB ports are USBv3). The kernel and initramfs seemed to load, but it got stuck when it tried to mount root (it said "Could not find medium" or something like that).

I dropped to a shell and found that xhci_hcd was loaded, but xhci_pci was not. This may be a problem with genkernel not pulling this module when the autobuilds are created. I created bug #554202 in hopes that fixing this issue in genkernel will solve the problem.
Comment 20 Jeroen Roovers (RETIRED) gentoo-dev 2015-07-08 04:49:06 UTC
*** Bug 554202 has been marked as a duplicate of this bug. ***
Comment 22 archiesix 2015-08-07 11:50:28 UTC
The latest install-amd64-minimal-20150806.iso still does not boot on a hp zbook 15 (uefi system, boot in CSM). Everything is ok up to the choice of the keyboard, then the kernel cannot find the USB device with the root filesystem. I am using install-amd64-minimal-20140508.iso, that boots without problems.
Comment 23 archiesix 2015-08-22 12:04:59 UTC
I just tested install-amd64-minimal-20150820: it is still not working. As enteest@outlook.com points out, I think that this situation is quite harmful with respect to potential new Gentoo users and should be fixed quickly.
Comment 24 archiesix 2015-09-10 09:21:09 UTC
Still the same problem with install-amd64-minimal-20150903.iso... It seems than no one is taking care of this...
Comment 25 Jeroen Roovers (RETIRED) gentoo-dev 2015-10-09 07:59:34 UTC
*** Bug 554418 has been marked as a duplicate of this bug. ***
Comment 26 Mike Limansky 2015-10-18 20:51:05 UTC
*** Bug 563346 has been marked as a duplicate of this bug. ***
Comment 27 Jorge Manuel B. S. Vicetto (RETIRED) Gentoo Infrastructure gentoo-dev 2015-11-04 12:35:25 UTC
*** Bug 564850 has been marked as a duplicate of this bug. ***
Comment 28 Petr Bahula 2015-11-08 11:30:49 UTC
install-amd64-minimal-20150924.iso still not work from USBv3 ports on my AMD computers. The same media work on the same computer from USBv2 port. But on computers without USBv2 port is not possible to use it.

From list of contents of /isolinux/gentoo.igz:

drwxr-xr-x   2 root     root            0 Sep 24 08:50 lib/modules/4.0.5-gentoo/kernel/drivers/usb/host
-rw-r--r--   1 root     root        60984 Sep 24 08:50 lib/modules/4.0.5-gentoo/kernel/drivers/usb/host/ehci-hcd.ko
-rw-r--r--   1 root     root       137168 Sep 24 08:50 lib/modules/4.0.5-gentoo/kernel/drivers/usb/host/xhci-hcd.ko
-rw-r--r--   1 root     root        11480 Sep 24 08:50 lib/modules/4.0.5-gentoo/kernel/drivers/usb/host/ehci-pci.ko
-rw-r--r--   1 root     root        37000 Sep 24 08:50 lib/modules/4.0.5-gentoo/kernel/drivers/usb/host/uhci-hcd.ko
-rw-r--r--   1 root     root        47424 Sep 24 08:50 lib/modules/4.0.5-gentoo/kernel/drivers/usb/host/ohci-hcd.ko
-rw-r--r--   1 root     root        25440 Sep 24 08:50 lib/modules/4.0.5-gentoo/kernel/drivers/usb/host/sl811-hcd.ko
drwxr-xr-x   2 root     root            0 Sep 24 08:50 lib/modules/4.0.5-gentoo/kernel/drivers/pcmcia


Please, add xhci-pci to /isolinux/gentoo.igz.
Comment 29 Petr Bahula 2015-11-08 18:22:15 UTC
I was create corrected image. It is tested on one computer only and it is loot as work. I don't have place to place this image to free access but here is how I create it. I hope that it help to anybody.

Needed packages: sys-fs/squashfs-tools, app-arch/p7zip, app-arch/cpio, app-arch/xz-utils, app-cdr/cdrtools, sys-boot/syslinux.

# ## mount iso image
# mount -o loop install-amd64-minimal-20150924.iso /mnt/cdrom/
# ## copy contents do disk
# mkdir install_img_dir
# cp -a /mnt/cdrom/* install_img_dir/
# ## extract xhci-pci.ko from image.squashfs
# mkdir workdir
# cd workdir
# unsquashfs /mnt/cdrom/image.squashfs lib64/modules/4.0.5-gentoo/kernel/drivers/usb/host/xhci-pci.ko
# ## unpack initrd (need app-arch/p7zip, it is possible to use xz from app-arch/xz-utils, but I was use 7z)
# 7z e /mnt/cdrom/isolinux/gentoo.igz
# mkdir tmp
# cd tmp
# cpio -i < ../gentoo
# ## add missing xhci-pci.ko to unpacked initrd
# cp ../squashfs-root/lib64/modules/4.0.5-gentoo/kernel/drivers/usb/host/xhci-pci.ko lib64/modules/4.0.5-gentoo/kernel/drivers/usb/host/
# ## and registrate it
# echo xhci-pci >> etc/modules/usb 
# ## pack initrd back
# find . -print0 | cpio -o -0 -H newc > ../gentoo
# cd ..
# xz -e --check=none -z -f -9 gentoo
# ## copy it to contents if iso image
# cp gentoo.xz ../install_img_dir/isolinux/gentoo.igz
# ## make hybrid iso image
# cd ..
# mkisofs -o install-amd64-minimal-20150924-xhci.iso -b isolinux/isolinux.bin -c isolinux/boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table -R install_img_dir
# isohybrid output.iso
Comment 30 Petr Bahula 2015-11-13 13:03:15 UTC
Created attachment 416836 [details]
Script which add xhci-pci.ko and ohci-pci.ko into initrd into install-amd64-minimal media

Really working script which add xhci-pci.ko and ohci-pci.ko into initrd into install-amd64-minimal media.
Comment 31 Pacho Ramos gentoo-dev 2016-02-28 15:46:27 UTC
it looks like finally all arches have new enough genkernel versions in stable, could this be solved finally then?
Comment 32 Robin Johnson archtester Gentoo Infrastructure gentoo-dev Security 2016-02-28 22:43:47 UTC
Confirmed present and working in 20150225 amd64 iso