From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-1.4 required=3.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,FSL_HELO_FAKE,MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS, URIBL_BLOCKED autolearn=no autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 45AA3C63697 for ; Tue, 17 Nov 2020 20:42:11 +0000 (UTC) Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by mail.kernel.org (Postfix) with ESMTP id 9184B222E9 for ; Tue, 17 Nov 2020 20:42:10 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=fail reason="signature verification failed" (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="GOEyU+PF" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 9184B222E9 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=kernel.org Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=owner-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix) id A69A76B0036; Tue, 17 Nov 2020 15:42:09 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id A1A166B005C; Tue, 17 Nov 2020 15:42:09 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 908D06B0068; Tue, 17 Nov 2020 15:42:09 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from forelay.hostedemail.com (smtprelay0247.hostedemail.com [216.40.44.247]) by kanga.kvack.org (Postfix) with ESMTP id 5F7236B0036 for ; Tue, 17 Nov 2020 15:42:09 -0500 (EST) Received: from smtpin13.hostedemail.com (10.5.19.251.rfc1918.com [10.5.19.251]) by forelay01.hostedemail.com (Postfix) with ESMTP id 04017180AD804 for ; Tue, 17 Nov 2020 20:42:09 +0000 (UTC) X-FDA: 77495082378.13.tramp17_600e86d27334 Received: from filter.hostedemail.com (10.5.16.251.rfc1918.com [10.5.16.251]) by smtpin13.hostedemail.com (Postfix) with ESMTP id CE21F18140B69 for ; Tue, 17 Nov 2020 20:42:08 +0000 (UTC) X-HE-Tag: tramp17_600e86d27334 X-Filterd-Recvd-Size: 4827 Received: from mail-pg1-f193.google.com (mail-pg1-f193.google.com [209.85.215.193]) by imf29.hostedemail.com (Postfix) with ESMTP for ; Tue, 17 Nov 2020 20:42:08 +0000 (UTC) Received: by mail-pg1-f193.google.com with SMTP id v21so4092587pgi.2 for ; Tue, 17 Nov 2020 12:42:08 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:date:from:to:cc:subject:message-id:references:mime-version :content-disposition:in-reply-to; bh=duT/CyaJ82WSIZu+w/NyT8ZBnm8LYdwKsQ41CeSRpTg=; b=GOEyU+PFgxtJ/JlybIstLKF/zCFvMRj0HJfuZye3TWtFKPRGlcxk3Yyj3mFdDiYHoQ Oxy/iE2KCz1O2vDfls03Z3/4WckMIQuvf0zoiaN2/gsG3IwzzWalP2JCSHjYgtOG/7Tg hHQ5ejLjyxSJyU8R2LXZewWk4YJ0z9lO+94qZetH0mbnI/p/QZWM4vVEnKAqW7UnAvyb n61egTcSufMSGQQ8lQ0ceEIS/CLdxyN69LppoWwz8QqnMz0RIcaXEgV1yjE9uDQNgKGB jMZZ6B3BoyF2O+jpaCeYktquGKpjDTsNlyfYpxu9+S/Skoo2GNFazgNFc4DmGkf9a/bc EMdQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:date:from:to:cc:subject:message-id :references:mime-version:content-disposition:in-reply-to; bh=duT/CyaJ82WSIZu+w/NyT8ZBnm8LYdwKsQ41CeSRpTg=; b=h8kdVJaDoWSGfGrKTsgWh3XjVGIQsgYdkY2sI/GAHvqzT1FKN7yaciHb1QUmES3lfM QF9POldUhIn5n9F+5Yf7YyoZ+m5E73xZzm0g+AMqpc2KxyP4KcfHLOGoIUn+dyJ4PtAF pqs/rZChZ3YDvi9kHfLTdtzEfRKUc3MzjQIyVXWZ45yycMeY4ikSLLkPai5ll30qnCjS uiXJUVAPI+xwGHhKa7SvnDmns7SsY5hKVxvrHikv713uLqq4bSeD/fh8LpPIjve7p1Tc b35h0kTcEuSJVvQrh9h5EGo0FRBHjdVKy7rAqccR27ULD+gwWWUOylFavdxivPTlg1y/ THKg== X-Gm-Message-State: AOAM5308J4uCsiAOvNORvfAA6HpZ+9VdeIpsjDkE1zONPf8r0RX/mJpM j5Oj8sdFIcu11P1GBZSzPwA= X-Google-Smtp-Source: ABdhPJzJc0tbp+bsXkyuSyM2yRe4AH5B0nq/qRb/0+/Ytls8/F4RazcUEeomrq3NRVlKzw6kf6wKMQ== X-Received: by 2002:aa7:8154:0:b029:156:4b89:8072 with SMTP id d20-20020aa781540000b02901564b898072mr1240748pfn.51.1605645727311; Tue, 17 Nov 2020 12:42:07 -0800 (PST) Received: from google.com ([2620:15c:211:201:7220:84ff:fe09:5e58]) by smtp.gmail.com with ESMTPSA id r36sm19659553pgb.75.2020.11.17.12.42.05 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 17 Nov 2020 12:42:06 -0800 (PST) Date: Tue, 17 Nov 2020 12:42:04 -0800 From: Minchan Kim To: Andrew Morton Cc: Vijayanand Jitta , linux-mm , glider@google.com, Dan Williams , broonie@kernel.org, mhiramat@kernel.org, "linux-kernel@vger.kernel.org" , Yogesh Lal , Vinayak Menon Subject: Re: [PATCH] lib: stackdepot: Add support to configure STACK_HASH_SIZE Message-ID: <20201117204204.GA3905260@google.com> References: <1603372546-27118-1-git-send-email-vjitta@codeaurora.org> <282d7028-498d-50b3-37d4-2381571f9f9e@codeaurora.org> <20201112145649.3fcd9dc4d6d3db4bd26245bb@linux-foundation.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20201112145649.3fcd9dc4d6d3db4bd26245bb@linux-foundation.org> X-Bogosity: Ham, tests=bogofilter, spamicity=0.000014, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: On Thu, Nov 12, 2020 at 02:56:49PM -0800, Andrew Morton wrote: > On Thu, 12 Nov 2020 18:26:24 +0530 Vijayanand Jitta wrote: > > > >> 1. page_owner=off, stackdepot_stack_hash=0 -> no more wasted memory > > >> when we don't use page_owner > > >> 2. page_owner=on, stackdepot_stack_hash=8M -> reasonable hash size > > >> when we use page_owner. > > >> > > >> > > > > > > This idea looks fine to me. Andrew and others would like to hear your > > > comments as well on this before implementing. > > > > > > Thanks, > > > Vijay > > > > > > > Awaiting for comments from Andrew and others. > > I don't actually understand the problem. > > What is it about page-owner that causes stackdepot to consume > additional memory? As far as I can tell, sizeof(struct stack_record) > isn't affected by page-owner? > Thing is once we build stackdepot due to the dependency from page_owner, it will consume 8M regardless of using page_owner. #define STACK_HASH_SIZE (1L << CONFIG_STACK_HASH_ORDER_SHIFT) static struct stack_record *stack_table[STACK_HASH_SIZE] = { [0 ... STACK_HASH_SIZE - 1] = NULL }; So if we decide the size option at build time, we should consume the memory anyway regardless of page_owner enabling in runtime.