Quantcast

Is enabling jumbo frames on RTL8111C possible?

classic Classic list List threaded Threaded
3 messages Options
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Is enabling jumbo frames on RTL8111C possible?

Bugzilla from alteriks@gmail.com
Hi,

I'm trying to enable jumbo frames on my re0 NIC. I tried:
# ifconfig re0 mtu 1600
ifconfig: ioctl (set mtu): Invalid argument

I have found in /usr/src/sys/dev/re/if_re.c
 /*
* These controllers support jumbo frame but it seems
* that enabling it requires touching additional magic
* registers. Depending on MAC revisions some
* controllers need to disable checksum offload. So
* disable jumbo frame until I have better idea what
* it really requires to make it support.
* RTL8168C/CP : supports up to 6KB jumbo frame.
* RTL8111C/CP : supports up to 9KB jumbo frame.
*/

pciconf -lv shows:
re0@pci0:2:0:0: class=0x020000 card=0xe0001458 chip=0x816810ec rev=0x02
hdr=0x00
vendor = 'Realtek Semiconductor'
device = 'Gigabit Ethernet NIC(NDIS 6.0) (RTL8168/8111/8111c)'
class = network
subclass = ethernet

Do I need to set some quirks in boot process to enable jumbo frames, or it
cannot be done because it's not implemented in the driver.
I tried setting larger mtu than 1500 on Debian Squeeze and it worked well,
so definitely my chip supports jumbo frames
_______________________________________________
[hidden email] mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-net
To unsubscribe, send any mail to "[hidden email]"
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Is enabling jumbo frames on RTL8111C possible?

YongHyeon PYUN
On Thu, Jun 03, 2010 at 02:24:38PM +0200, Krzysztof Dajka wrote:

> Hi,
>
> I'm trying to enable jumbo frames on my re0 NIC. I tried:
> # ifconfig re0 mtu 1600
> ifconfig: ioctl (set mtu): Invalid argument
>
> I have found in /usr/src/sys/dev/re/if_re.c
>  /*
> * These controllers support jumbo frame but it seems
> * that enabling it requires touching additional magic
> * registers. Depending on MAC revisions some
> * controllers need to disable checksum offload. So
> * disable jumbo frame until I have better idea what
> * it really requires to make it support.
> * RTL8168C/CP : supports up to 6KB jumbo frame.
> * RTL8111C/CP : supports up to 9KB jumbo frame.
> */
>
> pciconf -lv shows:
> re0@pci0:2:0:0: class=0x020000 card=0xe0001458 chip=0x816810ec rev=0x02
> hdr=0x00
> vendor = 'Realtek Semiconductor'
> device = 'Gigabit Ethernet NIC(NDIS 6.0) (RTL8168/8111/8111c)'
> class = network
> subclass = ethernet
>
> Do I need to set some quirks in boot process to enable jumbo frames, or it
> cannot be done because it's not implemented in the driver.
> I tried setting larger mtu than 1500 on Debian Squeeze and it worked well,
> so definitely my chip supports jumbo frames

RealTek no longer releases datasheet so it's hard to know required
information to support jumbo frame. It seems driver released by
vendor has magic code which enables jumbo frame as well as DSP
fixups. The magic code is very complex and hard to understand the
meaning. It seems Linux borrowed the magic code from vendor but I
guess they also don't know what the magic code does and why the
magic is needed.

Controllers targeted to servers show very good performance number
with jumbo frame(e.g. about 990Mbps for bulk TCP transfers) but I'm
not sure how well consumer controller works with jumbo frame.
Vendor driver disables checksum offloading when jumbo frame is
used. This indicates the controller has very small FIFO(less than 1
jumbo frame size) which in turn means it may show poor performance
under load.
_______________________________________________
[hidden email] mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-net
To unsubscribe, send any mail to "[hidden email]"
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Is enabling jumbo frames on RTL8111C possible?

Bugzilla from alteriks@gmail.com
On Thursday, 3 of June 2010 19:20:38 Pyun YongHyeon wrote:

> RealTek no longer releases datasheet so it's hard to know required
> information to support jumbo frame. It seems driver released by
> vendor has magic code which enables jumbo frame as well as DSP
> fixups. The magic code is very complex and hard to understand the
> meaning. It seems Linux borrowed the magic code from vendor but I
> guess they also don't know what the magic code does and why the
> magic is needed.
>
> Controllers targeted to servers show very good performance number
> with jumbo frame(e.g. about 990Mbps for bulk TCP transfers) but I'm
> not sure how well consumer controller works with jumbo frame.
> Vendor driver disables checksum offloading when jumbo frame is
> used. This indicates the controller has very small FIFO(less than 1
> jumbo frame size) which in turn means it may show poor performance
> under load.

Thanks for explanation.

_______________________________________________
[hidden email] mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-net
To unsubscribe, send any mail to "[hidden email]"
Loading...