Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 12 Nov 2015 09:52:25 +0000
From:      Steven Hartland <steven@multiplay.co.uk>
To:        Ryan Stone <rysto32@gmail.com>
Cc:        "freebsd-net@freebsd.org" <freebsd-net@freebsd.org>, Jack F Vogel <jfv@freebsd.org>
Subject:   Re: Intel XL710 broken link down detection?
Message-ID:  <56446159.3080405@multiplay.co.uk>
In-Reply-To: <CAFMmRNwuc4N%2B6TSCFuknbfYZnMzXuuunFbyeGfyaOzYWxgWfaA@mail.gmail.com>
References:  <564357E0.1050002@freebsd.org> <56436A5F.4020102@multiplay.co.uk> <CAFMmRNwuc4N%2B6TSCFuknbfYZnMzXuuunFbyeGfyaOzYWxgWfaA@mail.gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
Yes this works but a better way IMO would be to invert the bits we want:
https://people.freebsd.org/~smh/ixl_int_init.patch

If there are no objections then I'll commit this later today.

Also just fixed the debug sysctls from causing panics when compiled with 
INVARIANTS see:
https://svnweb.freebsd.org/base?view=revision&revision=290708

     Regards
     Steve

On 11/11/2015 16:31, Ryan Stone wrote:
> On Wed, Nov 11, 2015 at 11:18 AM, Steven Hartland 
> <steven@multiplay.co.uk <mailto:steven@multiplay.co.uk>> wrote:
>
>     Comparing this to the Linux driver which does detect the link down
>     I've discovered it actually polls the link status by default in
>     its watchdog.
>
>     Disabling this with "ethtool --set-priv-flags eth1 LinkPolling
>     off" and the Linux driver also fails to detect link down.
>
>     So this seems like a firmware or even hardware bug where it should
>     be reporting down events and the Linux driver has been updated to
>     workaround the problem?
>
>
> No, apparently the Linux devs just didn't read the datasheet closely 
> enough (and presumably the FreeBSD driver copied the mistake).  There 
> is a mask of interrupt causes that works backwards from how one would 
> expect; you mask out events that you *don't* want rather than events 
> that you do want.  Both the Linux and FreeBSD drivers pass a mask of 
> events that they want interrupts for (the only reason why it appears 
> to work on link up is that the the AN Completed event fires when link 
> is up, as far as I can tell).  Try the following patch:
>
> https://people.freebsd.org/~rstone/patches/ixl_link_int.diff 
> <https://people.freebsd.org/%7Erstone/patches/ixl_link_int.diff>;
>




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