-virtual kernel missing dependent modules (ahci fails to load)

Bug #658461 reported by Scott Moser
64
This bug affects 12 people
Affects Status Importance Assigned to Milestone
linux (Ubuntu)
Confirmed
Medium
Unassigned
Nominated for Maverick by Scott Moser

Bug Description

with -virtual kernel modprobe ahci will fail to load the ahci module due to missing symbols.

The symbols that are missing would be provided by kernel/drivers/ata/libahci.ko . but that module is not included in -virtual.

It seems this probably points a a problem with the white listing. white-listing should imply dependencies.

As far as I can tell (per 'sudo depmod --all --filesyms /boot/System.map-2.6.35-22-virtual --errsyms'), we're lucky that only this one leaked through. I think ideally kernel build would fail if depmod showed missing symbols.

sudo depmod -a -F /boot/System.map-2.6.35-22-virtual --errsyms
WARNING: /lib/modules/2.6.35-22-virtual/kernel/drivers/ata/ahci.ko needs unknown symbol ahci_ops
WARNING: /lib/modules/2.6.35-22-virtual/kernel/drivers/ata/ahci.ko needs unknown symbol ahci_start_engine
WARNING: /lib/modules/2.6.35-22-virtual/kernel/drivers/ata/ahci.ko needs unknown symbol ahci_interrupt
...
WARNING: /lib/modules/2.6.35-22-virtual/kernel/drivers/ata/ahci.ko needs unknown symbol ahci_reset_em
WARNING: /lib/modules/2.6.35-22-virtual/kernel/drivers/ata/ahci.ko needs unknown symbol ahci_save_initial_config
WARNING: /lib/modules/2.6.35-22-virtual/kernel/drivers/ata/ahci.ko needs unknown symbol ahci_ignore_sss

ProblemType: Bug
DistroRelease: Ubuntu 10.10
Package: linux-image-2.6.35-22-virtual 2.6.35-22.33
Regression: Yes
Reproducible: Yes
ProcVersionSignature: User Name 2.6.35-22.33-virtual 2.6.35.4
Uname: Linux 2.6.35-22-virtual i686
AlsaDevices: Error: command ['ls', '-l', '/dev/snd/'] failed with exit code 2: ls: cannot access /dev/snd/: No such file or directory
AplayDevices: Error: [Errno 2] No such file or directory
Architecture: i386
ArecordDevices: Error: [Errno 2] No such file or directory
CurrentDmesg: [ 19.800018] eth0: no IPv6 routers present
Date: Mon Oct 11 15:02:46 2010
Ec2AMI: ami-508c7839
Ec2AMIManifest: (unknown)
Ec2AvailabilityZone: us-east-1d
Ec2InstanceType: t1.micro
Ec2Kernel: aki-407d9529
Ec2Ramdisk: unavailable
Lspci:

Lsusb: Error: command ['lsusb'] failed with exit code 1:
ProcCmdLine: root=LABEL=uec-rootfs ro console=hvc0
ProcEnviron:
 PATH=(custom, user)
 LANG=en_US.UTF-8
 SHELL=/bin/bash
ProcModules: acpiphp 17239 0 - Live 0xe6f2d000
SourcePackage: linux

Revision history for this message
Scott Moser (smoser) wrote :
Scott Moser (smoser)
Changed in linux (Ubuntu):
importance: Undecided → Medium
status: New → Confirmed
Revision history for this message
Patrick G. (elgato) wrote :

Looks like -virtual is missing at least 2 important modules.
See Bug: https://bugs.launchpad.net/ubuntu/+source/linux-meta/+bug/659084

Revision history for this message
toobuntu (toobuntu) wrote :

Bug # 663053 may also be related:
encrypted block devices unavailable with linux-virtual
https://bugs.launchpad.net/bugs/663053

Revision history for this message
Richard Laager (rlaager) wrote :

This is an issue for me in Natty. It prevents booting a guest under VirtualBox.

Revision history for this message
Brandon Lebedev (brandon-lebedev) wrote :

I confirm rlagger's report. If I boot kernel 2.6.38-11-virtual in VirtualBox, this error message appears:

FATAL: Error inserting ahci (/lib/modules/2.6.38-11-virtual/kernel/drivers/ata/ahci.ko): Unknown symbol in module, or unknown parameter (see dmesg)

(dmesg output capture at http://www.freeimagehosting.net/newuploads/225b3.png)

modprobe ahci also fails if I chroot into the system.

Revision history for this message
Diffform (sstoeckl-gmx) wrote :

It also happens for kernel 3.0.0-12-virtual in ubuntu 11.10:

FATAL: Error inserting ahci (/lib/modules/3.0.0-12-virtual/kernel/drivers/ata/ahci.ko): Unknown symbol in module, or unknown parameter (see dmesg)

Revision history for this message
phil (fongpwf) wrote :

Is there a workaround? Is it possible to manually add libahci.ko?

Also, is this really a duplicate of 570542? 570542 is technically fixed since ahci.ko is included. It just doesn't work if you don't also include its dependencies.

Revision history for this message
The Loeki (the-loeki) wrote :

It's largely semantics (it should be 'related'), but the issue is largely the same. For some reason the build farms don't pick up on ahci's dependency on libahci (it's also not registered in modules.dep) and therefore libahci isn't included, leading to the same symptom; SATA won't work with -virtual.
The resolution is for both current bugs also the same: include libahci and register the dependency correctly :)

Revision history for this message
The Loeki (the-loeki) wrote :

The ahci.ko needs libahci to work, which is included in linux-image-extra-virtual (along with everything but the kitchen sink). It *SHOULD* be included in linux-image-virtual IMHO, because ahci.ko is next to worthless without it, and installing an additional 120MB of drivers, modules and cruft to get a 47KiB module to get SATA to work is just plain silly (bug #658461)

Workaround (I guarantee nothing :-P ):
###########
cd /tmp
apt-get download linux-image-extra-3.0.0-12-virtual
cd /
dpkg --fsys-tarfile /tmp/linux-image-extra-3.0.0-12-virtual*.deb | tar --wildcards -xf - */libahci.ko
depmod -a
update-initramfs -u
shutdown -r now
############

<presto>

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.