Odd driver behavior with IPV6

Jack Vogel jfvogel at gmail.com
Thu Aug 2 22:15:26 UTC 2007


On 8/2/07, Jack Vogel <jfvogel at gmail.com> wrote:
> I have some behavior I don't understand, perhaps someone can enlighten me.
>
> There is a difference in behavior between the em driver and ixgbe, but I can
> not figure out what it is, here is the behavior.
>
> With em driver, you can give the interface an ipv6 address, and set mtu
> to 9000, then when you 'route get -inet6 ipv6host' it will show the mtu
> to be 9000, this is what you would expect.
>
> OK, the problem is that with ixgbe, when it is built in OR when it is set
> to load immediately on boot it works correctly, BUT, if I just randomly
> load the driver after coming up, and then do the above steps, when you
> do the route get the MTU shows up only as 1500. This works correctly
> for IPv4 which is why this mystifies me, the driver doesnt have any
> code for IP versions.
>
> I hope this explanation is clear. Anyone have a clue?

I have some more data, in setup, after the call to ether_ifattach(), the
ixgbe driver explicitly does ifp->if_mtu = 9000 to change the default.
If I take this out then this all works, but I don't understand why this
should be, especially since if the code is static in the kernel it works.

Very strange :(

Jack

PS. BTW, the mxge does this as well, Drew you might want to check
if this happens for you.


More information about the freebsd-net mailing list