Bug 13353

Summary: 2.6.29 regression - net.eth0 (E100) Hangs Suspend (Hibernate)
Product: Power Management Reporter: Roger (rogerx.oss)
Component: Hibernation/SuspendAssignee: Rafael J. Wysocki (rjw)
Status: CLOSED INSUFFICIENT_DATA    
Severity: high CC: david.graham, florian, ikalvachev, jbrandeb, kernel, lenb, mpagano, nigel, rjw, yakui.zhao
Priority: P1    
Hardware: All   
OS: Linux   
Kernel Version: >=2.6.29 Subsystem:
Regression: Yes Bisected commit-id:
Bug Depends on:    
Bug Blocks: 7216, 12398    

Description Roger 2009-05-21 09:00:58 UTC
On suspend (hibernate), and as of kernel version >=2.6.29, with /etc/init.d/net.eth0 started, suspend/hibernate hangs and no longer works.


Temporary workaround is to use hibernate scripts to stop the /etc/init.d/net.eth0 service on suspend/hibernate and restart it during resume along with any dependent services.


(Something else to note, when my net.eth0 init script starts, it's also assigned an ipv6 address in addition to ipv4.)

My network device is the following (lspci):
00:14.0 Ethernet controller: Intel Corporation 82557/8/9/0/1 Ethernet Pro 100 (rev 08)

I also have a laptop using the same driver (w/ similar h/w?) and it hibernates without problems using kernel versions >=2.6.29.  Odd.
Comment 1 Rafael J. Wysocki 2009-05-21 19:47:52 UTC
What is the newest kernel you have tested?
Comment 2 Roger 2009-05-22 04:05:08 UTC
Currently using linux-2.6.29.3, and noticed this bug's symptoms during the initial release of 2.6.29.

I finally diagnosed apparently using this latest stable version.

Just comparing e100.c to linux-2.6.28 series, and there seems to be quite a few additions!  Which detail firmware stuff in the declarations.

One thing to not include as the possible cause of this bug is the pci save state.  This is a wake on lan fix and this related WOL patch worked on the linux-2.6.28 series. (I was applying this patch manually while waiting for it's publishing.)

One thing I could test sometime, copying over an older 2.6.28 e100.c file into the 2.6.29 tree here and seeing if it fixes my hibernate/suspend issue.  Which is very likely as I scan the code?
Comment 3 Artem S. Tashkinov 2009-05-22 08:41:05 UTC
Probably related to bug 13225.

However in my case rmmod'ing e100 module before suspending doesn't help.
Comment 4 Roger 2009-05-22 08:46:20 UTC
Confirming a second box of mine (Intel 440BX with a PCI E100) doesn't hibernate/suspend without first doing "/etc/init.d/net.eth0 stop".

Mine is built statically.
ie. CONFIG_E100=y
Comment 5 Roger 2009-05-22 08:49:23 UTC
I'm not sure if this is related to bug 13225 until I see similar activity.

Currently, all I'm seeing is a hang at hibernate on this box & a hang on hibernate & resume on the other box (as it inadvertently tries to resume a hibernated session).

Within bug 13225, you state you *can* get the box to resume successfully w/o hanging.
Comment 6 Roger 2009-05-22 08:51:05 UTC
Strike my last sentence w/i Comment #5.

It should read:

"Within bug 13225, you state you *can* get the box to hibernate successfully (w/o
hanging)."
Comment 7 Artem S. Tashkinov 2009-05-22 17:46:33 UTC
Yep, I can resume my box but I cannot say it's usable ;)
Comment 8 Len Brown 2009-05-27 01:33:23 UTC
marked as regression since 2.6.28 kernel worked and 2.6.29 does not.
Comment 9 Roger 2009-05-27 06:35:40 UTC
Thanks. ;-)
Comment 10 ykzhao 2009-07-21 09:10:48 UTC
It seems that this is a duplicated bug of bug13371.
So it will be marked as the duplicated of bug 13371.
Comment 11 ykzhao 2009-07-21 09:12:27 UTC

*** This bug has been marked as a duplicate of bug 13371 ***
Comment 12 Rafael J. Wysocki 2009-09-22 20:17:33 UTC
_Please_.  Bug 13371 was created by me, to track a regression reported by e-mail.  The reporter of that bug doesn't have a kernel Bugzilla account.  This one, OTOH, has an active reporter, so it would make much more sense to mark bug 13371 as a duplicate of this one.
Comment 13 Rafael J. Wysocki 2009-09-22 20:18:56 UTC
*** Bug 13371 has been marked as a duplicate of this bug. ***
Comment 14 Rafael J. Wysocki 2009-09-22 20:20:18 UTC
Roger, is this still an issue with 2.6.31?
Comment 15 Roger 2009-09-26 06:54:56 UTC
I'll check this over the next day or so.  (Sorry for being slow.)
Comment 16 Roger 2009-09-26 06:56:31 UTC
... btw, I can't test 2.6.31 due to too many bugs.  I will, however, test 2.6.30.
Comment 17 Roger 2009-09-27 01:06:09 UTC
This bug is still persistent on my Dell 8100 laptop (i815) using 2.6.30.

(2.6.30-gentoo-r7Y -- Linux version 2.6.30.5 -- wish uname would provide the Linux version instead of the distro's version! :-/)
Comment 18 Ivan Kalvachev 2009-10-10 17:52:04 UTC
I have bumped into very similar issue with e100 driver since 2.6.29 kernel.
Take a look of my report at
http://sourceforge.net/tracker/?atid=447449&group_id=42302&func=browse

The workaround is to embed the e100 firmware into the kernel, as user-land
firmware loader cannot run while userland is frozen.
Comment 19 Roger 2009-10-11 00:33:23 UTC
Re: Comment #18 - Negative.  My e100.c is already compiled statically.

Not only this, but what you are seeing, are likely the results of the many e100.c (firmware) changes made just prior to 2.6.29.
Comment 20 Florian Mickler 2010-12-08 09:13:11 UTC
Is this still a problem on newer kernels?
Comment 21 Florian Mickler 2010-12-17 20:39:19 UTC
Ping, please reopen or shout if this issue is still present in current mainline kernels.
Comment 22 Roger 2011-01-13 20:25:15 UTC
Sorry for not posting in awhile.

I've long since moved away from the hibernate (& tuxonice) sources.

I still may return to those sources sometime though, but until then, I haven't tested suspend or hibernate on any of my boxes since I probably last posted here.

If I venture back into suspend/hibernate and run into further problems with this issue, I'll be sure to follow-up!