Portál AbcLinuxu, 6. května 2025 06:20

Dotaz: Nefunkci Wake On Lan

18.8.2009 11:40 kolage
Nefunkci Wake On Lan
Přečteno: 1288×
Odpovědět | Admin

Ahoj vsichni,

uz se delsi dobu snazim rozjet WOL na moji sitovce

02:00.0 Ethernet controller: Marvell Technology Group Ltd. 88E8056 PCI-E Gigabit Ethernet Controller (rev 13)

avsak bez uspechu. Pouzivam Arch, kde po zapnuti aplikuju

ethtool -s eth0 wol g

a do rc.shutdown jsem pridal pred samotne vypnuti PC nasledujici:

ip link set eth0 up
ethtool -s eth0 wol g
/sbin/poweroff -d -f -h

Sitovka vsak po vypnuti pocitace neblika (po vypnuti z Widli ano) a magic packety neprijima. Nasel jsem jiz i vic jak rok stary odkaz, kde je patch modulu sky2.ko, avsak kdyz jsem stahnul zdrojaky kernelu 2.6.30 ktere pouzivam, tak jsem zjistil ze je jiz pouzity. V BIOSu mam samozrejme WOL povolene, i ve Windowsech mi chodi. Nemate nekdo nejaky napad? Predem dekuji.
 


 

Nástroje: Začni sledovat (0) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

18.8.2009 12:57 petr_p | skóre: 59 | blog: pb
Rozbalit Rozbalit vše Re: Nefunkci Wake On Lan
Odpovědět | | Sbalit | Link | Blokovat | Admin

Já jsem měl kdysi problém s inteláckou e100, kdy bylo naopak třeba shodil linku dolů, jinak se karta nepřepnula do šetřícího režimu a nepřijímala WOL.

Zkuste před vypnutím prozkoumal výstup z lspci na Power Management registry. Především v jakém je „D“ stavu.

18.8.2009 13:13 kolage
Rozbalit Rozbalit vše Re: Nefunkci Wake On Lan

zatim jsem neprisel na to jak se to dela :-) ... jedine co jsem zjistil u sitovky je nasledujici:

Capabilities: [48] Power Management version 3

18.8.2009 16:35 petr_p | skóre: 59 | blog: pb
Rozbalit Rozbalit vše Re: Nefunkci Wake On Lan
# lspci  -s 00:0c.0 -vv
00:0c.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL-8139/8139C/8139C+ (rev 10)
        Subsystem: Realtek Semiconductor Co., Ltd. RT8139
        Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx-
        Status: Cap+ 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR+ INTx-
        Latency: 32 (8000ns min, 16000ns max)
        Interrupt: pin A routed to IRQ 11
        Region 0: I/O ports at ec00 [size=256]
        Region 1: Memory at de000000 (32-bit, non-prefetchable) [size=256]
        Capabilities: [50] Power Management version 2
                Flags: PMEClk- DSI- D1+ D2+ AuxCurrent=375mA PME(D0-,D1+,D2+,D3hot+,D3cold+)
                Status: D0 PME-Enable- DSel=0 DScale=0 PME-
        Kernel driver in use: 8139too

Na konci je vypsán D-stav. PCI sběrnice definuje různé napěťové stavy a karta musí být před vypnutím přepnuta do patřičného stavu. Měl by to dělat ovladač a jádro by před vypnutím mělo přes ACPI nechat dané zařízení v běhu. To asi bude ten váš patch. Podrobnosti si ale teď nepamatuju. Myslím, že nástroj setpci nebo pci-config umožňuje ručně přepínat stavy zařízení.

18.8.2009 17:20 kolage
Rozbalit Rozbalit vše Re: Nefunkci Wake On Lan

Aha, no bohužel příkaz mi neposkytne podrobnější informace, ale zkusím si pohrát s tím setpci ...

# lspci -s 02:00.0 -v
02:00.0 Ethernet controller: Marvell Technology Group Ltd. 88E8056 PCI-E Gigabit Ethernet Controller (rev 13)
Subsystem: Biostar Microtech Int'l Corp Device 2700
Flags: bus master, fast devsel, latency 0, IRQ 29
Memory at fddfc000 (64-bit, non-prefetchable) [size=16K]
I/O ports at bc00 [size=256]
[virtual] Expansion ROM at fdc00000 [disabled] [size=128K]
Capabilities: [48] Power Management version 3
Capabilities: [50] Vital Product Data
Capabilities: [5c] MSI: Enable+ Count=1/1 Maskable- 64bit+
Capabilities: [e0] Express Legacy Endpoint, MSI 00
Capabilities: [100] Advanced Error Reporting
Kernel driver in use: sky2
Kernel modules: sky2

18.8.2009 17:22 kolage
Rozbalit Rozbalit vše Re: Nefunkci Wake On Lan

Omlouvám se, zapomněl jsem na to -vv ... už to tam vidím. Děkuji za radu ! Ještě napíšu jak jsem pokročil...

18.8.2009 18:26 kolage
Rozbalit Rozbalit vše Re: Nefunkci Wake On Lan

no snažím se již dýl přijít příkazu setpci nakloub, ale moc ho nechápu :-( vím že setpci -v -s 02:00.0 nastavuji mojí LAN kartu, ale co dát potom jako další parametry teda nevím... v registrech se moc nevyznám.

18.8.2009 18:30 kolage
Rozbalit Rozbalit vše Re: Nefunkci Wake On Lan

tady je kdyžtak můj vstup z lspci ...

# lspci -s 02:00.0 -vv
02:00.0 Ethernet controller: Marvell Technology Group Ltd. 88E8056 PCI-E Gigabit Ethernet Controller (rev 13)
	Subsystem: Biostar Microtech Int'l Corp Device 2700
	Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx+
	Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
	Latency: 0, Cache Line Size: 64 bytes
	Interrupt: pin A routed to IRQ 29
	Region 0: Memory at fddfc000 (64-bit, non-prefetchable) [size=16K]
	Region 2: I/O ports at bc00 [size=256]
	[virtual] Expansion ROM at fdc00000 [disabled] [size=128K]
	Capabilities: [48] Power Management version 3
		Flags: PMEClk- DSI- D1+ D2+ AuxCurrent=0mA PME(D0+,D1+,D2+,D3hot+,D3cold+)
		Status: D0 NoSoftRst- PME-Enable- DSel=0 DScale=1 PME-
	Capabilities: [50] Vital Product Data
		Product Name: Marvell Yukon 88E8056 Gigabit Ethernet Controller
		Read-only fields:
			[PN] Part number: Yukon 88E8056
			[EC] Engineering changes: Rev. 1.3
			[MN] Manufacture ID: 4d 61 72 76 65 6c 6c
			[SN] Serial number: AbCdEfG749788
			[CP] Extended capability: 01 10 cc 03
			[RV] Reserved: checksum good, 9 byte(s) reserved
		Read/write fields:
			[RW] Read-write area: 121 byte(s) free
		End
	Capabilities: [5c] MSI: Enable+ Count=1/1 Maskable- 64bit+
		Address: 00000000fee0300c  Data: 4181
	Capabilities: [e0] Express (v1) Legacy Endpoint, MSI 00
		DevCap:	MaxPayload 128 bytes, PhantFunc 0, Latency L0s unlimited, L1 unlimited
			ExtTag- AttnBtn- AttnInd- PwrInd- RBE+ FLReset-
		DevCtl:	Report errors: Correctable- Non-Fatal- Fatal- Unsupported-
			RlxdOrd- ExtTag- PhantFunc- AuxPwr- NoSnoop-
			MaxPayload 128 bytes, MaxReadReq 512 bytes
		DevSta:	CorrErr+ UncorrErr- FatalErr- UnsuppReq+ AuxPwr+ TransPend-
		LnkCap:	Port #3, Speed 2.5GT/s, Width x1, ASPM L0s L1, Latency L0 <256ns, L1 unlimited
			ClockPM+ Surprise- LLActRep- BwNot-
		LnkCtl:	ASPM Disabled; RCB 128 bytes Disabled- Retrain- CommClk+
			ExtSynch- ClockPM- AutWidDis- BWInt- AutBWInt-
		LnkSta:	Speed 2.5GT/s, Width x1, TrErr- Train- SlotClk+ DLActive- BWMgmt- ABWMgmt-
	Capabilities: [100] Advanced Error Reporting
		UESta:	DLP- SDES- TLP- FCP- CmpltTO- CmpltAbrt- UnxCmplt- RxOF- MalfTLP- ECRC- UnsupReq- ACSViol-
		UEMsk:	DLP- SDES- TLP- FCP- CmpltTO- CmpltAbrt- UnxCmplt- RxOF- MalfTLP- ECRC- UnsupReq- ACSViol-
		UESvrt:	DLP+ SDES- TLP- FCP+ CmpltTO- CmpltAbrt- UnxCmplt- RxOF+ MalfTLP+ ECRC- UnsupReq- ACSViol-
		CESta:	RxErr- BadTLP- BadDLLP- Rollover- Timeout- NonFatalErr+
		CEMsk:	RxErr- BadTLP- BadDLLP- Rollover- Timeout- NonFatalErr+
		AERCap:	First Error Pointer: 1f, GenCap- CGenEn- ChkCap- ChkEn-
	Kernel driver in use: sky2
	Kernel modules: sky2
18.8.2009 19:58 petr_p | skóre: 59 | blog: pb
Rozbalit Rozbalit vše Re: Nefunkci Wake On Lan

Kdysi jsem si hrál s pci-config (byl součástí balíku nástrojů pro 3com karty od Donalda Beckera, nemůžu ho teď najít), který na přepínání D stavu měl pěkné rozhraní.

Z dotazu na Google „linux wol pci "d0" "d3"“ jsem našel, jak někteří ladili tento problém: 1, 2.

Zkuste pomocí lspci -xxx zjistit, zda zapnutí WOL pomocí ethtool skutečně mění konfiguraci v zařízení. Zjistěte, zda při ip link set down nebo vytažení modulu se D stav přepne z D0 do D3.

Zeptejte se správce ovladače sky2 nebo na příslušném mailing listu, jak je na tom s podporu WOL.

18.8.2009 21:21 kolage
Rozbalit Rozbalit vše Re: Nefunkci Wake On Lan

hmm... je to zajimave, vypada to opravdu jakoby se po shozeni linky, vytazeni modulu ci nastaveni WOL enable pomoci ethtool se stavem D nic nezmenilo. Je porad 0. Jeste zkusim pohledat pci-config a poptat se maintainera. Tak zatím dík moc za pomoc, teď se budu snažit teda dostat D do 3 a potom se uvidi.

 

19.8.2009 13:28 kolage
Rozbalit Rozbalit vše Re: Nefunkci Wake On Lan

tak uz jsem si vcera myslel ze je to hotove, ale porad WOL nefunguje :-( . Na tomto FTP serveru jsem konečně našel pci-config, který jsem si zkompiloval a pak již nebylo těžké zjistit si přes

$ lspci | grep Ethernet
02:00.0 Ethernet controller: Marvell Technology Group Ltd. 88E8056 PCI-E Gigabit Ethernet Controller (rev 13)

číslo Bus, Device a Function (02,00,0) a najít si v pci-config odpovídající zařízení

# ./pci-config -B2 -a
pci-config.c:v2.05 2/23/2005 Donald Becker (becker@scyld.com)
http://www.scyld.com/diag/index.html
Device #1 at bus 2 device/function 0/0, 436411ab.

které jsem pak shodil

# ifconfig eth0 down

a pomocí pci-config uspal

# ./pci-config -S -B2 -#1

z výstupu lspci jsem si pak ověřil, že se konečně změnil status z D0 na D3 a u PME-Enable se objevilo + ...

# lspci -s 02:00.0 -vvv
02:00.0 Ethernet controller: Marvell Technology Group Ltd. 88E8056 PCI-E Gigabit Ethernet Controller (rev 13)
...
    Capabilities: [48] Power Management version 3
        Flags: PMEClk- DSI- D1+ D2+ AuxCurrent=0mA PME(D0+,D1+,D2+,D3hot+,D3cold+)
        Status: D3 NoSoftRst- PME-Enable+ DSel=0 DScale=1 PME-
...

avšak po vypnutí počítače stále LEDky nesvítí a WOL balíčky karta nepřijímá, ani když jsem je zkusil poslat na převrácenou MAC adresu, což jsem našel také někde na netu... Pro informaci ještě výpis z rc.shutdown:

# Power off or reboot
if [ "$RUNLEVEL" = "0" ]; then
        printsep
        printhl "${C_H2}POWER OFF"
        # ip link set eth0 up
        ipconfig eth0 down
        /home/kolage/Programs/pci-config/pci-config -S -B2 -#1
        /sbin/poweroff -d -f -h
else

...

Takže teďka mi zase došly nápady... Jestli by někoho něco napadlo, budu moc rád ...

19.8.2009 13:40 kolage
Rozbalit Rozbalit vše Re: Nefunkci Wake On Lan

a ještě jsem na něco přišel... kontroloval jsem LEDky u LAN karty a když shodím link a uspím kartu do D3, nic nesvítí, když ji však opět pomocí pci-config nastavím do D0:

# ./pci-config -W -B2 -#1

tak se v lspci změní D3 na D0, avšak PME-Enable zůstane + ... když v tomto stavu nahodím opět link, svítí karta pouze oranžově... avšak stejně když jsem pak provedl příkaz

# poweroff -d -h

a v rc.shutdown nechal link up, tak karta po vypnutí zhasne :-(

the.max avatar 21.8.2009 12:15 the.max | skóre: 46 | blog: Smetiště
Rozbalit Rozbalit vše Re: Nefunkci Wake On Lan
Odpovědět | | Sbalit | Link | Blokovat | Admin
Tohle jsi cetl? zejmena odstavec Teorie WOL přes internet, mozna ti to pomuze
KERNEL ULTRAS Fan Team || Sabaton - nejlepší učitel dějepisu || Gentoo - dokud nás systemd nerozdělí.
23.8.2009 23:38 kolage
Rozbalit Rozbalit vše Re: Nefunkci Wake On Lan

děkuji, bohužel už je mi to známé, toto nepomáhá :(

10.3.2010 11:08 iko
Rozbalit Rozbalit vše Re: Nefunkci Wake On Lan
Ja pouzivam CentOS, modul sietovky e100 wol mi chodil a zrazu mi prestal ist. Skusal som viac kernelov, aj stare co mi urcite isli a nic. Skusil som podla navodov v tomto forume tento postup a uz mi to konecne ide :)

nastavit D3 na sietovku (tym sa zapne PME-Enable) nastavit D0 na sietovku (PME-Enable zostane zapnute)

vypinam cez prikaz poweroff.

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.