# realtek8169 gigabit, doesnt work at all

## esc*

Hello all,

i tryed setup hours for lan to work, but just noticed that realtek 8169 gigabit pci-lancard is the issue, driver are loaded dmesg shows

r8169 Gigabit Ethernet driver 2.2LK loaded, kernel is 2.6.23-gentoo-r3 x86_64 (amd64)

i can also setup IP-address just like normal and so on, only my local 10/100/1000M switch show that speed is only 100M not 1Gbit.

i already replaced the card (now old 3com 3c509x is working fine), but here is some details of ethtool wich i remember.

Supported ports: [ FIBRE ]

Speed: 1000Mb/s

Duplex: Full

Auto-negotiation: yes

Link detected: yes

Strange that supported ports is only "FIBRE", i dont have a fibre and other lan cards 10/100M have TP/MII etc and are working fine.

Tryed to change port to MII like 3com have but cant. Also its not possible to try change speed, show that 1000Mb/s is only option for that card.

Local network was totally dead with r8169, its something about the card modes etc. im not expert for this but i like to see 1Gbit speed instead of this 3com 100Mbit.

i found some info in http://gentoo-wiki.com/HARDWARE_RTL8168 i havent never used this card on windows, if thats do some problems.

----------

## esc*

well. i put the nic on windows machine and WakeOnLan was disabled (by default?), i enabled it and put back to linux.

It was working like 5 minutes and then totally dead again, no errors etc.

When enabled WOL Supported ports [FIBRE] changed automatically to TP by ethtool.

I'm back now my old 3c59x at the moment, its like kernel driver problem. Anyone have this NIC working whit gentoo and kernel version?

----------

## doctork

I've got a couple of these working without a problem.

Here's one from lspci:

03:0a.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL-8169 Gigabit Ethernet (rev 10)

From uname:

Linux media-x2 2.6.23-gentoo-r3 #7 SMP 

doc

----------

## pinkcameloy

I have the same problem with esc*

However, I searched a bit inside the kernel and I found some support with r8169...i tried to install it as a module and then to make my computer autoload this as a module every time the computer starts...however it fails to autostart it...can anybody help me with the procedure because i am afraid i must be forgetting some step(s)

thanks...

----------

## nekromancer

i'm having the same problem. I have a Realtek r8169 PCI card installed.

When I boot with kernel 2.6.22-gentoo-r8 I can't use that interface at all. On the same machine I have a Broadcom Tigon3 (tg3) on the board and it works fine.

When I boot with kernel 2.6.17-gentoo-r7 both network cards work fine.. what happened from one kernel to the other to render the r8169 useless ?

----------

## V-Li

Kernel 2.6.24 has a lot of fixes with rt8169, which made my network chip RT8101e work, too.  Try it.

----------

## nekromancer

I tried  2.6.23-gentoo-r6 and 2.6.24-gentoo.  Still same problem as before.

I don't get it though.. the "Link"  light is steady green, and the "ACT" light is flashing green (like there is data going through)

The interface goes up with no problem (static IP config) but I can't ping anything on my LAN. And doing a "netstat -r" shows the routing table but it takes like 3 minutes to print.

I can conclude this has something to do with the driver or with something else in the kernel.. it just broke from 2.6.17 to 2.6.22/23/24. It's the only driver there for realtek 8169 gig ether.

----------

## nekromancer

This is a pretty bad situation for me.

I can't use 2.6.17 anyways because it doesn't have GFS2 support. Though 2.6.19 does have it but the compile fails at the end. Looks like a compile problem related to GFS2  :Sad:   during  fs/built-in.o

can't use the other cos the realtek card won't work on them and I need the GFS2 more than I need the realtek drivers.  :Sad: 

----------

## V-Li

 *nekromancer wrote:*   

> I tried  2.6.23-gentoo-r6 and 2.6.24-gentoo.  Still same problem as before.
> 
> I don't get it though.. the "Link"  light is steady green, and the "ACT" light is flashing green (like there is data going through)
> 
> The interface goes up with no problem (static IP config) but I can't ping anything on my LAN. And doing a "netstat -r" shows the routing table but it takes like 3 minutes to print.
> ...

 

 What does $(dmesg |grep -C 5 8169) tell you and can you ping IP addresses or is name resolving also not working?

----------

## nekromancer

 *V-Li wrote:*   

>  *nekromancer wrote:*   I tried  2.6.23-gentoo-r6 and 2.6.24-gentoo.  Still same problem as before.
> 
> I don't get it though.. the "Link"  light is steady green, and the "ACT" light is flashing green (like there is data going through)
> 
> The interface goes up with no problem (static IP config) but I can't ping anything on my LAN. And doing a "netstat -r" shows the routing table but it takes like 3 minutes to print.
> ...

 

I can't ping any IP address and name resolving doesn't work either. I can't even ping the gateway or other PCs. Yet change the kernel back to 2.6.17 and it all works.

Here's the output.

```

tg3.c:v3.86 (November 9, 2007)

PCI: Setting latency timer of device 0000:04:00.0 to 64

eth0: Tigon3 [partno(BCM95789) rev 4201 PHY(5750)] (PCI Express) 10/100/1000Base-T Ethernet 00:16:41:2b:36:d9

eth0: RXcsums[1] LinkChgREG[0] MIirq[0] ASF[0] WireSpeed[1] TSOcap[1]

eth0: dma_rwctrl[76180000] dma_mask[64-bit]

r8169 Gigabit Ethernet driver 2.2LK loaded

eth1: RTL8110s at 0xf883c000, 00:40:f4:cb:81:e8, XID 04000000 IRQ 9

Driver 'sd' needs updating - please use bus_type methods

Driver 'sr' needs updating - please use bus_type methods

ata_piix 0000:00:1f.2: version 2.12

ata_piix 0000:00:1f.2: MAP [ P0 P2 IDE IDE ]

--

ReiserFS: sda3: Using r5 hash to sort names

VFS: Mounted root (reiserfs filesystem) readonly.

Freeing unused kernel memory: 204k freed

Adding 787176k swap on /dev/sda2.  Priority:-1 extents:1 across:787176k

ADDRCONF(NETDEV_UP): eth0: link is not ready

r8169: eth1: link up

eth1: no IPv6 routers present

```

----------

## V-Li

So you expect your network on eth0?  Do you have two network interfaces?  And did you try starting it as /etc/init.d/net.eth1?

----------

## nekromancer

yup.

I have 2 interfaces.

Broadcom Tigon3 on the motherboard (eth0)

Realtek r8169 on PCI-Slot (eth1)

It used to work both interfaces running at the same time. The eth0 is connected to another PC via cross-over cable. eth1 is connected to a switch on a LAN. Normal setup.. nothing fancy.

I expect my network on eth1. Now it doesn't matter if I am connected to my LAN from eth0 .. I'm still left with a non-working ethernet card. I need 2. And yes I tried switching them around. Whatever I put on eth0 works, whatever I put on eth1 doesn't work (can't ping a thing on the network). I don't have any firewalls running either and all that iptables/netfilter stuff is all excluded from the kernel.

My /etc/conf.d/net  file looks like this

```

config_eth0=("172.22.0.1 netmask 255.255.0.0")

config_eth1=("192.168.0.46 netmask 255.255.255.0")

routes_eth1=("default gw 192.168.0.1")

```

So when I say I switched them around.. is that I replace 1 with 0 up there. But like I said.. it is only giving me 1 working iface at a time (unless I use 2.6.17) then they both work.

----------

## V-Li

Can you tell the dmesg output for the working kernel?

And please post the complete dmesg of the not working, too...maybe something weird happens elsewhere.

----------

## nekromancer

I think something wierd is going on with UDEV.

I replaced the network card with a different one and I notice this in dmesg

```

net eth3: device_rename: sysfs_create_symlink failed (-17)

udev: renamed network interface eth1 to eth3

```

Using kernel 2.6.23-gentoo-r6. Connected it to another pc via cross-over cable (both pcs are identical in hardware and in softare config) still doesn't work.

----------

## V-Li

You cannot start this via a renamed net init script?

----------

## nekromancer

well yeah I made a net.eth3 and started it.. still I can't ping anything on the other side.

I'll try to reboot the switch it is connected to.. I guess it's the last resort.. maybe it's ARP tables or something got all messed up. I'm doing HA tests so maybe it crapped out the switch.

----------

## Monkeh

Try booting with pci=nomsi.

----------

## nekromancer

ok this is funny now.. everytime I reboot the eth of the pci card is incremented by 1.

eth1 then it was eth2, then 3 then 4 now eth5.

----------

## Monkeh

 *nekromancer wrote:*   

> ok this is funny now.. everytime I reboot the eth of the pci card is incremented by 1.
> 
> eth1 then it was eth2, then 3 then 4 now eth5.

 

Heh, fun, the MAC address is changing every boot. Again, try it with pci=nomsi (delete /etc/udev/rules.d/70-persistent-net.rules first so it'll be eth0).

----------

## nekromancer

 *Monkeh wrote:*   

>  *nekromancer wrote:*   ok this is funny now.. everytime I reboot the eth of the pci card is incremented by 1.
> 
> eth1 then it was eth2, then 3 then 4 now eth5. 
> 
> Heh, fun, the MAC address is changing every boot. Again, try it with pci=nomsi (delete /etc/udev/rules.d/70-persistent-net.rules first so it'll be eth0).

 

OK done that, it fixed the problem of the net.eth1 changing all the time.

I hooked a cross-over cable between the 2 pcs on eth1. Still no luck.

I have a question.. could this somehow be due to the ATA devuce drivers? The biggest change that was done was that I am no longer using "ATA/ATAPI/MFM/RLL support"  (cos it kees seeing my drives as hda instead of sda) and using Serial ATA (prod) and Parallel ATA  (Experimental)" drivers... plus it seemed to have killed USB support as well.

You think this might have affected the PCI network card from working correctly?

----------

## Monkeh

No, that shouldn't be a problem. If I were you, I'd return the card as faulty and get a refund, and buy something with an Intel chip.

----------

## nekromancer

 *Monkeh wrote:*   

> No, that shouldn't be a problem. If I were you, I'd return the card as faulty and get a refund, and buy something with an Intel chip.

 

don't think the cards are the problem.. I used 3 different cards.

my original config was

```

config_eth0=("172.22.0.1 netmask 255.255.0.0")

config_eth1=("192.168.0.46 netmask 255.255.255.0")

routes_eth1=("default gw 192.168.0.1") 

```

I changed eth0 to  ("192.168.0.60 netmask 255.255.255.0")  and on the other machine to .66

and it just suddenly worked. With a crossover cable and without.

It still bothers me that I have all these problems when just upgrading the kernel.. my previous setup  was fine for a whole year till now  :Razz: 

----------

## Monkeh

So you had the network set up wrong. But still, I'd return them as faulty (even if they're not.. crap isn't worth paying for) and buy something decent.

----------

