From nobody@FreeBSD.org  Sun Jan 28 18:02:24 2007
Return-Path: <nobody@FreeBSD.org>
Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52])
	by hub.freebsd.org (Postfix) with ESMTP id B250616A494
	for <freebsd-gnats-submit@FreeBSD.org>; Sun, 28 Jan 2007 18:02:24 +0000 (UTC)
	(envelope-from nobody@FreeBSD.org)
Received: from www.freebsd.org (www.freebsd.org [69.147.83.33])
	by mx1.freebsd.org (Postfix) with ESMTP id 88E2713C4A3
	for <freebsd-gnats-submit@FreeBSD.org>; Sun, 28 Jan 2007 18:02:24 +0000 (UTC)
	(envelope-from nobody@FreeBSD.org)
Received: from www.freebsd.org (localhost [127.0.0.1])
	by www.freebsd.org (8.13.1/8.13.1) with ESMTP id l0SI2OGo068904
	for <freebsd-gnats-submit@FreeBSD.org>; Sun, 28 Jan 2007 18:02:24 GMT
	(envelope-from nobody@www.freebsd.org)
Received: (from nobody@localhost)
	by www.freebsd.org (8.13.1/8.13.1/Submit) id l0SI2OPW068901;
	Sun, 28 Jan 2007 18:02:24 GMT
	(envelope-from nobody)
Message-Id: <200701281802.l0SI2OPW068901@www.freebsd.org>
Date: Sun, 28 Jan 2007 18:02:24 GMT
From: Rudi Mathijssen<r.mathijssen@iris-ict.nl>
To: freebsd-gnats-submit@FreeBSD.org
Subject: stress2-udp with realtek 8169S gigabit interface shows mbuf leak
X-Send-Pr-Version: www-3.0

>Number:         108485
>Category:       kern
>Synopsis:       [re] stress2-udp with realtek 8169S gigabit interface shows mbuf leak
>Confidential:   no
>Severity:       serious
>Priority:       high
>Responsible:    jh
>State:          closed
>Quarter:        
>Keywords:       
>Date-Required:  
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Sun Jan 28 18:10:19 GMT 2007
>Closed-Date:    Thu Dec 30 16:52:02 UTC 2010
>Last-Modified:  Thu Dec 30 16:52:02 UTC 2010
>Originator:     Rudi Mathijssen
>Release:        6.2-RELEASE
>Organization:
IRIS-ICT
>Environment:
FreeBSD witje.rudi.here 6.2-RELEASE FreeBSD 6.2-RELEASE #0: Sun Jan 28 13:29:19 CET 2007     root@witje.rudi.here:/usr/src/sys/i386/compile/WITJE  i386
>Description:
The udp process in the stress2 suite sends bursts of udp traffic (udp
port 9) to a blast host. After some time (mostly within 6 hours) the re0
interface becomes unresponsive.  After killing all processes of stress2,
642 mbuf clusters and 1156 mbufs remain in use (idle system: 128 mbuf
clusters and 129 mbufs), but netstat -n reveals no more open connections,
so it appears to be an mbuf "leak".  A third system can still communicate
with the blast host. After an ifconfig re0 down/up cycle the mbufs are
released, and the network operates normally again. 

The (extremely fast!) system is an Asus K8N (nforce3) with 512MB RAM and
an AMD Sempron 3000+ CPU.

The blast host is a FreeBSD-5.3 system with a re0 interface.  Maximum tcp
data transfer speed between these two systems is around 30MB/s, so the
Gigabit link appears to operate normally.  During the udp bursts, a lot
of kernel messages appear on the blast host:

Limiting icmp unreach response from <number> to 200 packets/sec, where
<number> varies between 201 and 100000.

Increasing kern.ipc.maxsockbuf from the default 256k to 1M has no effect.
Cooling the realtek chip (which gets really hot!) has no effect.

With a ti0 interface, the problem appears not to occur, so far, but the
standard 72-hour stress2 period is not over yet... -- I borrowed a compaq
DEGPA card, which achieves even 35MB/s, but it costs more than the rest
of the computer and needs an extra system fan...

It is possible that the speed of the K8N has something to do with it,
as I don't recall any problems like this during earlier tests with 6.2-RC1
and 6.2-RC2 on a (much slower) P4/2.8GHz (i865PE) system.

>How-To-Repeat:
You need two systems, one with 6.2-RELEASE or 6.2-RC2, one with any
version (I think). Both systems have a realtek 8169S (re0) interface. 

Run the FreeBSD Kernel Stress Test Suite (stress2) with INCARNATIONS set
to 100 and BLASTHOST set to a server with port 9 (discard) enabled.  When
a ping -qA on the blast host begins to beep, you know the shit hit the fan.
>Fix:
Walk to the console, log in as root and enter
ifconfig re0 down
ifconfig re0 up
Bit this is not really a fix, is it?
>Release-Note:
>Audit-Trail:
State-Changed-From-To: open->feedback 
State-Changed-By: jh 
State-Changed-When: Sat Nov 27 17:02:50 UTC 2010 
State-Changed-Why:  
Can you still reproduce this on a recent 7.x or 8.x release? 


Responsible-Changed-From-To: freebsd-bugs->jh 
Responsible-Changed-By: jh 
Responsible-Changed-When: Sat Nov 27 17:02:50 UTC 2010 
Responsible-Changed-Why:  
Track. 

http://www.freebsd.org/cgi/query-pr.cgi?pr=108485 
State-Changed-From-To: feedback->closed 
State-Changed-By: jh 
State-Changed-When: Thu Dec 30 16:52:01 UTC 2010 
State-Changed-Why:  
Feedback timeout. 

http://www.freebsd.org/cgi/query-pr.cgi?pr=108485 
>Unformatted:
