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=-17.4 required=3.0 tests=BAYES_00,DKIMWL_WL_MED, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS, INCLUDES_PATCH,MAILING_LIST_MULTI,SIGNED_OFF_BY,SPF_HELO_NONE,SPF_PASS, URIBL_BLOCKED,USER_IN_DEF_DKIM_WL 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 58632C433E1 for ; Thu, 27 Aug 2020 01:19:54 +0000 (UTC) Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by mail.kernel.org (Postfix) with ESMTP id E3B9C2075B for ; Thu, 27 Aug 2020 01:19:53 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (2048-bit key) header.d=google.com header.i=@google.com header.b="VZVi7M5H" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org E3B9C2075B Authentication-Results: mail.kernel.org; dmarc=fail (p=reject dis=none) header.from=google.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=owner-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix) id 5113B6B0002; Wed, 26 Aug 2020 21:19:53 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 4C16B6B0003; Wed, 26 Aug 2020 21:19:53 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 3D7EC6B0006; Wed, 26 Aug 2020 21:19:53 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from forelay.hostedemail.com (smtprelay0148.hostedemail.com [216.40.44.148]) by kanga.kvack.org (Postfix) with ESMTP id 28FE36B0002 for ; Wed, 26 Aug 2020 21:19:53 -0400 (EDT) Received: from smtpin12.hostedemail.com (10.5.19.251.rfc1918.com [10.5.19.251]) by forelay01.hostedemail.com (Postfix) with ESMTP id DE8FE180AD806 for ; Thu, 27 Aug 2020 01:19:52 +0000 (UTC) X-FDA: 77194591824.12.smoke01_5208cec27069 Received: from filter.hostedemail.com (10.5.16.251.rfc1918.com [10.5.16.251]) by smtpin12.hostedemail.com (Postfix) with ESMTP id AC7E01801C9B8 for ; Thu, 27 Aug 2020 01:19:52 +0000 (UTC) X-HE-Tag: smoke01_5208cec27069 X-Filterd-Recvd-Size: 4694 Received: from mail-lf1-f67.google.com (mail-lf1-f67.google.com [209.85.167.67]) by imf06.hostedemail.com (Postfix) with ESMTP for ; Thu, 27 Aug 2020 01:19:52 +0000 (UTC) Received: by mail-lf1-f67.google.com with SMTP id v12so2001652lfo.13 for ; Wed, 26 Aug 2020 18:19:52 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=qr1VNGCaHREOJfJgh+HpFtWG4t0r62i9OyPJ4zGslYU=; b=VZVi7M5HZVbCPyzNn3OhWj/JnfoXRrXJmUVOV9saZPvSfGl9kPM21pf3WZYr+uxDAG YOK8e1zHxuHOOPMCFszQuSvkROJHazjQ2GY//CVZQqAyTdQepc3bGPgrLIkA0lNhd3fB wTjoBLRxzFX8HE737dC2R2Ln+pUNZfIa3CNuRgMsx+6UmAqbUexVwi8ACRSe1G7/N1oO D0aHwVyMSKPCGjao7JOTNQkKJ7K/kKJeWTCuhL5lLVJm4EX7H+hItH9woFIezVhMEgO5 NC86WhczxtxhAH0KAVkzJfnV3+m3DMG9YXCw47THnPqHeHa8FJXm9XXd2Whby9hjR61p hx5w== 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=qr1VNGCaHREOJfJgh+HpFtWG4t0r62i9OyPJ4zGslYU=; b=Xgh3uzRbgYVx/9NGpAMXAx9AB2syTOlLAUYUpm0nHoQkfAXoHyAGi7u03FKKPbKgZj Ji5S95RLseAe0cUi6n38GwWX3z/YLsO/+5/9gBxfxtTRNry9T5K5dcrQlCiUH+NkBrML TWlktBfrimmueZ852E9/d1ILSwh5AqEy02Y9fFBtr+DMulFQY6wDznlYRUi94d67dtcD k51bu62SXE37VlrO1EPRdNToqM7pJBnYtjn2LLZIcKe+nevMxbok4A2DRZI5amYp7KLH d8x7PHKwsRs0s0RMVcCkm1z4Jw1Rfc5sCwGNUbfJqlmXAy03fv7KGQIQQJRwugyxBRDb BxUQ== X-Gm-Message-State: AOAM533FGwPw1dDtDk1H3/TSSNMcgIvJzhsK2KswUsjTgCn5zhZEh3i1 qkINy+Ap1Tn6MTOXTu2+dwyCQnoeDCLtjWLVuFERQQ== X-Google-Smtp-Source: ABdhPJxVpL2PQx+AgSySngZI+BlVg6NFrXTzDO1PwtIfv6Pv3OB5iSbleqV1dzuEG1n5MNZRvyfIOcLrwDdpBo0+1t8= X-Received: by 2002:a19:4853:: with SMTP id v80mr4964941lfa.125.1598491190269; Wed, 26 Aug 2020 18:19:50 -0700 (PDT) MIME-Version: 1.0 References: <20200821150134.2581465-1-guro@fb.com> <20200821150134.2581465-5-guro@fb.com> In-Reply-To: <20200821150134.2581465-5-guro@fb.com> From: Shakeel Butt Date: Wed, 26 Aug 2020 18:19:39 -0700 Message-ID: Subject: Re: [PATCH bpf-next v4 04/30] bpf: refine memcg-based memory accounting for arraymap maps To: Roman Gushchin Cc: bpf@vger.kernel.org, netdev , Alexei Starovoitov , Daniel Borkmann , Kernel Team , LKML , Johannes Weiner , Linux MM , Song Liu Content-Type: text/plain; charset="UTF-8" X-Rspamd-Queue-Id: AC7E01801C9B8 X-Spamd-Result: default: False [0.00 / 100.00] X-Rspamd-Server: rspam01 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 Fri, Aug 21, 2020 at 8:11 AM Roman Gushchin wrote: > > Include percpu arrays and auxiliary data into the memcg-based memory > accounting. > > Signed-off-by: Roman Gushchin > Acked-by: Song Liu > --- > kernel/bpf/arraymap.c | 6 +++--- > 1 file changed, 3 insertions(+), 3 deletions(-) > > diff --git a/kernel/bpf/arraymap.c b/kernel/bpf/arraymap.c > index 8ff419b632a6..9597fecff8da 100644 > --- a/kernel/bpf/arraymap.c > +++ b/kernel/bpf/arraymap.c > @@ -28,12 +28,12 @@ static void bpf_array_free_percpu(struct bpf_array *array) > > static int bpf_array_alloc_percpu(struct bpf_array *array) > { > + const gfp_t gfp = GFP_USER | __GFP_NOWARN | __GFP_ACCOUNT; > void __percpu *ptr; > int i; > > for (i = 0; i < array->map.max_entries; i++) { > - ptr = __alloc_percpu_gfp(array->elem_size, 8, > - GFP_USER | __GFP_NOWARN); > + ptr = __alloc_percpu_gfp(array->elem_size, 8, gfp); > if (!ptr) { > bpf_array_free_percpu(array); > return -ENOMEM; > @@ -969,7 +969,7 @@ static struct bpf_map *prog_array_map_alloc(union bpf_attr *attr) > struct bpf_array_aux *aux; > struct bpf_map *map; > > - aux = kzalloc(sizeof(*aux), GFP_KERNEL); > + aux = kzalloc(sizeof(*aux), GFP_KERNEL_ACCOUNT); > if (!aux) > return ERR_PTR(-ENOMEM); > There are a couple other allocations in the file. Can you please comment why those are fine without __GFP_ACCOUNT flag. One seems to be iterator allocation which should be temporary and fine without __GFP_ACCOUNT but what about the ones in prog_array_map_poke_track() and bpf_event_entry_gen()?