Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S964839AbcJXScx (ORCPT ); Mon, 24 Oct 2016 14:32:53 -0400 Received: from shards.monkeyblade.net ([184.105.139.130]:38742 "EHLO shards.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S933644AbcJXScw (ORCPT ); Mon, 24 Oct 2016 14:32:52 -0400 Date: Mon, 24 Oct 2016 14:32:49 -0400 (EDT) Message-Id: <20161024.143249.602890744080296174.davem@davemloft.net> To: tushar.n.dave@oracle.com Cc: chris.hyser@oracle.com, sowmini.varadhan@oracle.com, vgupta@synopsys.com, robin.murphy@arm.com, jroedel@suse.de, egtvedt@samfundet.no, krzk@kernel.org, rkuo@codeaurora.org, sparclinux@vger.kernel.org, linux-kernel@vger.kernel.org Subject: Re: [PATCH 1/6] sparc64: Add FORCE_MAX_ZONEORDER and default to 13 From: David Miller In-Reply-To: <149c73af-f3a5-2704-ba73-5e2fbbb4749e@oracle.com> References: <1476123127-24314-2-git-send-email-tushar.n.dave@oracle.com> <20161024.134543.843902561898603557.davem@davemloft.net> <149c73af-f3a5-2704-ba73-5e2fbbb4749e@oracle.com> X-Mailer: Mew version 6.7 on Emacs 24.5 / Mule 6.0 (HANACHIRUSATO) Mime-Version: 1.0 Content-Type: Text/Plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-Greylist: Sender succeeded SMTP AUTH, not delayed by milter-greylist-4.5.12 (shards.monkeyblade.net [149.20.54.216]); Mon, 24 Oct 2016 11:32:51 -0700 (PDT) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 939 Lines: 27 From: tndave Date: Mon, 24 Oct 2016 11:31:14 -0700 > > > On 10/24/2016 10:45 AM, David Miller wrote: >> From: Tushar Dave >> Date: Mon, 10 Oct 2016 11:12:02 -0700 >> >>> From: Dave Kleikamp >>> >>> This change allows ATU (new IOMMU) in SPARC systems to request >>> large (32M) contiguous memory during boot for creating IOTSB backing >>> store. >>> >>> Signed-off-by: Dave Kleikamp >>> Signed-off-by: Tushar Dave >> >> If you need 32MB allocations, wouldn't a max zone order of 12 be >> sufficient? (8K << 12 == 32MB) > Yes, but config FORCE_MAX_ZONEORDER is actually maximum order plus > one. > For example, a value of 13 means that the largest free memory block is > 2^12 pages. For 32MB we need 2^12 8K pages, hence FORCE_MAX_ZONEORDER > must be MAX_ORDER + 1 i.e. 13. Ok, thanks for explaining.