Pagina 1 di 1

Slackware64 nasconde eth0

Inviato: dom 5 dic 2010, 2:27
da Jan69
Salve a tutti.
Ho recentemente scaricato la iso di Slackware64 ed installato la nostra bella Slackware sul mio nuovo portatile, un Packard Bell EasyNoteTM86.
L'intento era quello di cominciare a cimentarmi col ramo -current della distro, per cui, tutto entusiasta, creo il mio bell'account utente, faccio per collegarmi alla rete ma...contrariamente a cio' che mi accade di solito col binomio Slackware-Fastweb, non ho connessione :shock:
Digito il mio bel lspci, la scheda ethernet e' li', in bella vista: Broadcom NetLink (TM) Gigabit Ethernet.
Vi riporto l'output della procedura che ho seguito per cercare di capire dove sia il problema.

Codice: Seleziona tutto

root@darkstar:~# dmesg | grep eth
Driver 'st' needs updating - please use bus_type methods
Driver 'sd' needs updating - please use bus_type methods
Driver 'sr' needs updating - please use bus_type methods
eth%d: No PHY devices
Se non erro i messaggi di updating sono solo comunicazioni di servizio tra kernel designers per cui tralascio.
Per il PHY device le mie ricerche sino ad ora mi hanno portato a tante wireless ma non LAN
Allora eseguo

Codice: Seleziona tutto

root@darkstar:~# ifconfig -a
lo        Link encap:Local Loopback
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:3412 errors:0 dropped:0 overruns:0 frame:0
          TX packets:3412 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:250344 (244.4 KiB)  TX bytes:250344 (244.4 KiB)

Codice: Seleziona tutto

root@darkstar:~# ifconfig eth0 up
eth0: ERROR while getting interface flags: No such device
Sapendo che in certe situazione Slackware fa i capricci con dhcpcd lancio

Codice: Seleziona tutto

root@darkstar:~# dhclient
Internet Systems Consortium DHCP Client V3.1.2p1
Copyright 2004-2009 Internet Systems Consortium.
All rights reserved.
For info, please visit http://www.isc.org/sw/dhcp/

No broadcast interfaces found - exiting.
Allora cerco di tagliare corto e vado a vedermi /etc/rc.d/rc.modules per sapere come poter avviare la mia connessione ma la cosa che mi sembra piu' vicina a cio' che mi serve e'
rc.d/modules-2.6.29.6
### Network device support ###
# Most of these drivers will probe automatically for the card if you don't
# specify an I/O address and IRQ.
#
# First, if setup probing found a network card, there may be an 'rc.netdevice'
# file that we should run to load the network module:
if [ -x /etc/rc.d/rc.netdevice ]; then
. /etc/rc.d/rc.netdevice
fi
Ma io /etc/rc.d/rc.netdevice non ce l'ho...e pensare che la configurazione di DHCP in fase d'installazione e' andata a buon fine :?

Eppure i moduli per la scheda sono li' perche' lsmod mi restituisce tg3, che sono quelli della mia scheda.

Preso dal dubbio ho cercato di compilare i driver di Broadcom ma dopo svariate battaglie con GCC non riesco a compilare i sorgenti :|

E' successo a qualcun altro? Potreste darmi qualche linea guida per riuscire a risolvere questo intoppo?

Grazie per l'attenzione e speriamo nasca una bella discussione per poter mettere l'agognato "Risolto" anche a questo topic :D

Re: Slackware64 nasconde eth0

Inviato: dom 5 dic 2010, 7:50
da krisis
controlla le regole di udev

Re: Slackware64 nasconde eth0

Inviato: dom 5 dic 2010, 10:37
da 414N
È inutile che cerchi di "alzare" l'interfaccia eth0 con "ifconfig up" se tale interfaccia non esiste. Stesso discorso per dhclient.
Jan69 ha scritto:
rc.d/modules-2.6.29.6
Perché hai installato la Slackware64 13.0? Soprattutto se vuoi cimentarti col ramo current, sarebbe più consono e facile partire dall'ultima stable rilasciata, la 13.1...
Comunque, prova a dare un

Codice: Seleziona tutto

dmesg | grep tg3
per vedere se spunta qualche messaggio di errore relativo al modulo stesso.

Re: Slackware64 nasconde eth0

Inviato: dom 5 dic 2010, 12:40
da erio
perche non prova a configurare la connessione con ppoe-setup,almeno se la scheda è vista potrebbe funzionare.

Re: Slackware64 nasconde eth0

Inviato: dom 5 dic 2010, 22:01
da Jan69
Allora, ci siamo quasi :D
Innanzitutto grazie per la presenza, ragazzi, poi:
414N ha scritto:È inutile che cerchi di "alzare" l'interfaccia eth0 con "ifconfig up" se tale interfaccia non esiste. Stesso discorso per dhclient.
E' vero, pero' in passato sono riuscito a risolvere piccoli nodi utilizzando i poteri del mio fondoschiena e sai, tentar non nuoce ^^
414N ha scritto:Perché hai installato la Slackware64 13.0? Soprattutto se vuoi cimentarti col ramo current, sarebbe più consono e facile partire dall'ultima stable rilasciata, la 13.1...
E' vero anche questo ma ho scaricato le 13.1 per due volte mirrorandola da FTP e, contrariamente al solito, non riuscivo a farle fare il boot :cry:
414N ha scritto:Comunque, prova a dare un

Codice: Seleziona tutto

dmesg | grep tg3
per vedere se spunta qualche messaggio di errore relativo al modulo stesso.
Bravo 8)

Codice: Seleziona tutto

root@darkstar:~# dmesg | grep tg3                                                               
tg3.c:v3.97 (December 10, 2008)                                                                 
tg3 0000:02:00.0: PCI INT A -> GSI 16 (level, low) -> IRQ 16                                    
tg3 0000:02:00.0: setting latency timer to 64                                                   
tg3 0000:02:00.0: PME# disabled                                                                 
ACPI: SSDT 9F691C18, 03AE (r1  PmRef  Cpu0Ist     3000 INTL 20051117)<6>tg3 mdio bus: probed    
tg3: Problem fetching invariants of chip, aborting.                                             
tg3 0000:02:00.0: PCI INT A disabled
il che mi ha portato a googleggiare e ho scoperto che e' un bug del kernel (su cui mi documentero' meglio in seguito)
La soluzione temporanea e' la seguente:

Codice: Seleziona tutto

root@darkstar:~# modprobe -r tg3
root@darkstar:~# modprobe broadcom
root@darkstar:~# modprobe tg3
infatti

Codice: Seleziona tutto

root@darkstar:~# ifconfig -a
eth0      Link encap:Ethernet  HWaddr 70:5a:b6:cc:c1:27
          BROADCAST MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)
          Interrupt:16

lo        Link encap:Local Loopback
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:20 errors:0 dropped:0 overruns:0 frame:0
          TX packets:20 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:1000 (1000.0 B)  TX bytes:1000 (1000.0 B)
tant'e' vero che

Codice: Seleziona tutto

root@darkstar:/home/zx# dmesg | grep tg3
tg3.c:v3.97 (December 10, 2008)
tg3 0000:02:00.0: PCI INT A -> GSI 16 (level, low) -> IRQ 16
tg3 0000:02:00.0: setting latency timer to 64
tg3 0000:02:00.0: PME# disabled
tg3 mdio bus: probed
tg3: Problem fetching invariants of chip, aborting.
tg3 0000:02:00.0: PCI INT A disabled
tg3.c:v3.97 (December 10, 2008)
tg3 0000:02:00.0: PCI INT A -> GSI 16 (level, low) -> IRQ 16
tg3 0000:02:00.0: setting latency timer to 64
tg3 0000:02:00.0: PME# disabled
tg3 mdio bus: probed
tg3 0000:02:00.0: PME# disabled
tg3 0000:02:00.0: irq 34 for MSI/MSI-X
tg3: eth0: Link is down.
E nonostante il "Link is down" (correggetemi se sbaglio, ma ne evinco un accesso diretto)

Codice: Seleziona tutto

root@darkstar:/home/zx# ifconfig -a
eth0      Link encap:Ethernet  HWaddr 70:5a:b6:cc:c1:27
          inet addr:10.xxx.xxx.xxx  Bcast:10.xxx.xxx.xxx  Mask:255.255.248.0
          inet6 addr: fe80::725a:b6ff:fecc:c127/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:4651 errors:20 dropped:0 overruns:0 frame:0
          TX packets:3733 errors:0 dropped:0 overruns:0 carrier:0
          collisions:20 txqueuelen:1000
          RX bytes:5496253 (5.2 MiB)  TX bytes:452294 (441.6 KiB)
          Interrupt:16

lo        Link encap:Local Loopback
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:86 errors:0 dropped:0 overruns:0 frame:0
          TX packets:86 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:4500 (4.3 KiB)  TX bytes:4500 (4.3 KiB)
Adesso si' che, come diceva krisis
krisis ha scritto:controlla le regole di udev
posso andare a controllare udev, era stata una delle cose che mi sembrava giusto fare da subito, ma soltanto adesso che mi sono connesso (e non prima) ho il file 70-persistent-net.rules il quale recita:

Codice: Seleziona tutto

# This file was automatically generated by the //lib/udev/write_net_rules
# program, run by the persistent-net-generator.rules rules file.
#
# You can modify it, as long as you keep each rule on a single
# line, and change only the value of the NAME= key.

# PCI device 0x14e4:0x1692 (tg3)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="70:5a:b6:cc:c1:27", ATTR{type}=="1", KERNEL=="eth*", NAME="eth0"
quindi, se mantiene fedelta' al nome, le modifiche sono persistenti ed eth0 d'ora in poi sara' sempre li'...o almeno spero :lol:
Quindi adesso posto e riavvio per vedere se funziona cosi' o meno ;)

Edit: no, non regge, pero' ho potuto approfondire ed e' proprio un baco dei kernel 2.6, il che non e' simpatico.
Adesso mi documento meglio riguardo a "tg3: eth0: Link is down" anche perche' se "tg3: Problem fetching invariants of chip, aborting" viene overlappato, il primo no.
E quindi il problema e' li'.

Re: Slackware64 nasconde eth0

Inviato: lun 6 dic 2010, 9:12
da 414N
Qui sono riportate due possibili soluzioni temporanee:
  1. Aggiungi a /etc/modprobe.conf (oppure crea /etc/modprobe.d/tg3.conf)

    Codice: Seleziona tutto

    install tg3 /sbin/modprobe broadcom; /sbin/modprobe --ignore-install tg3
  2. Aggiungi a /etc/rc.d/rc.local

    Codice: Seleziona tutto

    modprobe -r tg3
    modprobe broadcom
    modprobe tg3
    
    (molto meno elegante)

Re: Slackware64 nasconde eth0

Inviato: lun 6 dic 2010, 11:02
da Jan69
La prima soluzione, oltre ad essere effetivamente la piu' elegante, e' anche quella grazie alla quale sto scrivendo adesso ^^
Figurati che ieri avevo fatto qualcosa del genere pero' avevo fatto casino e avevo applicato la modalita' 2 alla soluzione 1, immagina i risultati :lol:

Niente di meglio, e buono a sapersi, che frequentare la board che hai indicato, si impara molto...che bello!

La notte scorsa, reduce dal mezzo disastro di cui parlavo sopra, pensavo aggiungere le tre direttive ad /etc/rc.d/rc.local ma non l'ho fatto perche' ero utente normale e quando me ne sono accorto ho preferito andare a letto piuttosto che passare a root ed eseguire la procedura...

Ad onor di precisione, volete che modifichi il titolo del thread aggiungendo, "con kernel 2.6.*" ?

Edit: dimenticavo:

Codice: Seleziona tutto

zx@darkstar:~$ dmesg | grep tg3
tg3.c:v3.97 (December 10, 2008)
tg3 0000:02:00.0: PCI INT A -> GSI 16 (level, low) -> IRQ 16
tg3 0000:02:00.0: setting latency timer to 64
tg3 0000:02:00.0: PME# disabled
tg3 mdio bus: probed
tg3 0000:02:00.0: PME# disabled
tg3 0000:02:00.0: irq 34 for MSI/MSI-X
tg3: eth0: Link is down.
Il messaggio d'errore di fetching, come si vede, e' scomparso

Re: Slackware64 nasconde eth0

Inviato: mar 4 gen 2011, 7:34
da Jan69
Chiedo scusa per il doppio post ma volevo rendere noto che il problema non si presenta installando Slackware64 -current dalla iso di Eric Hameleers (Alien Bob) datata 01.01.2011 con kernel 2.6.35.7