Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 7 Feb 2015 05:26:36 +0000
From:      "Pokala, Ravi" <rpokala@panasas.com>
To:        John-Mark Gurney <jmg@funkthat.com>
Cc:        "freebsd-hackers@freebsd.org" <freebsd-hackers@freebsd.org>
Subject:   Re: Changing the MTU on a lagg device
Message-ID:  <D0FADE7D.12C6BE%rpokala@panasas.com>
In-Reply-To: <20150207051012.GH58410@funkthat.com>
References:  <D0FABB8B.12C626%rpokala@panasas.com> <20150207051012.GH58410@funkthat.com>

next in thread | previous in thread | raw e-mail | index | archive | help
> So, to do it, you'd need to try to change all the ports mtu, and if
any of them fail, you need to revert all of them back to the original
mtu...

Which is exactly what our code does. :-)

Right now, I only have the change against our older base FreeBSD; I'll
port it to -CURRENT and send out a patch when I have a few minutes
sometime this weekend.

-Ravi

-----Original Message-----
From: John-Mark Gurney <jmg@funkthat.com>
Date: 2015-02-06, Friday at 21:10
To: Ravi Pokala <rpokala@panasas.com>
Cc: "freebsd-hackers@freebsd.org" <freebsd-hackers@freebsd.org>
Subject: Re: Changing the MTU on a lagg device

>Ravi Pokala wrote this message on Sat, Feb 07, 2015 at 02:42 +0000:
>> Hi folks,
>>=20
>> Let's say you have lagg0, consisting of if0 and if1. If you want to
>>change
>> the MTU, you have to remove if0 and if1 from the lagg, change their
>>MTUs,
>> and add them back; that is:
>>=20
>> 1) ifconfig lagg0 -laggport if0
>> 2) ifconfig lagg0 -laggport if1
>> 3) ifconfig if0 mtu 9000
>> 4) ifconfig if1 mtu 9000
>> 5) ifconfig lagg0 laggport if0
>> 6) ifconfig lagg0 laggport if1
>>=20
>> It would be nice if this could be done with a single command:
>>=20
>> 1) ifconfig lagg0 mtu 9000
>>=20
>> Panasas implemented that functionality for our older base FreeBSD, and
>> we're looking to port it forward and push it upstream. However, it looks
>> like someone thought about this case and explicitly decided not to do
>>it;
>> if_lagg.c has:
>>=20
>> 	case SIOCSIFMTU:
>> 		/* Do not allow the MTU to be changed once joined */
>> 		error =3D EINVAL;
>> 		break;
>>=20
>>=20
>> Does anyone know why that is? Would anyone object to a patch that lets
>>you
>> change the MTU on the lagg device, and having the lagg driver change it
>>on
>> all the component interfaces for you?
>
>If could be trying to deal w/ the issue if you ask for 16000 but one
>can do it, but the other can only handle 9000, how do you handle it?
>
>Just for fun, I just tried something similar.. lagg won't allow you
>to add a port that has a different (smaller or bigger) MTU than the
>first one added..
>
>So, to do it, you'd need to try to change all the ports mtu, and if
>any of them fail, you need to revert all of them back to the original
>mtu...
>
>--=20
>  John-Mark Gurney				Voice: +1 415 225 5579
>
>     "All that I will do, has been done, All that I have, has not."




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?D0FADE7D.12C6BE%rpokala>