Subject: kern/34109: vr(4) is painfully slow with the new rlphy(4)
To: None <kern-bug-people@netbsd.org, gnats-admin@netbsd.org,>
From: None <jmmv@netbsd.org>
List: netbsd-bugs
Date: 07/29/2006 08:15:01
>Number:         34109
>Category:       kern
>Synopsis:       vr(4) is painfully slow with the new rlphy(4)
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    kern-bug-people
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Sat Jul 29 08:15:00 +0000 2006
>Originator:     Julio M. Merino Vidal
>Release:        NetBSD 3.99.23
>Organization:
	
>Environment:
	
	
System: NetBSD dawn.home.network 3.99.23 NetBSD 3.99.23 (GENERIC) #22: Fri Jul 28 14:56:33 CEST 2006 root@max.home.network:/var/obj/usr/src-current/sys/arch/i386/compile/GENERIC i386
Architecture: i386
Machine: i386
>Description:
	I have an Asus A7V8X-x motherboard, which includes the VIA KT400
	chipset.  The integrated network card is a VIA VT6102 (Rhine II)
	10/100 Ethernet that generally works fine with the vr(4) driver.

	With a current kernel (3.99.23, as shown above), the new rlphy(4)
	driver is used with this card:

	vr0 at pci0 dev 18 function 0: VIA VT6102 (Rhine II) 10/100 Ethernet
	vr0: interrupting at irq 3
	vr0: Ethernet address: 00:0c:6e:27:57:bd
	rlphy0 at vr0 phy 1: RTL8201L 10/100 media interface, rev. 1
	rlphy0: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto

	This produces extremely slow throughput.  For example, a scp of a
	file between a 3.0_STABLE host in my home network and this current
	machine delivers a maximum transfer rate of 150 KB/s; this "speed"
	is not sustained as it fluctuates between 70 KB/s and 120 KB/s.
	As you can imagine, the local network is unusable at those rates.

	If I disable rlphy(4) from userconf, the kernel falls back to
	ukphy(4) as it always did before rlphy(4) was added:

	vr0 at pci0 dev 18 function 0: VIA VT6102 (Rhine II) 10/100 Ethernet
	vr0: interrupting at irq 3
	vr0: Ethernet address: 00:0c:6e:27:57:bd
	ukphy0 at vr0 phy 1: Generic IEEE 802.3u media interface
	ukphy0: RTL8201L 10/100 media interface (OUI 0x000004, model 0x0020), rev. 1
	ukphy0: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto

	With this configuration I get decent transfer speeds of the order
	of 6-8 MB/s.

	I'm afraid other network cards may be affected as well.

>How-To-Repeat:
	Use a VIA Rhine II card with vr(4) and rlphy(4) and try to transfer
	files to a machine in a local network.  See how slow it is.

>Fix:
	Don't know.  As a workaround, use ukphy(4).

>Unformatted: