Received: by 2002:a05:6a10:a841:0:0:0:0 with SMTP id d1csp5058751pxy; Tue, 27 Apr 2021 20:06:40 -0700 (PDT) X-Google-Smtp-Source: ABdhPJy5IK8mFxs+lY84/o8Ixie75lpZxnrn+oBwN9Z3+z4/bThs3jAi5ala3DWAH9P8uA8U2HPU X-Received: by 2002:a62:6481:0:b029:249:ecee:a05d with SMTP id y123-20020a6264810000b0290249eceea05dmr25949276pfb.9.1619579200331; Tue, 27 Apr 2021 20:06:40 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1619579200; cv=none; d=google.com; s=arc-20160816; b=OTVfoMUvRwddRFT0lRADFeUVpDK6ELXvZU+04+rWe+AgeemSCkwhsZsDSFwsWx02p7 8QmwIN5HDg2e2iIYnfBBNJbHN4iUfC214CGNDN0iLP1Em3yrhYZVeAMX6uvlZm3U3NTT E9siGmSFjGDOOYUJkzg7GFQVY5hkh0QDeQlN+JSunf5srhE5xYjG+jihu6tW1TElEGnE /VPfHnwuDXa5XpI163KiHYUBLfRzWsT/C/a4yoN2EMHqPlhHxFN8QA6vW3vRvzCuZ/Zb BKFs7gFB8yRqopQc7A8kChf5bFacU1iwji56WNCycdL5NM9QXs4uqJQUfY/JQPbP7UVx 9jLg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:cc:to:subject:message-id:date:from:in-reply-to :references:mime-version:dkim-signature; bh=V7mo3cbfs0/nbqRuNxTuOd0tFgN99mJ+mVJmHvq4QgM=; b=YBwRMy8qddVHcCs1RTcQSpdTqiPlnOCFQTzfsZtDvkQyRGxHX4GuCpA7ao42/Z9USy uN3O4MkBv1IMHwJgqsZNsei+CVNMevbIB0wAz2cKl6bhijpDprrFQVsushUfO/bg4t59 oOaLCNl9IgVNNtaDTiBBFODeyPeVlEIhdYCH1OI2oxK4SflDpPGxKHl27qkX02Zq5Z4h N2FsQr+zq6lY15MyLNkx0SxepO+osVOrMD1CczAVkRtxk87tZibsYar+2dIQcif6MOPU biBswHHDg+ux7TOWtUw/dRX4NM1EzKEbSU6YBI7Wdd0gPl0HkkAf0OSKWtU5YH+tTOzw xoOA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=IsoWwKy0; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id lb5si6004930pjb.160.2021.04.27.20.06.27; Tue, 27 Apr 2021 20:06:40 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=IsoWwKy0; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S234429AbhD1DGg (ORCPT + 99 others); Tue, 27 Apr 2021 23:06:36 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:51926 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230285AbhD1DGg (ORCPT ); Tue, 27 Apr 2021 23:06:36 -0400 Received: from mail-lj1-x232.google.com (mail-lj1-x232.google.com [IPv6:2a00:1450:4864:20::232]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 02584C061574 for ; Tue, 27 Apr 2021 20:05:51 -0700 (PDT) Received: by mail-lj1-x232.google.com with SMTP id m7so59723624ljp.10 for ; Tue, 27 Apr 2021 20:05:51 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=V7mo3cbfs0/nbqRuNxTuOd0tFgN99mJ+mVJmHvq4QgM=; b=IsoWwKy04IZcM7ZiXZK2wMxIKKYXWODj2QfPfFJ6H++i11iyqoBTUOAK5MdZkp7XT0 4p6t6XMWmccCi8/kqiLQiqXnj5mLXSfmvrwivJ51WaeW7JZxH8xgWCHsuyZxZRe+EAym dhqWRJPfpgXOAS0cEuXZaNXRHze2NAOgKN3zFKmAK78GAeYXlKgOQPCLJs/em5OGyPbX Okjs9muuYzsGLd+1SHyRtK3KXhUwmdokP/lZiFOJ6Z69laZh0sq+xpaFnxHzwyNXHajv J1vrWHhd3WufsTOcGssFQft0KoE9bgzO3iZw48isweiHUOwHdvBhQaaLhXmRtcMJcyOZ upeg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=V7mo3cbfs0/nbqRuNxTuOd0tFgN99mJ+mVJmHvq4QgM=; b=N8ufTJIuo47qKN6GNiX4/Rn73EUS4Ji2DwxBnIC52TZMhKJzj5NDMraBAZTZx5jaAY SJRPBKmWZAWOCQoFoHmPe8MkS8VRX7bFnEhRciH93zxclsv8hwt1nYxm64O/v/BDRr8P BSTV6nRUe75gPryLQf3qhqLkr6iPs175sMQMTjWH97O8pfuqazT4PfiCzReMgLJU6MNG fr6ylysRVt/VE5ZFITCt3kzOx8kiprkOBwh5njcQH0rXf90EbMfhYjzBbx5RX/ZwlB7J dhEmsKboD3ac2x6lGPP/r6YIBFHyiTk+2Gtr0UezTxxotuq3nj4KUjob0KXTh13irE07 vsZw== X-Gm-Message-State: AOAM531/0rzU7wbXOxOR8Qbx20X1y0aI/NZk9+gSVjsCZOFfTkx00ruf HnEWifPjVAVMqVIZDxwOKAHXHfvRwqm1hXP12Zc= X-Received: by 2002:a2e:bb8f:: with SMTP id y15mr19085886lje.86.1619579144266; Tue, 27 Apr 2021 20:05:44 -0700 (PDT) MIME-Version: 1.0 References: <1619491400-1904-1-git-send-email-sxwjean@me.com> <20210427025358.GV235567@casper.infradead.org> <20210427033632.GW235567@casper.infradead.org> <20210427112527.GX235567@casper.infradead.org> In-Reply-To: <20210427112527.GX235567@casper.infradead.org> From: Xiongwei Song Date: Wed, 28 Apr 2021 11:05:18 +0800 Message-ID: Subject: Re: [PATCH] mm: append __GFP_COMP flag for trace_malloc To: Matthew Wilcox Cc: Xiongwei Song , cl@linux.com, penberg@kernel.org, rientjes@google.com, iamjoonsoo.kim@lge.com, akpm@linux-foundation.org, vbabka@suse.cz, linux-mm@kvack.org, Linux Kernel Mailing List Content-Type: text/plain; charset="UTF-8" Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Tue, Apr 27, 2021 at 7:26 PM Matthew Wilcox wrote: > > On Tue, Apr 27, 2021 at 01:30:48PM +0800, Xiongwei Song wrote: > > Hi Mattew, > > > > One more thing I should explain, the kmalloc_order() appends the > > __GFP_COMP flags, > > not by the caller. > > > > void *kmalloc_order(size_t size, gfp_t flags, unsigned int order) > > { > > ........................................................... > > > > flags |= __GFP_COMP; > > page = alloc_pages(flags, order); > > ........................................................... > > return ret; > > } > > EXPORT_SYMBOL(kmalloc_order); > > > > #ifdef CONFIG_TRACING > > void *kmalloc_order_trace(size_t size, gfp_t flags, unsigned int order) > > { > > void *ret = kmalloc_order(size, flags, order); > > trace_kmalloc(_RET_IP_, ret, size, PAGE_SIZE << order, flags); > > return ret; > > } > > EXPORT_SYMBOL(kmalloc_order_trace); > > #endif > > Yes, I understood that. What I don't understand is why appending the > __GFP_COMP to the trace would have been less confusing for you. > > Suppose I have some code which calls: > > kmalloc(10 * 1024, GFP_ATOMIC|__GFP_NOWARN|__GFP_NOMEMALLOC); > > and I see in my logs > > 0.08% call_site=ffffffff851d0cb0 ptr=0xffff8c04a4ca0000 bytes_req=10176 bytes_alloc=16384 gfp_flags=GFP_ATOMIC|__GFP_NOWARN|__GFP_NOMEMALLOC|__GFP_COMP > > That seems to me _more_ confusing because I would wonder "Where did that > __GFP_COMP come from?" Thank you for the comments. But I disagree. When I use trace, I hope I can get the precise data rather than something changed that I don't know , then I can get the correct conclusion or direction on my issue. Here my question is what the trace events are for if they don't provide the real situation? I think that's not graceful and friendly. From my perspective, it'd be better to know my flags changed before checking code lines one by one. In other words, I need a warning to reminder me on this, then I can know quickly my process might do some incorrect things. Regards, Xiongwei