[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#350510: marked as done (loads ohci-hcd; breaks resume from software suspend)



Your message dated Thu, 29 May 2008 11:06:59 +0200
with message-id <20080529090659.GR27599@baikonur.stro.at>
and subject line Re: Bug#350510: loads ohci-hcd; breaks resume from software suspend
has caused the Debian Bug report #350510,
regarding loads ohci-hcd; breaks resume from software suspend
to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact owner@bugs.debian.org
immediately.)


-- 
350510: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=350510
Debian Bug Tracking System
Contact owner@bugs.debian.org with problems
--- Begin Message ---
Package: initramfs-tools
Version: 0.48
Severity: normal

On my laptop, a Fujutsu P-2110 lifebook, if I use softwre suspend
(version 1; to disk), when resuming the initramfs loads ohci_hcd before
starting the resume process. When the hibernate program then tries to
load ohci_hcd (which does not show as loaded in lsmod anymore due to the
software suspend resume having happened), it fails to load like this:

ohci_hcd: 2005 April 22 USB 1.1 'Open' Host Controller (OHCI) Driver (PCI)
ACPI: PCI Interrupt 0000:00:02.0[A] -> Link [LNKU] -> GSI 11 (level, low) -> IRQ 11
ohci_hcd 0000:00:02.0: OHCI Host Controller
ohci_hcd 0000:00:02.0: USB HC takeover failed!  (BIOS/SMM bug)
ohci_hcd 0000:00:02.0: can't reset
ACPI: PCI interrupt for device 0000:00:02.0 disabled
ohci_hcd 0000:00:02.0: init 0000:00:02.0 fail, -16
ohci_hcd: probe of 0000:00:02.0 failed with error -16

And usb stops working.

I discovered a simple workaround for this; I modified hook-functions to not
include the ohci_hcd module in my initramfs, so it is not loaded before the
reume. Then the module loads ok. So I suppose that the kernel is getting
confused with this module being loaded essentially twice in a row w/o
being unloaded.

At a minimum, there should be some way to drop the usb modules from the
initramfs, if they're not needed to mount the root filesystem, so I don't
need to edit files in /usr to work around this problem.

A slightly better fix is to modify local-premount/suspend to 
rmmod all unused kernel modules before resuming the system. Here's
something I came up with that works for me:

	for module in $(cat /proc/modules |awk '{ print $1}'); do
		rmmod $module 2>/dev/null || true
	done
	echo $major_minor >/sys/power/resume			

[Even more optimal would be for the initramfs to avoid loading any kernel
modules when doing a resume, since none of the modules really need to be
loaded and loading unnecessary modules leads to unnecessry delay during
resume. For example, on my latop, loading the ethernet module takes 3
seconds and this happens unneccessarily before every resume. Of course,
this is difficult given the current code since it relys on udev to make
the devide node that is then examined to get the major and minor numbers
to use when resuming.]

-- System Information:
Debian Release: testing/unstable
  APT prefers unstable
  APT policy: (500, 'unstable'), (500, 'stable'), (1, 'experimental')
Architecture: i386 (i686)
Shell:  /bin/sh linked to /bin/bash
Kernel: Linux 2.6.15-1-686
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8)

Versions of packages initramfs-tools depends on:
ii  busybox                       1:1.01-4   Tiny utilities for small and embed
ii  cpio                          2.6-10     GNU cpio -- a program to manage ar
ii  klibc-utils                   1.1.16-1   small statically-linked utilities 
ii  udev                          0.079-1    /dev/ and hotplug management daemo

initramfs-tools recommends no packages.

-- no debconf information

-- 
see shy jo

Attachment: signature.asc
Description: Digital signature


--- End Message ---
--- Begin Message ---
Version: 2.6.25-4

On Tue, May 27, 2008 at 08:40:42PM -0500, EspeonEefi wrote:
> On Wed, 2008-05-28 at 01:37 +0200, maximilian attems wrote:
> > can you still reproduce the following bug 
> > bugs.debian.org/350510
> > on a recent kernel aka at least 2.6.24 better 2.6.25 that is still
> > upstream supported?
> 
> I can confirm that USB still works now after I suspend to disk by doing
> "echo 'disk' > /sys/power/state". Thus, I can no longer reproduce this
> bug on with a 2.6.25 kernel.
> 
> espeoneefi@ceruleancity:~$ uname -a
> Linux ceruleancity 2.6.25-2-686 #1 SMP Tue May 27 15:38:35 UTC 2008 i686 GNU/Linux
> espeoneefi@ceruleancity:~$ dpkg -l linux-image-2.6.25-2-686
> Desired=Unknown/Install/Remove/Purge/Hold
> | Status=Not/Inst/Cfg-files/Unpacked/Failed-cfg/Half-inst/trig-aWait/Trig-pend
> |/ Err?=(none)/Hold/Reinst-required/X=both-problems (Status,Err: uppercase=bad)
> ||/ Name           Version        Description
> +++-==============-==============-============================================
> ii  linux-image-2. 2.6.25-4       Linux 2.6.25 image on PPro/Celeron/PII/PIII/
> 
> -- eefi
> 

thank you very much for the testing *and* the quick feedback.

closing bug report.

-- 
maks


--- End Message ---

Reply to: