Date: Tue, 10 Jul 2007 23:55:48 +0100 From: Tom Judge <tom@tomjudge.com> To: James <james@hicag.org> Cc: FreeBSD Net <freebsd-net@freebsd.org> Subject: Re: Problems with BCE network adapter (Dell PE2950) Message-ID: <46940E74.4050601@tomjudge.com> In-Reply-To: <abd3d3c20707101352v3fec6805q73c99bfa2a65c19b@mail.gmail.com> 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> <ea7b9c170706300244s5c93851fn6a8e63f2d3b05da4@mail.gmail.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> <abd3d3c20707101352v3fec6805q73c99bfa2a65c19b@mail.gmail.com>
next in thread | previous in thread | raw e-mail | index | archive | help
James wrote: > On 7/10/07, Tom Judge <tom@tomjudge.com> 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
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?46940E74.4050601>