Re: [Bug 31432] Resume from suspend fails on new FireWire stack (TSB43AB22/A IEEE-1394a-2000 Controller)

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

 



On Mar 19 bugzilla-daemon@xxxxxxxxxxxxxxxxxxx wrote:
> https://bugzilla.kernel.org/show_bug.cgi?id=31432
> 
> 
> Rafael J. Wysocki <rjw@xxxxxxx> changed:
> 
>            What    |Removed                     |Added
> ----------------------------------------------------------------------------
>                  CC|                            |rjw@xxxxxxx
>           Component|Hibernation/Suspend         |IEEE1394
>              Blocks|                            |7216
>          AssignedTo|power-management_other@kern |drivers_ieee1394@kernel-bug
>                    |el-bugs.osdl.org            |s.osdl.org
>             Product|Power Management            |Drivers

Quoting the bug description for linux1394-devel:

> Description From  JaÅa  2011-03-19 12:34:00  
> Created an attachment (id=51242) [details]
> dmesg of 2.6.38

[https://bugzilla.kernel.org/attachment.cgi?id=51242]

> 
> I have diagnosed a regression in several kernel versions (at least
> 2.6.35.x and current stable version 2.6.38). 
> 
> After upgrading from 2.6.32 (Ubuntu 10.04) to 2.6.35 (Ubunutu 10.10)
> resume from suspend failed so I came across the /sys/power/pm_trace
> tracing method and with that info I narrowed the issue to a firewire
> device which seems to be the issue. I also tried the recently released
> 2.6.38 mainline version.
> 
> A workaround which confirmed my suspicions is removing firewire modules:
> # modprobe -r firewire_core firewire_ohci
> Then resume works well.
> 
> Here's the evidence:
> 
> $ uname -a
> Linux sendell 2.6.38-020638-generic #201103151303 SMP Tue Mar 15
> 13:08:09 UTC 2011 x86_64 GNU/Linux
> 
> relevant part of dmesg:
> [    1.181998] PM: Hibernation image not present or could not be loaded.
> [    1.182017] registered taskstats version 1
> [    1.182307]   Magic number: 0:117:476
> [    1.182310]   hash matches /home/kernel-ppa/COD/linux/drivers/base/power/main.c:514
> [    1.182370] pci 0000:03:05.0: hash matches
> [    1.182442] rtc_cmos 00:05: setting system clock to 2024-03-02 10:28:40 UTC (1709375320)
> 
> $ lspci | grep 03:05
> 03:05.0 FireWire (IEEE 1394): Texas Instruments TSB43AB22/A IEEE-1394a-2000 Controller (PHY/Link)
> 
> $ grep 03:05 dmesg-38.txt 
> [    0.360052] pci 0000:03:05.0: [104c:8023] type 0 class 0x000c00
> [    0.360067] pci 0000:03:05.0: reg 10: [mem 0xfdeff000-0xfdeff7ff]
> [    0.360076] pci 0000:03:05.0: reg 14: [mem 0xfdef8000-0xfdefbfff]
> [    0.360123] pci 0000:03:05.0: supports D1 D2
> [    0.360125] pci 0000:03:05.0: PME# supported from D0 D1 D2 D3hot
> [    0.360130] pci 0000:03:05.0: PME# disabled
> 
> I've posted this on Launchpad (Bug #732641) but no responses at all
> there.

Alas there are no messages from the firewire drivers in this log.  Not even
a message from PCI core that a firewire-ohci driver method failed.  Hence
we (linux1394-devel people) have nothing to go on yet.

Can somebody who knows power management explain what should be
investigated next?

The downstream tracker item is:
https://bugs.launchpad.net/ubuntu/+source/linux/+bug/732641

It contains a somewhat different failure description from a 2.6.35 Ubuntu
kernel:

> Since upgrade to 10.10/kernel 2.6.35 kernel doesn't complete resume from
> suspend.
> 
> $ uname -a
> Linux sendell 2.6.35-27-generic #48-Ubuntu SMP Tue Feb 22 20:25:46 UTC
> 2011 x86_64 GNU/Linux
> 
> Xorg vty is blank, I can change to other vtys but when i return to the
> one with Xorg, switching no longer works. Only manual reset remedies
> this situation.
> 
> Tried
> https://wiki.ubuntu.com/DebuggingKernelSuspend#%22resume-trace%22%20debugging%20procedure%20for%20finding%20buggy%20drivers
> 
> [ 0.714873] PM: Resume from disk failed.
> [ 0.714886] registered taskstats version 1
> [ 0.715167] Magic number: 0:608:476
> [ 0.715170] hash matches /build/buildd/linux-2.6.35/drivers/base/power/main.c:545
> [ 0.715213] pci 0000:03:05.0: hash matches
> [ 0.715281] rtc_cmos 00:05: setting system clock to 1980-09-08 10:27:51 UTC (337256871)
> 
> $ lspci | grep 03:05
> 03:05.0 FireWire (IEEE 1394): Texas Instruments TSB43AB22/A IEEE-1394a-2000 Controller (PHY/Link)
> 
> $ dmesg|grep fire
> [ 0.380065] pci 0000:03:05.0: reg 10: [mem 0xfdeff000-0xfdeff7ff]
> [ 0.380071] pci 0000:03:05.0: reg 14: [mem 0xfdef8000-0xfdefbfff]
> [ 0.380105] pci 0000:03:05.0: supports D1 D2
> [ 0.380107] pci 0000:03:05.0: PME# supported from D0 D1 D2 D3hot
> [ 0.380111] pci 0000:03:05.0: PME# disabled
> [ 0.715213] pci 0000:03:05.0: hash matches
> [ 0.893472] firewire_ohci 0000:03:05.0: PCI INT A -> Link[APC4] -> GSI 19 (level, low) -> IRQ 19
> [ 0.950061] firewire_ohci: Added fw-ohci device 0000:03:05.0, OHCI v1.10, 4 IR + 8 IT contexts, quirks 0x2
> 
> $ lsmod|grep fire
> firewire_ohci 24839 0
> firewire_core 54327 1 firewire_ohci
> crc_itu_t 1739 1 firewire_core
> 
> $sudo modprobe -r firewire_core firewire_ohci
> 
> And then resuming from suspend works.
> 

JaÅa, are all of the dmesg messages in this report from the same session?

Linux-pm folks, why is the PM Restore failure reported at 0.714873 but the
system proceeds and logs successful attachment of firewire-ohci's pci_probe
to the PCI device?

Also, why is base/power/main.c::device_resume mentioned in the PM trace
but there is no hint in the log that firewire-ohci's pci_resume was called?

Side note:  While firewire-ohci's pci_probe succeeded, the controller
might actually not have become operational.  Usually the success message
from firewire-ohci should be followed on circa 500 ms afterwards by a
message like this: "firewire_core: created device fw0: GUID
00110600000041cc, S400"

Can somebody comment on the phenomenon that VT switching was affected? ...
Well, maybe firewire-core hung in a workqueue job which in turn prevented
subsequent processing of other subsystems' workqueue jobs.  This can be
much more of a problem with a kernel like 2.6.35 than with newer ones
with concurrency managed workqueues (2.6.36 and later).

(JaÅa, prefer reply-to-all for responses. Thanks for your reports so far.)
-- 
Stefan Richter
-=====-==-== --== =--==
http://arcgraph.de/sr/
_______________________________________________
linux-pm mailing list
linux-pm@xxxxxxxxxxxxxxxxxxxxxxxxxx
https://lists.linux-foundation.org/mailman/listinfo/linux-pm



[Index of Archives]     [Linux ACPI]     [Netdev]     [Ethernet Bridging]     [Linux Wireless]     [CPU Freq]     [Kernel Newbies]     [Fedora Kernel]     [Security]     [Linux for Hams]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux Admin]     [Samba]

  Powered by Linux