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=-10.1 required=3.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,INCLUDES_PATCH,MAILING_LIST_MULTI, SIGNED_OFF_BY,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED autolearn=ham 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 2F51EC388F9 for ; Wed, 11 Nov 2020 12:28:52 +0000 (UTC) Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by mail.kernel.org (Postfix) with ESMTP id 8A15220795 for ; Wed, 11 Nov 2020 12:28:51 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (1024-bit key) header.d=kernel.org header.i=@kernel.org header.b="Cj03sCpQ" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 8A15220795 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 B49966B0068; Wed, 11 Nov 2020 07:28:50 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id AF9E66B006C; Wed, 11 Nov 2020 07:28:50 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id A37046B006E; Wed, 11 Nov 2020 07:28:50 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from forelay.hostedemail.com (smtprelay0173.hostedemail.com [216.40.44.173]) by kanga.kvack.org (Postfix) with ESMTP id 769896B0068 for ; Wed, 11 Nov 2020 07:28:50 -0500 (EST) Received: from smtpin18.hostedemail.com (10.5.19.251.rfc1918.com [10.5.19.251]) by forelay03.hostedemail.com (Postfix) with ESMTP id 198A08249980 for ; Wed, 11 Nov 2020 12:28:50 +0000 (UTC) X-FDA: 77472066420.18.bun66_300f05e272fd Received: from filter.hostedemail.com (10.5.16.251.rfc1918.com [10.5.16.251]) by smtpin18.hostedemail.com (Postfix) with ESMTP id F317F100ED3C7 for ; Wed, 11 Nov 2020 12:28:49 +0000 (UTC) X-HE-Tag: bun66_300f05e272fd X-Filterd-Recvd-Size: 4543 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by imf17.hostedemail.com (Postfix) with ESMTP for ; Wed, 11 Nov 2020 12:28:49 +0000 (UTC) Received: from kernel.org (unknown [77.125.7.142]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id EF594206FB; Wed, 11 Nov 2020 12:28:46 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1605097728; bh=Td5h8enpgkfxgm0r58/VFjK6bCJciI592MW/LhEpoIk=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=Cj03sCpQW+NAidaYgZM3tZ08nNuIG8IsLQsBMUclPb4vlfHyToXHorzJ620C9f5rz zQYBE+qhuZUkFLvJQ0C7iVTSsDUmPo6KGPKVSxnRSn9NoHCYeKoxfTHY13FpUWmxiL n5i3/thOPLAU12gGZ5rlCNXbn2cm2uvks36PAT6E= Date: Wed, 11 Nov 2020 14:28:43 +0200 From: Mike Rapoport To: Faiyaz Mohammed Cc: linux-mm@kvack.org, linux-kernel@vger.kernel.org, vinmenon@codeaurora.org Subject: Re: [PATCH] mm: memblock: add more debug logs Message-ID: <20201111122843.GH4758@kernel.org> References: <1605010798-17545-1-git-send-email-faiyazm@codeaurora.org> <20201110181605.GC4758@kernel.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: On Wed, Nov 11, 2020 at 01:30:40PM +0530, Faiyaz Mohammed wrote: > > On 11/10/2020 11:46 PM, Mike Rapoport wrote: > > Hi, > > > > On Tue, Nov 10, 2020 at 05:49:58PM +0530, Faiyaz Mohammed wrote: > > > Exact caller of memblock_phys_alloc_range is not available with > > > "memblock=debug". Below information is not enough for memory accounting. > > > for example: > > > [ 0.000000] memblock_reserve: [0x000000023fc6b000-0x000000023fc6bfff] memblock_alloc_range_nid+0xc0/0x188 > > > > > > To enhance the memblock_dbg information or to get the exact owner of the > > > memblock_reserve, add debug logs in memblock_phys_alloc_range function. > > Why would you want to use memblock=debug for memory accounting or for > > tracking of the owners of the reserved memory? > We do memblock reserved accounting to track owners to know size of memory > allocated by different drivers/owners through memblock_reserve, which help > in comparing different kernel version and in optimizations. I'd suggest to update the commit messaget to somthing like: It is usefull to know the exact caller of memblock_phys_alloc_range() to track early memory reservations during developement. Currently, when memblock debugging is enabled, the allocations done with memblock_phys_alloc_range() are only reported at memblock_reserve(): [ 0.000000] memblock_reserve: [0x000000023fc6b000-0x000000023fc6bfff] memblock_alloc_range_nid+0xc0/0x188 Add memblock_dbg() to memblock_phys_alloc_range() to get details about its usage. For example: [ 0.000000] memblock_phys_alloc_range: 4096 bytes align=0x1000 from=0x0000000000000000 max_addr=0x0000000000000000 early_pgtable_alloc+0x24/0x178 [ 0.000000] memblock_reserve: [0x000000023fc6b000-0x000000023fc6bfff] memblock_alloc_range_nid+0xc0/0x188 > > > After adding logs: > > > [ 0.000000] memblock_phys_alloc_range: 4096 bytes align=0x1000 from=0x0000000000000000 max_addr=0x0000000000000000 early_pgtable_alloc+0x24/0x178 > > > [ 0.000000] memblock_reserve: [0x000000023fc6b000-0x000000023fc6bfff] memblock_alloc_range_nid+0xc0/0x188 > > > > > > Signed-off-by: Faiyaz Mohammed > > > --- > > > mm/memblock.c | 3 +++ > > > 1 file changed, 3 insertions(+) > > > > > > diff --git a/mm/memblock.c b/mm/memblock.c > > > index 049df41..f65af9f 100644 > > > --- a/mm/memblock.c > > > +++ b/mm/memblock.c > > > @@ -1419,6 +1419,9 @@ phys_addr_t __init memblock_phys_alloc_range(phys_addr_t size, > > > phys_addr_t start, > > > phys_addr_t end) > > > { > > > + memblock_dbg("%s: %llu bytes align=0x%llx from=%pa max_addr=%pa %pS\n", > > > + __func__, (u64)size, (u64)align, &start, &end, > > > + (void *)_RET_IP_); > > > return memblock_alloc_range_nid(size, align, start, end, NUMA_NO_NODE, > > > false); > > > } > > > -- > > > QUALCOMM INDIA, on behalf of Qualcomm Innovation Center, Inc. is a > > > member of the Code Aurora Forum, hosted by The Linux Foundation > > > -- Sincerely yours, Mike.