From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752576AbcEMIow (ORCPT ); Fri, 13 May 2016 04:44:52 -0400 Received: from smtp2-g21.free.fr ([212.27.42.2]:62269 "EHLO smtp2-g21.free.fr" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751739AbcEMIor (ORCPT ); Fri, 13 May 2016 04:44:47 -0400 Subject: Re: [PATCH] mm: add config option to select the initial overcommit mode To: Michal Hocko , Sebastian Frias Cc: linux-mm@kvack.org, Andrew Morton , Linus Torvalds , LKML References: <5731CC6E.3080807@laposte.net> <20160513080458.GF20141@dhcp22.suse.cz> From: Mason Message-ID: <573593EE.6010502@free.fr> Date: Fri, 13 May 2016 10:44:30 +0200 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:42.0) Gecko/20100101 Firefox/42.0 SeaMonkey/2.39 MIME-Version: 1.0 In-Reply-To: <20160513080458.GF20141@dhcp22.suse.cz> Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 13/05/2016 10:04, Michal Hocko wrote: > On Tue 10-05-16 13:56:30, Sebastian Frias wrote: > [...] >> NOTE: I understand that the overcommit mode can be changed dynamically thru >> sysctl, but on embedded systems, where we know in advance that overcommit >> will be disabled, there's no reason to postpone such setting. > > To be honest I am not particularly happy about yet another config > option. At least not without a strong reason (the one above doesn't > sound that way). The config space is really large already. > So why a later initialization matters at all? Early userspace shouldn't > consume too much address space to blow up later, no? One thing I'm not quite clear on is: why was the default set to over-commit on? I suppose the biggest use-case is when a "large" process forks only to exec microseconds later into a "small" process, it would be silly to refuse that fork. But isn't that what the COW optimization addresses, without the need for over-commit? Another issue with overcommit=on is that some programmers seem to take for granted that "allocations will never fail" and so neglect to handle malloc == NULL conditions gracefully. I tried to run LTP with overcommit off, and I vaguely recall that I had more failures than with overcommit on. (Perhaps only those tests that tickle the dreaded OOM assassin.) Regards.