From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753531AbbDATdI (ORCPT ); Wed, 1 Apr 2015 15:33:08 -0400 Received: from out5-smtp.messagingengine.com ([66.111.4.29]:50144 "EHLO out5-smtp.messagingengine.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753005AbbDATdE convert rfc822-to-8bit (ORCPT ); Wed, 1 Apr 2015 15:33:04 -0400 X-Greylist: delayed 336 seconds by postgrey-1.27 at vger.kernel.org; Wed, 01 Apr 2015 15:33:04 EDT Message-Id: <1427916447.1816412.248215129.072B6ABF@webmail.messagingengine.com> X-Sasl-Enc: uUa+U0CK/aUC59lXybB4jbZS82AldpsFlzXyqTHcbDpE 1427916447 From: Hannes Frederic Sowa To: David Miller , klamm@yandex-team.ru Cc: netdev@vger.kernel.org, linux-kernel@vger.kernel.org MIME-Version: 1.0 Content-Transfer-Encoding: 8BIT Content-Type: text/plain; charset="UTF-8" X-Mailer: MessagingEngine.com Webmail Interface - ajax-0b3c2300 Subject: Re: [PATCH v3] net: sysctl for RA default route MTU Date: Wed, 01 Apr 2015 21:27:27 +0200 In-Reply-To: <20150401.135532.1368728758929086692.davem@davemloft.net> References: <1427834148.979686.247747037.29964C1B@webmail.messagingengine.com> <20150331.164923.229749666073516444.davem@davemloft.net> <68621427882330@webcorp01g.yandex-team.ru> <20150401.135532.1368728758929086692.davem@davemloft.net> Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Wed, Apr 1, 2015, at 19:55, David Miller wrote: > From: Roman Gushchin > Date: Wed, 01 Apr 2015 12:58:50 +0300 > > > 31.03.2015, 23:49, "David Miller" : > >> From: Hannes Frederic Sowa > >> Date: Tue, 31 Mar 2015 22:35:48 +0200 > >>>  Could you quickly comment on what you had in mind? I guess it is about > >>>  handling RA in user space on the end hosts and overwriting MTU during > >>>  insertion of the routes? > >> > >> Even after reading your email I have no idea why you can't just have > >> RA provide a 1500 byte MTU, everything else uses the device's 9000 > >> MTU, problem solved? > > > > Because the MTU (provided by RA) is assigned to the device. > > Ok, that severely limits the usefulness of this option I guess. > > The next question I have is about the behavior of the new setting > in the presence of an RA MTU option. It seems like the sysctl > doesn't override that RA MTU option, but rather just clamps it. > > And then if it's in range, this controls only whether the default > route has it's MTU adjusted. > > That doesn't make any sense to me if we then go and do the > rt6_mtu_change() call unconditionally. The route metric update > and the rt6_mtu_change() go hand in hand. Agreed but that gets interesting: I guess during testing the cnf.mtu6 value was equal to the newly announced mtu value, so the rt6_mtu_change call does not happen. We update cnf.mtu6 so a second RA packet would actually bring the system into the desired state but we have a moment where the default route carries a too big MTU. That's not good. Easiest solution is to reorder those calls but that also leaves us with a time frame where we carry the incorrect MTU on the default route. Otherwise we must conditionally filter out the default routes. Roman, any ideas? Thanks, Hannes