All of lore.kernel.org
 help / color / mirror / Atom feed
From: Roman Gushchin <guro@fb.com>
To: <bpf@vger.kernel.org>
Cc: <ast@kernel.org>, <daniel@iogearbox.net>,
	<netdev@vger.kernel.org>, <andrii@kernel.org>,
	<akpm@linux-foundation.org>, <linux-mm@kvack.org>,
	<linux-kernel@vger.kernel.org>, <kernel-team@fb.com>
Subject: [PATCH bpf-next v9 24/34] bpf: eliminate rlimit-based memory accounting for lpm_trie maps
Date: Tue, 1 Dec 2020 13:58:50 -0800	[thread overview]
Message-ID: <20201201215900.3569844-25-guro@fb.com> (raw)
In-Reply-To: <20201201215900.3569844-1-guro@fb.com>

Do not use rlimit-based memory accounting for lpm_trie maps.
It has been replaced with the memcg-based memory accounting.

Signed-off-by: Roman Gushchin <guro@fb.com>
Acked-by: Song Liu <songliubraving@fb.com>
---
 kernel/bpf/lpm_trie.c | 13 -------------
 1 file changed, 13 deletions(-)

diff --git a/kernel/bpf/lpm_trie.c b/kernel/bpf/lpm_trie.c
index 1a6981203d7f..cec792a17e5f 100644
--- a/kernel/bpf/lpm_trie.c
+++ b/kernel/bpf/lpm_trie.c
@@ -540,8 +540,6 @@ static int trie_delete_elem(struct bpf_map *map, void *_key)
 static struct bpf_map *trie_alloc(union bpf_attr *attr)
 {
 	struct lpm_trie *trie;
-	u64 cost = sizeof(*trie), cost_per_node;
-	int ret;
 
 	if (!bpf_capable())
 		return ERR_PTR(-EPERM);
@@ -567,20 +565,9 @@ static struct bpf_map *trie_alloc(union bpf_attr *attr)
 			  offsetof(struct bpf_lpm_trie_key, data);
 	trie->max_prefixlen = trie->data_size * 8;
 
-	cost_per_node = sizeof(struct lpm_trie_node) +
-			attr->value_size + trie->data_size;
-	cost += (u64) attr->max_entries * cost_per_node;
-
-	ret = bpf_map_charge_init(&trie->map.memory, cost);
-	if (ret)
-		goto out_err;
-
 	spin_lock_init(&trie->lock);
 
 	return &trie->map;
-out_err:
-	kfree(trie);
-	return ERR_PTR(ret);
 }
 
 static void trie_free(struct bpf_map *map)
-- 
2.26.2


  parent reply	other threads:[~2020-12-01 22:00 UTC|newest]

Thread overview: 42+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-12-01 21:58 [PATCH bpf-next v9 00/34] bpf: switch to memcg-based memory accounting Roman Gushchin
2020-12-01 21:58 ` [PATCH bpf-next v9 01/34] mm: memcontrol: use helpers to read page's memcg data Roman Gushchin
2020-12-01 21:58 ` [PATCH bpf-next v9 02/34] mm: memcontrol/slab: use helpers to access slab page's memcg_data Roman Gushchin
2020-12-01 21:58 ` [PATCH bpf-next v9 03/34] mm: introduce page memcg flags Roman Gushchin
2020-12-01 21:58 ` [PATCH bpf-next v9 04/34] mm: convert page kmemcg type to a page memcg flag Roman Gushchin
2020-12-01 21:58 ` [PATCH bpf-next v9 05/34] bpf: memcg-based memory accounting for bpf progs Roman Gushchin
2020-12-01 21:58 ` [PATCH bpf-next v9 06/34] bpf: prepare for memcg-based memory accounting for bpf maps Roman Gushchin
2020-12-01 21:58 ` [PATCH bpf-next v9 07/34] bpf: " Roman Gushchin
2020-12-01 21:58 ` [PATCH bpf-next v9 08/34] bpf: refine memcg-based memory accounting for arraymap maps Roman Gushchin
2020-12-01 21:58 ` [PATCH bpf-next v9 09/34] bpf: refine memcg-based memory accounting for cpumap maps Roman Gushchin
2020-12-01 21:58 ` [PATCH bpf-next v9 10/34] bpf: memcg-based memory accounting for cgroup storage maps Roman Gushchin
2020-12-01 21:58 ` [PATCH bpf-next v9 11/34] bpf: refine memcg-based memory accounting for devmap maps Roman Gushchin
2020-12-01 21:58 ` [PATCH bpf-next v9 12/34] bpf: refine memcg-based memory accounting for hashtab maps Roman Gushchin
2020-12-01 21:58 ` [PATCH bpf-next v9 13/34] bpf: memcg-based memory accounting for lpm_trie maps Roman Gushchin
2020-12-01 21:58 ` [PATCH bpf-next v9 14/34] bpf: memcg-based memory accounting for bpf ringbuffer Roman Gushchin
2020-12-01 21:58 ` [PATCH bpf-next v9 15/34] bpf: memcg-based memory accounting for bpf local storage maps Roman Gushchin
2020-12-01 21:58 ` [PATCH bpf-next v9 16/34] bpf: refine memcg-based memory accounting for sockmap and sockhash maps Roman Gushchin
2020-12-01 21:58 ` [PATCH bpf-next v9 17/34] bpf: refine memcg-based memory accounting for xskmap maps Roman Gushchin
2020-12-01 21:58 ` [PATCH bpf-next v9 18/34] bpf: eliminate rlimit-based memory accounting for arraymap maps Roman Gushchin
2020-12-01 21:58 ` [PATCH bpf-next v9 19/34] bpf: eliminate rlimit-based memory accounting for bpf_struct_ops maps Roman Gushchin
2020-12-01 21:58 ` [PATCH bpf-next v9 20/34] bpf: eliminate rlimit-based memory accounting for cpumap maps Roman Gushchin
2020-12-01 21:58 ` [PATCH bpf-next v9 21/34] bpf: eliminate rlimit-based memory accounting for cgroup storage maps Roman Gushchin
2020-12-01 21:58 ` [PATCH bpf-next v9 22/34] bpf: eliminate rlimit-based memory accounting for devmap maps Roman Gushchin
2020-12-01 21:58 ` [PATCH bpf-next v9 23/34] bpf: eliminate rlimit-based memory accounting for hashtab maps Roman Gushchin
2020-12-01 21:58 ` Roman Gushchin [this message]
2020-12-01 21:58 ` [PATCH bpf-next v9 25/34] bpf: eliminate rlimit-based memory accounting for queue_stack_maps maps Roman Gushchin
2020-12-01 21:58 ` [PATCH bpf-next v9 26/34] bpf: eliminate rlimit-based memory accounting for reuseport_array maps Roman Gushchin
2020-12-01 21:58 ` [PATCH bpf-next v9 27/34] bpf: eliminate rlimit-based memory accounting for bpf ringbuffer Roman Gushchin
2020-12-01 21:58 ` [PATCH bpf-next v9 28/34] bpf: eliminate rlimit-based memory accounting for sockmap and sockhash maps Roman Gushchin
2020-12-01 21:58 ` [PATCH bpf-next v9 29/34] bpf: eliminate rlimit-based memory accounting for stackmap maps Roman Gushchin
2020-12-01 21:58 ` [PATCH bpf-next v9 30/34] bpf: eliminate rlimit-based memory accounting for xskmap maps Roman Gushchin
2020-12-01 21:58 ` [PATCH bpf-next v9 31/34] bpf: eliminate rlimit-based memory accounting for bpf local storage maps Roman Gushchin
2020-12-01 21:58 ` [PATCH bpf-next v9 32/34] bpf: eliminate rlimit-based memory accounting infra for bpf maps Roman Gushchin
2020-12-01 21:58 ` [PATCH bpf-next v9 33/34] bpf: eliminate rlimit-based memory accounting for bpf progs Roman Gushchin
2020-12-01 21:59 ` [PATCH bpf-next v9 34/34] bpf: samples: do not touch RLIMIT_MEMLOCK Roman Gushchin
2020-12-03  2:50 ` [PATCH bpf-next v9 00/34] bpf: switch to memcg-based memory accounting patchwork-bot+netdevbpf
2020-12-03  2:54 ` Alexei Starovoitov
2020-12-03  2:54   ` Alexei Starovoitov
2020-12-03  3:26   ` Roman Gushchin
2020-12-05  0:37     ` Daniel Borkmann
2020-12-08  2:53       ` Andrii Nakryiko
2020-12-08  2:53         ` Andrii Nakryiko

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20201201215900.3569844-25-guro@fb.com \
    --to=guro@fb.com \
    --cc=akpm@linux-foundation.org \
    --cc=andrii@kernel.org \
    --cc=ast@kernel.org \
    --cc=bpf@vger.kernel.org \
    --cc=daniel@iogearbox.net \
    --cc=kernel-team@fb.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    --cc=netdev@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.