From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1757664AbcBCQHN (ORCPT ); Wed, 3 Feb 2016 11:07:13 -0500 Received: from mail-pa0-f52.google.com ([209.85.220.52]:34383 "EHLO mail-pa0-f52.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1757160AbcBCQHL (ORCPT ); Wed, 3 Feb 2016 11:07:11 -0500 Message-ID: <1454515628.7627.245.camel@edumazet-glaptop2.roam.corp.google.com> Subject: Re: [PATCH v3] net:Add sysctl_max_skb_frags From: Eric Dumazet To: Alexander Duyck Cc: Hans Westgaard Ry , "David S. Miller" , Alexey Kuznetsov , James Morris , Hideaki YOSHIFUJI , Patrick McHardy , Tom Herbert , Pablo Neira Ayuso , Eric Dumazet , Florian Westphal , Jiri Pirko , Alexander Duyck , Michal Hocko , Linus =?ISO-8859-1?Q?L=FCssing?= , Hannes Frederic Sowa , Herbert Xu , Tejun Heo , Andrew Morton , Alexey Kodanev , =?ISO-8859-1?Q?H=E5kon?= Bugge , open list , "open list:NETWORKING [GENERAL]" Date: Wed, 03 Feb 2016 08:07:08 -0800 In-Reply-To: References: <568F87AC.60405@oracle.com> <1454488017-8822-1-git-send-email-hans.westgaard.ry@oracle.com> Content-Type: text/plain; charset="UTF-8" X-Mailer: Evolution 3.10.4-0ubuntu2 Mime-Version: 1.0 Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Wed, 2016-02-03 at 07:58 -0800, Alexander Duyck wrote: > > +++ b/net/core/sysctl_net_core.c > > I really don't think these changes belong in the core. Below you only > modify the TCP code path so this more likely belongs in the TCP path > unless you are going to guarantee that all other code paths obey the > sysctl. It probably belongs in net/ipv4/sysctl_net_ipv4.c Alexander, this is a v3. We rejected prior attempts doing exactly what you suggest. Think about GRO : These people also need to use the same sysctl in GRO to limit number of frags. Limiting the stuff at the egress is useless in forwarding setups. It will be too late as they'll need to linearize -> huge performance drop. This is why we wanted a global setup so that these guys can tweak the default limit. Please read netdev history about this stuff. Plan of action : 1) This patch, adding a core sysctl. 2) Use it in TCP (already done in this patch) 3) Use it in GRO From mboxrd@z Thu Jan 1 00:00:00 1970 From: Eric Dumazet Subject: Re: [PATCH v3] net:Add sysctl_max_skb_frags Date: Wed, 03 Feb 2016 08:07:08 -0800 Message-ID: <1454515628.7627.245.camel@edumazet-glaptop2.roam.corp.google.com> References: <568F87AC.60405@oracle.com> <1454488017-8822-1-git-send-email-hans.westgaard.ry@oracle.com> Mime-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 7bit Cc: Hans Westgaard Ry , "David S. Miller" , Alexey Kuznetsov , James Morris , Hideaki YOSHIFUJI , Patrick McHardy , Tom Herbert , Pablo Neira Ayuso , Eric Dumazet , Florian Westphal , Jiri Pirko , Alexander Duyck , Michal Hocko , Linus =?ISO-8859-1?Q?L=FCssing?= , Hannes Frederic Sowa , Herbert Xu , Tejun Heo , Andrew Morton , Alexey Kodanev , =?ISO-8859-1?Q?H=E5kon?= Bugge , open list , "open To: Alexander Duyck Return-path: In-Reply-To: Sender: linux-kernel-owner@vger.kernel.org List-Id: netdev.vger.kernel.org On Wed, 2016-02-03 at 07:58 -0800, Alexander Duyck wrote: > > +++ b/net/core/sysctl_net_core.c > > I really don't think these changes belong in the core. Below you only > modify the TCP code path so this more likely belongs in the TCP path > unless you are going to guarantee that all other code paths obey the > sysctl. It probably belongs in net/ipv4/sysctl_net_ipv4.c Alexander, this is a v3. We rejected prior attempts doing exactly what you suggest. Think about GRO : These people also need to use the same sysctl in GRO to limit number of frags. Limiting the stuff at the egress is useless in forwarding setups. It will be too late as they'll need to linearize -> huge performance drop. This is why we wanted a global setup so that these guys can tweak the default limit. Please read netdev history about this stuff. Plan of action : 1) This patch, adding a core sysctl. 2) Use it in TCP (already done in this patch) 3) Use it in GRO