Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 8 Sep 2015 21:52:38 -0700
From:      "M. V." <bored_to_death85@yahoo.com>
To:        Artem Belevich <artemb@gmail.com>
Cc:        "freebsd-net@freebsd.org" <freebsd-net@freebsd.org>
Subject:   Re: Problem with receiving packets right after remote-interface is up
Message-ID:  <1441774358.73226.YahooMailBasic@web165005.mail.bf1.yahoo.com>
In-Reply-To: <CAFqOu6ihCTrOiTppYA%2B%2BGkTD_n1e%2BUTiV6x2TznVUp65mno2rA@mail.gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
Hi guys,

On Sun, 9/6/15, Artem Belevich <artemb@gmail.com> wrote:
> While you can indeed set speed/duplex manually, you will also need
> to make sure both have have proper clock master/slave
> =A0selection =A0which is normally done via autonegotiation. On
> Freebsd some interfaces support "mediaopt master"
> option ..

Thanks again for your answer. I continuted tests on this yesterday, and I f=
ound root of the problem. As I told you, I checked ifconfig and there was n=
o support for changing master/slave option. Yesterday I tested to see if th=
is master/slave option affects my tests. I found out every time interface o=
f remote system gets down and up, If our interface gets slave, everything i=
s ok, but anytime our interface gets master, we don't receive sent packets =
in the first second after getting up.
So I changed driver code to manualy force interface to get slave (by changi=
ng values of 82574's related registers) and my problem was solved completel=
y (even with auto-neg. enabled)
It seems getting master needs extra work and extra time to setup in hardwar=
e level ('cause I didn't find any code in driver to do things differently w=
hen we are master).=20

So my question is,=20
- Is there anything I can do to make my scenario work in master-mode too? (=
interestingly cisco router doesn't have this problem in both master/slave m=
odes)
- Is it OK to force interface to always gets slave like this? (I found no p=
roblem in my tests. I even checked what happens if 2 connected ports both w=
ere forced to be slave. In that situation one of the ports gets master even=
 though we manually set it to slave, so connection is OK)

Thank you.

> On Saturday, September 5, 2015, M. V. via freebsd-net
> < freebsd-net@freebsd.org> wrote:=20
>> Our product is being tested with Spirent TestCenter,
>> and we're facing an unusual problem with the tests.
>> We use NICs with intel 82574 and 82576 on FreeBSD 9.2
>> with latest em and igb drivers (we also tested this on=20
>> FreeBSD-10.1) It seems what Spirent TestCenter does to=20
>> start any individual test is, it disables its own interface,=20
>> and at the beginning of the new test, it suddenly "up"s its=20
>> interface and sends test packet right after that.
>> This is where we have problem, and we don't receive this
>> first packets most of the time (result is vary, in 100 tests,=20
>> we lose about 60~70% of this "first" packets on each test,
>> so we FAIL most of tests because apparently we need
>> about 0.5~1 seconds after setup and renegotiation
>> before we can receive packets)
=20




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