From owner-svn-src-head@freebsd.org Tue Apr 19 16:05:10 2016 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id DBB08B14156; Tue, 19 Apr 2016 16:05:10 +0000 (UTC) (envelope-from kostikbel@gmail.com) Received: from kib.kiev.ua (kib.kiev.ua [IPv6:2001:470:d5e7:1::1]) (using TLSv1 with cipher DHE-RSA-CAMELLIA256-SHA (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 73B4917D3; Tue, 19 Apr 2016 16:05:10 +0000 (UTC) (envelope-from kostikbel@gmail.com) Received: from tom.home (kostik@localhost [127.0.0.1]) by kib.kiev.ua (8.15.2/8.15.2) with ESMTPS id u3JG506G035260 (version=TLSv1 cipher=DHE-RSA-CAMELLIA256-SHA bits=256 verify=NO); Tue, 19 Apr 2016 19:05:00 +0300 (EEST) (envelope-from kostikbel@gmail.com) DKIM-Filter: OpenDKIM Filter v2.10.3 kib.kiev.ua u3JG506G035260 Received: (from kostik@localhost) by tom.home (8.15.2/8.15.2/Submit) id u3JG50sO035244; Tue, 19 Apr 2016 19:05:00 +0300 (EEST) (envelope-from kostikbel@gmail.com) X-Authentication-Warning: tom.home: kostik set sender to kostikbel@gmail.com using -f Date: Tue, 19 Apr 2016 19:05:00 +0300 From: Konstantin Belousov To: Allan Jude Cc: "src-committers@freebsd.org" , "svn-src-all@freebsd.org" , "svn-src-head@freebsd.org" Subject: Re: svn commit: r298230 - in head: lib/libstand sys/boot/common sys/boot/efi/libefi sys/boot/efi/loader sys/boot/i386/libfirewire sys/boot/i386/libi386 sys/boot/i386/loader sys/boot/mips/beri/loader sy... Message-ID: <20160419160500.GY2422@kib.kiev.ua> References: <201604182309.u3IN9MC6047480@repo.freebsd.org> <57157108.6090500@freebsd.org> <20160419093022.GV2422@kib.kiev.ua> <5716538B.4060108@freebsd.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <5716538B.4060108@freebsd.org> User-Agent: Mutt/1.6.0 (2016-04-01) X-Spam-Status: No, score=-2.0 required=5.0 tests=ALL_TRUSTED,BAYES_00, DKIM_ADSP_CUSTOM_MED,FREEMAIL_FROM,NML_ADSP_CUSTOM_MED autolearn=no autolearn_force=no version=3.4.1 X-Spam-Checker-Version: SpamAssassin 3.4.1 (2015-04-28) on tom.home X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 19 Apr 2016 16:05:11 -0000 On Tue, Apr 19, 2016 at 11:49:31AM -0400, Allan Jude wrote: > On 2016-04-19 05:30, Konstantin Belousov wrote: > > On Mon, Apr 18, 2016 at 07:43:04PM -0400, Allan Jude wrote: > >> On 2016-04-18 19:36, Adrian Chadd wrote: > >>> Someone pointed out how this bloats out memory requirement in loader. > >>> > >>> Did anyone check that? > >>> > >>> -adrian > >>> > >> > >> I tested down to 128mb of ram in QEMU, booted from the installer ISO, > >> did the install, and booted the installed system without issue. > > > > 64MB is^H^H was very much useful and workable i386 config. i386 kernel > > does fit into the 32M but current automatic tuning prevents usermode > > from operating. Little manual tuning make 32M on tolerable. > > > > Making loader require 64M is a regression. At very least, it is > > impossible to test low mem configs anymore. > > > > Would a src.conf knob make sense, to use a smaller value when targeting > small systems, while keeping the advantages when using more reasonable > systems? > > Or we could make these changes to the HEAP and bcache size specific to > 64bit platforms? I do not consider neither the current state, nor the two proposed changes, acceptable. Loader is same on 32 and 64 bit x86 machines, so how would you reconfigure it on 64bit machine ? Non-default knob is too obscure and hard to communicate, people would try to use 32M and see that it breaks, just abandoning the idea of trying. Either default-built loader should size itself dynamically based on the available memory, perhaps capping heap at 64MB starting from the 128MB configs, or, assuming that we consider 32MB be the absolute minimal workable config, loader could set HEAP to 8MB. Dynamic heap size is theoretically best, but it might be hard to do if memory map is retrieved after heap is configured (I do not know).