Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 4 May 2007 13:49:01 -0700
From:      "Jack Vogel" <jfvogel@gmail.com>
To:        "Stefan Lambrev" <stefan.lambrev@sun-fish.com>
Cc:        freebsd-net@freebsd.org
Subject:   Re: em0 - bge0 failed to work at 1000baseTX
Message-ID:  <2a41acea0705041349o7bce9e1eh63ef1a036f80d1b6@mail.gmail.com>
In-Reply-To: <2a41acea0704250936l46ed31a3w930ac8fba04df810@mail.gmail.com>
References:  <462E3B4A.5030307@sun-fish.com> <2a41acea0704241103r59a1fa8di7e7747e191eea787@mail.gmail.com> <462F0CBF.6020507@sun-fish.com> <2a41acea0704250936l46ed31a3w930ac8fba04df810@mail.gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On 4/25/07, Jack Vogel <jfvogel@gmail.com> wrote:
> On 4/25/07, Stefan Lambrev <stefan.lambrev@sun-fish.com> wrote:
> > Hello,
> >
> > Jack Vogel wrote:
> > > On 4/24/07, Stefan Lambrev <stefan.lambrev@sun-fish.com> wrote:
> > >> Hello,
> > >>
> > >> I'm trying to get two gigabit network cards to work together.
> > >>
> > >> em0: <Intel(R) PRO/1000 Network Connection Version - 6.2.9> port
> > >> 0x1000-0x101f mem 0xf0500000-0xf051ffff,0xf0524000-0xf0524fff irq 19 at
> > >> device 25.0 on pci0
> > >>
> > >> em0@pci0:25:0:  class=0x020000 card=0x2800103c chip=0x104a8086 rev=0x02
> > >> hdr=0x00
> > >>     vendor     = 'Intel Corporation'
> > >>     class      = network
> > >>     subclass   = ethernet
> > >>
> > >> and broadcom on the other end:
> > >>
> > >> bge0: <Broadcom BCM5750 C1, ASIC rev. 0x4201> mem 0xf4100000-0xf410ffff
> > >> irq 16 at device 0.0 on pci8
> > >>
> > >> bge0@pci8:0:0:  class=0x020000 card=0x30a3103c chip=0x16fd14e4 rev=0x21
> > >> hdr=0x00
> > >>     vendor     = 'Broadcom Corporation'
> > >>     device     = 'BCM5753M NetXtreme Gigabit Ethernet PCI Express'
> > >>     class      = network
> > >>     subclass   = ethernet
> > >>
> > >>
> > >> When I connect both networks without switch e.g. directly they auto
> > >> negotiate to:
> > >> media: Ethernet autoselect (100baseTX <full-duplex>)
> > >> but I want 1000baseTX :(
> > >>
> > >> First thing that I tried was to force both network card with:
> > >> ifconfig bge0/em0 media 1000baseTX mediaopt full-duplex
> > >> but this lead to status: no carrier
> > >>
> > >> Second step was to set bge link0 and em0 link1, but still "no carrier"
> > >> (from bge manual)
> > >>
> > >> On the machine with em card I have linux installed so I boot under linux
> > >> and then everything works
> > >> with autoselect, and I'm able to transfer with speed +50MB/s.
> > >>
> > >> When I forced both network cards to 1000baseTX I notice this:
> > >>
> > >> em0 media: Ethernet 1000baseTX <full-duplex> (autoselect)
> > >>
> > >> ^^^^^^^^
> > >> bge0 media: Ethernet 1000baseTX <full-duplex> (none)
> > >>
> > >> ^^^^
> > >>
> > >> Something else that is quite strange is that when I change em media from
> > >> autoselec to 1000baseTX,
> > >> I see that for 2-3 seconds there is a connection between cards (e.g.
> > >> status: active), but just for 2-3 seconds
> > >> and then it disconnects again. (ping between hosts works for 2 seconds)
> > >> At this time ifconfig shows:
> > >> em0
> > >> media: Ethernet 1000baseTX <full-duplex>
> > >>
> > >> ^^^^^^ no autoselect here ?
> > >> status: active
> > >>
> > >> and bge0:
> > >> media: Ethernet autoselect (1000baseTX <full-duplex>) ( I left bge to
> > >> autoselect at some point as I saw it does not change a thing..)
> > >> status: active
> > >>
> > >> I compiled new kernel with
> > >> #define EM_MASTER_SLAVE      2 (and then 3)
> > >> in if_em.h (as I'm suspecting em driver ..)
> > >> but still no success.
> > >>
> > >> Last thing that I notice while (re)booting freebsd server with em0 is
> > >> that
> > >> during starting program and rc scripts the status of the network changed
> > >> from 100mbps -> 1000mbps -> no carrier -> 100mbps.
> > >>
> > >> So any ideas how to get my network working at gigabit speeds? :)
> > >>
> > >> P.S. both machines are running freebsd 6.2 stable - em0 is i386 and bge0
> > >> is on amd64.
> > >> em0 was tested with 6.2-release too.
> > >>
> > >> Thanks in advance.
> > >
> > > Do me a favor please, go to downloadfinder.intel.com and get my latest
> > > driver,  its version 6.3.9, since ICH8 is fairly recent and has had some
> > > late-breaking fixes in shared code its possible that will solve things.
> > > You will want to use this driver as a module, its a hassle to build into
> > > the kernel (although there is a patch to allow you to do that if you
> > > wish).
> > >
> > > Please report back EITHER if it works or fails, if it does still fail
> > > I will
> > > have our test/validation group get hardware set up to look into this.
> > >
> > > Jack
> > > _______________________________________________
> > > freebsd-net@freebsd.org mailing list
> > > http://lists.freebsd.org/mailman/listinfo/freebsd-net
> > > To unsubscribe, send any mail to "freebsd-net-unsubscribe@freebsd.org"
> > Unfortunately 6.3.9 have the same behavior as 6.2.9 and I can't get both
> > network cards to work at gigabit speed.
> > Any other ideas ? :)
>
> Actually yes, I talked with the Linux engineer in our group that oversaw
> the release of ICH8 and there is a problem with OS vs Management
> use of the NIC that was discovered and fixed in Linux recently, and
> my driver does not yet have this.
>
> Let me come up with a patch for you to test, it may take me a day,
> things get busy here at times :)

The new driver I just checked into CURRENT has this fix, I hope its
going to be in the May snapshot, Stefan, can you try CURRENT to
see if it solves your problem?

Jack



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?2a41acea0705041349o7bce9e1eh63ef1a036f80d1b6>