Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
WOL doesn't work second time (VIA chipset)
View unanswered posts
View posts from last 24 hours

 
Reply to topic    Gentoo Forums Forum Index Kernel & Hardware
View previous topic :: View next topic  
Author Message
techqbert
n00b
n00b


Joined: 23 May 2007
Posts: 14

PostPosted: Mon Jul 07, 2008 2:44 am    Post subject: WOL doesn't work second time (VIA chipset) Reply with quote

Machine boots. I then "sudo hibernate-ram," machine goes down. Send WOL packet, computer wakes up. "sudo hibernate-ram" again... then the WOL packet doesn't wake the computer up. Any ideas guys?

Code:
00:00.0 Host bridge: VIA Technologies, Inc. P4M900 Host Bridge
00:00.1 Host bridge: VIA Technologies, Inc. P4M900 Host Bridge
00:00.2 Host bridge: VIA Technologies, Inc. P4M900 Host Bridge
00:00.3 Host bridge: VIA Technologies, Inc. P4M900 Host Bridge
00:00.4 Host bridge: VIA Technologies, Inc. P4M900 Host Bridge
00:00.5 PIC: VIA Technologies, Inc. P4M900 I/O APIC Interrupt Controller
00:00.6 Host bridge: VIA Technologies, Inc. P4M900 Security Device
00:00.7 Host bridge: VIA Technologies, Inc. P4M900 Host Bridge
00:01.0 PCI bridge: VIA Technologies, Inc. VT8237 PCI Bridge
00:02.0 PCI bridge: VIA Technologies, Inc. P4M900 PCI to PCI Bridge Controller (rev 80)
00:03.0 PCI bridge: VIA Technologies, Inc. P4M900 PCI to PCI Bridge Controller (rev 80)
00:0f.0 IDE interface: VIA Technologies, Inc. Unknown device 5337 (rev 80)
00:0f.1 IDE interface: VIA Technologies, Inc. VT82C586A/B/VT82C686/A/B/VT823x/A/C PIPC Bus Master IDE (rev 07)
00:10.0 USB Controller: VIA Technologies, Inc. VT82xxxxx UHCI USB 1.1 Controller (rev a0)
00:10.1 USB Controller: VIA Technologies, Inc. VT82xxxxx UHCI USB 1.1 Controller (rev a0)
00:10.2 USB Controller: VIA Technologies, Inc. VT82xxxxx UHCI USB 1.1 Controller (rev a0)
00:10.3 USB Controller: VIA Technologies, Inc. VT82xxxxx UHCI USB 1.1 Controller (rev a0)
00:10.4 USB Controller: VIA Technologies, Inc. USB 2.0 (rev 86)
00:11.0 ISA bridge: VIA Technologies, Inc. VT8237A PCI to ISA Bridge
00:11.7 Host bridge: VIA Technologies, Inc. VT8251 Ultra VLINK Controller
00:13.0 Host bridge: VIA Technologies, Inc. VT8237A Host Bridge
00:13.1 PCI bridge: VIA Technologies, Inc. VT8237A PCI to PCI Bridge
01:00.0 VGA compatible controller: VIA Technologies, Inc. Chrome9 HC IGP (rev 01)
04:04.0 Communication controller: Agere Systems Unknown device 0620
04:0e.0 Ethernet controller: VIA Technologies, Inc. VT6102 [Rhine-II] (rev 8d)
80:01.0 Audio device: VIA Technologies, Inc. VIA High Definition Audio Controller (rev 10)
Back to top
View user's profile Send private message
MotivatedTea
Apprentice
Apprentice


Joined: 06 Nov 2006
Posts: 269
Location: Toronto, Canada

PostPosted: Mon Jul 07, 2008 3:35 am    Post subject: Reply with quote

I'd guess that when your network card wakes up, it "forgets" that it should be in WOL mode. With my computer, WOL doesn't work until I run "ethtool -s eth0 g" (to set "wake on magic packet" on eth0), so I put that in an init script. I'm guessing you've probably done something similar? Try running ethtool manually to re-enable WOL mode and then try suspending again to see if that fixes your problem.

If that works, then you want ethtool to be run whenever your machine comes out of hibernation. (This isn't necessary on my machine, so I haven't tested this, but you should be able to get it to work.) Edit "/etc/hibernate/common.conf" and add a line like
Code:
OnResume 20 /usr/sbin/ethtool -s eth0 g

(modified appropriately for your machine, of course). The number 20 determines how late in the resume process the command will be run (from 00-99, lower=later; see "man hibernate.conf"). I'm not sure what value is appropriate, but you'll want it to run fairly late, since you want to make sure your devices and services have mostly been re-started first.

I'm using tuxonice-sources (formerly suspend2), but I think that part of the hibernate script is common to both suspend methods ("vanilla" vs "tuxonice").
Back to top
View user's profile Send private message
techqbert
n00b
n00b


Joined: 23 May 2007
Posts: 14

PostPosted: Mon Jul 07, 2008 4:37 am    Post subject: Reply with quote

Quick response. Thanks!

That was actually my first thought on the matter- to set ethtool once again. It didn't work before and I just retried resetting ethtool manually by "sudo ethtool eth0 -s wol gp." Still no luck.

Important things to note:

--First wake up works. Second doesn't. Third does (i think even without issuing ethtool before hibernate).
--One thing I noticed is that using vinagre (vnc client) on ubuntu on the first wake up, I don't have to restart the VNC connect.
--When the second packet fails on the second hibernate, I press the power button but I have to restart the VNC connect. Weird. Perhaps this means something. NOTE: this doesn't occur repeatedly.
--Nonetheless, the lights remain on the NIC visible from the outside on the first, second, and third tries.
--The even-numbered hibernates fail regardless of RC_DOWN_INTERFACE in /etc/conf.d/rc or manual "ethtool eth0 -s wol gp" or automatic "ethtool eth0 -s wol gp" in /etc/conf.d/local.start

Any more bright ideas?
Back to top
View user's profile Send private message
MotivatedTea
Apprentice
Apprentice


Joined: 06 Nov 2006
Posts: 269
Location: Toronto, Canada

PostPosted: Mon Jul 07, 2008 2:07 pm    Post subject: Reply with quote

That's kind of weird. What about stopping networking completely, unloading and re-loading your network modules, and then restarting networking? Maybe reloading the driver module will force the card to reset. Also, you said you were using hibernate-ram; have you tried just hibernate (to disk)? I've generally had better luck with suspend-to-disk than suspend-to-ram. Of course, that's slower, and unloading modules means you'd have to reconnect to everything (VNC, etc.) after suspend, unfortunately.

Settings in /etc/conf.d/rc and /etc/conf.d/local.start shouldn't have an effect, since they're only run on boot, not on resuming.

Just a stab in the dark here: what about using ethtool to disable ("-s wol d"), then re-enable WOL?

---
Some quick googling for "via rhine suspend" turned up a discussion on the kernel mailing list about bugs with the via-rhine driver (from your PCI output, I'd guess that's the one for your card?): http://lists.openwall.net/netdev/2008/04/27/28 (also click on "Thread-Next" a few times; they talk about how this might affect WOL).
I don't know if that is something they've fixed or are working on, but it looks like it describes your problem. That discussion is pretty recent, and it looks like it's talking about the 2.6.25 kernel series, so if there is a fix, it may not get into portage for a while. Looks like you might have to do some more googling to find a patch to apply manually (I don't know if there is one). In the meantime, see if re-loading the module works for now.
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Kernel & Hardware All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum