# Realtek 8169 MTU setting

## zircon009

I'm trying to enable jumbo frames on a Realtek 8169 <Gigabyte motherboard internal lan>.  Using ifconfig I can change the mtu to the range of 68 to 1500  but I can not get it to exceed 1500.  The only module options I see in the source are for hard setting the speed.  Has anyone managed to set mtu=9000 , using a Realtek 8169 gigabit ethernet driver?

I'm using gentoo-dev-sources 2.6.5-r1 on an Athlon XP system, and I currently loading the r8169 driver as a module. 

Justin Woodman

lspci>

```
01:0b.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL-8169 (rev 10)

```

ifconfig

```
eth0      Link encap:Ethernet  HWaddr 00:0D:61:15:52:62

          inet addr:192.168.1.19  Bcast:192.168.1.255  Mask:255.255.255.0

          inet6 addr: fe80::20d:61ff:fe15:5262/64 Scope:Link

          UP BROADCAST NOTRAILERS RUNNING MULTICAST  MTU:1500  Metric:1

          RX packets:1321 errors:0 dropped:0 overruns:0 frame:0

          TX packets:178 errors:0 dropped:0 overruns:0 carrier:0

          collisions:0 txqueuelen:1000

          RX bytes:1850263 (1.7 Mb)  TX bytes:24585 (24.0 Kb)

          Interrupt:11 Base address:0xb000

```

When using ifconfig to set the mtu to 1501 or greater I get the following:

```
#ifconfig eth0 mtu 1501

SIOCSIFMTU: Invalid argument

```

----------

## Sylgeist

zircon009

Not sure if this makes a difference but have you checked all the kernel configu stuff for gig eth options? I believe you are looking for the "jumbo frames" option which that driver may not support yet. You might want to check on that.

----------

## zircon009

Well it appears that the current linux driver does not support jumbo frames. I've tried every trick I know to set the mtu higher, and I do not see any enable jumbo frame flags in the source.  The only options I see in kernel config is build the driver in the kernel or module. No jumbo frames options. My next step is to try mm-sources, I've read that Andrew Morton did some work on this driver in the latest kernel release 2.6.5 .

I just don't have time to work with this project right at the moment. My main reason for posting this question is to see if anyone has the realtek 8169 family nic, and have or is running jumbo frames.  It almost like the hardware is to new to find useful information on it.

Thanks,

Justin

----------

## Vlad

I recently purchased a gigabit NIC PCI card, which uses the RTL-8169 chip:

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

        Subsystem: Realtek Semiconductor Co., Ltd. RTL-8169 Gigabit Ethernet

```

I downloaded the linux driver from the realtek website, as it reports supporting the 2.4 and 2.6 series kernels.  After slightly modifying some entries in the code (had to change all references of pci_dma_sync_single to pci_dma_sync_single_for_cpu), I managed to get the driver working.  Investigating the source further, I've discovered that if you remove any ifdef/define/undef/whatever statements pertaining to jumbo frames, ifconfig will allow you to set the devices MTU to 9000 (ifconfig eth0 mtu 9000).

Unfortunately, my gigabit switch does not support jumbo frames (which means it's going to get returned) so I didn't have an oppurtunity to really test it - although setting the MTU to 9000 instantly killed my connection (as I would expect, since the switch will just drop the frames).  So just to let everyone know, with a little modification, the realtek provided driver can support jumbo frames.

----------

