From owner-freebsd-net@FreeBSD.ORG Tue Jul 10 21:55:25 2007 Return-Path: X-Original-To: freebsd-net@freebsd.org Delivered-To: freebsd-net@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 3B0D916A46B for ; Tue, 10 Jul 2007 21:55:25 +0000 (UTC) (envelope-from tom@tomjudge.com) Received: from smtp801.mail.ird.yahoo.com (smtp801.mail.ird.yahoo.com [217.146.188.61]) by mx1.freebsd.org (Postfix) with SMTP id B188013C468 for ; Tue, 10 Jul 2007 21:55:24 +0000 (UTC) (envelope-from tom@tomjudge.com) Received: (qmail 55031 invoked from network); 10 Jul 2007 21:55:23 -0000 Received: from unknown (HELO ?192.168.1.2?) (thomasjudge@btinternet.com@86.139.149.183 with plain) by smtp801.mail.ird.yahoo.com with SMTP; 10 Jul 2007 21:55:22 -0000 X-YMail-OSG: B4GFB7EVM1nj3UGv2V9BJ8sYx_SnbHv31hZ4BwdMn0HhYSvk8l3zhxvsYOlepM.tlew8ddg7hBwdgHi4grY0w.g- Message-ID: <46940E74.4050601@tomjudge.com> Date: Tue, 10 Jul 2007 23:55:48 +0100 From: Tom Judge User-Agent: Thunderbird 1.5.0.12 (X11/20070604) MIME-Version: 1.0 To: James References: <46680DB1.9050905@tomjudge.com> <09BFF2FA5EAB4A45B6655E151BBDD90304571430@NT-IRVA-0750.brcm.ad.broadcom.com> <09BFF2FA5EAB4A45B6655E151BBDD903045714EF@NT-IRVA-0750.brcm.ad.broadcom.com> <4684D5C0.3040709@tomjudge.com> <09BFF2FA5EAB4A45B6655E151BBDD90304571BF1@NT-IRVA-0750.brcm.ad.broadcom.com> <468A2D55.60301@tomjudge.com> <46937D97.7030507@tomjudge.com> <46938E75.80900@tomjudge.com> <4693C88F.8050204@tomjudge.com> In-Reply-To: Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Cc: FreeBSD Net Subject: Re: Problems with BCE network adapter (Dell PE2950) X-BeenThere: freebsd-net@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Networking and TCP/IP with FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 10 Jul 2007 21:55:25 -0000 James wrote: > On 7/10/07, Tom Judge wrote: >> Ok so I think I have fix the problem with the rx_bd tracking. I >> have ported rboyer's patch to NetBSD's bnx driver to FreeBSD (patch >> attached). The patch seems to get rid of two problems: >> >> 1) Unexpected mbuf in rx_bd >> 2) Too many free rx_bd's > > Hi Tom. Thanks much for your work with this problem. I'm > effected by major bce problems as well. Right now I'd be happy to > get it working properly with an MTU of 1500. To that end I'm > unable to get your patch to apply cleanly to my FreeBSD 6.2 tree. > Most likely I've lost track of what patches in this thread to > apply before your patch. > > If you have time, would you be so kind to cook a diff against a > vanilla FreeBSD 6.2 tree or let me know which patches to apply > first? > > Thanks! > A full patch against RELENG_6_2 (p5) is avaliable here: http://www.tomjudge.com/tmp/bce-patch-full-10-7-2007.gz You will also require this patch to sys/net/if_media.h that adds the 2.5Gb/s media definitions: http://www.tomjudge.com/tmp/if_media.h-patch-10-7-2007.gz These patches should be applied in /usr/src/sys/dev/bce and /usr/src/sys/net respectively. (e.g: cd /usr/src/sys/dev/bce; patch < /path/to/patch) This patch includes: * The latest driver from RELENG_6 (See http://www.freebsd.org/cgi/cvsweb.cgi/src/sys/dev/bce/if_bce.c?only_with_tag=RELENG_6 for details ). NOTE: This does not include MSI support as 6.2 does not have MSI support. * David's patch to enable dumping the first 128 bytes of a bad packet * Stepherosa's patch which attempts to fix problems in the rx buffer (de)allocation during bce_rx_intr. * My patch from NetBSD that completely rewrites the way that the rx buffers are (de)allocated. Rather than allocate them on the fly in bce_rx_intr. Try to pre allocate as many as possible, and then allocate more during the bce_tick routine. Please let me know if you have any problems applying this patch, as this patch was generated from my subversion repository. On a side note, I have some systems (Dell PE2950's) running the vanilla 6.2 driver which are stable, they have a standard 1500 byte MTU. However these systems are not running such network intensive tasks as the ones with a 8192 byte MTU. On another side note it seems that OpenBSD removed Jumbo frame support from their driver 4 months ago as it was causing panics under high load however FreeBSD and NetBSD both have Jumbo frame support enabled. Tom