Re: can not wake on lan after halt -p (or shutdown -p now) on releng_7 and releng_7_0



On Fri, Oct 10, 2008 at 11:41:59AM +0800, David Adam wrote:
On Mon, 6 Oct 2008, Georgi Iovchev wrote:
I have a shutdown problem. I have a machine with gigabyte GA-G33M-DS2R
motherboard. Integrated network card is Realtek 8111B.
I can not wake the computer after I shutdown it from FreeBSD.
It is a dualboot system - windows xp and freebsd. If I shutdown the
computer from windows - later I can wake it up with magic packet. Even
if i shutdown the machine on the boot menu with the power button - than
later I can wake on lan. The only situation where I CANNOT wake it is
when I shutdown the machine from freebsd (halt -p).

First I tested with 7.0-RELEASE-p5 amd64 (RELENG_7_0) and than I
upgraded to 7.1 PRERELASE amd64 (RELENG_7). I also tested with two
network cards - the integrated one Realtek 8111B and another one Intel
PRO1000PT PCI-E with WOL enabled.

With both nics and both freebsd versions the situation is the same -
after shutdown from bsd the computer is not able to wake on lan. The
indication on the switch port says that after shut down there is
active link.

I have a similar problem with an Intel SR1200 Pentium 3-class system,
using fxp(4) cards, although I haven't yet tried the `halt -p` command.


fxp(4) should be taught to support WOL. Also note, not all fxp(4)
hardwares support WOL.

I was discussing WoL with a colleague recently and he suggested that on
some Linux systems he needed to use `ethtool -s eth0 wol g` on every boot
to maintain the WoL status.


In FreeBSD this is controlled by ifconfig(8) and WOL implementation
is up to driver writer. Some controllers require special
configuration to make WOL work but I think re(4) should have no such
issue as one of hardest part of WOL is handled by firmware on RealTek
controllers(You don't need to reestablish a 10/100Mbps link).

From the ethtool(1) manpage:

wol p|u|m|b|a|g|s|d...
Set Wake-on-LAN options. Not all devices support this.
g Wake on MagicPacket(tm)

From my reading, this might be necessary if the driver clears the flag
during initialisation of the card.

kern/83807 was filed to fix this issue for sis(4), but was never
committed. However, work is apparently being done in 8-CURRENT to support
exposing the WoL settings to ifconfig: see
http://wiki.freebsd.org/WakeOnLan . Until that work lands in a release, I
think we're out of luck.


If I had sis(4) hardware I would have written WOL support code.
The patch in the PR needs minor modifications but it requires real
hardware to test the WOL functionality. Maybe PR submitter can do
that.

(Another administrator has also suggested that, on Linux at least, using
the 'ifdown' command will destroy WoL status, but I don't think that's an
issue here.)

Hope that helps. I'm sure any contributions to the effort to add driver
support will be appreciated.

David Adam
zanchey@xxxxxxxxxxxxxxxxx

--
Regards,
Pyun YongHyeon
_______________________________________________
freebsd-stable@xxxxxxxxxxx mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-stable
To unsubscribe, send any mail to "freebsd-stable-unsubscribe@xxxxxxxxxxx"