summaryrefslogtreecommitdiff
path: root/include/video/platform_lcd.h
diff options
context:
space:
mode:
authorRoman Gushchin <guro@fb.com>2020-12-01 13:58:32 -0800
committerAlexei Starovoitov <ast@kernel.org>2020-12-02 18:32:34 -0800
commit48edc1f78aabeba35ed00e40c36f211de89e0090 (patch)
treea70fbf0711f51afcba4983d90cd55002ba395590 /include/video/platform_lcd.h
parentddf8503c7c434374a1112e89bcedfe1ccb3057df (diff)
downloadlwn-48edc1f78aabeba35ed00e40c36f211de89e0090.tar.gz
lwn-48edc1f78aabeba35ed00e40c36f211de89e0090.zip
bpf: Prepare for memcg-based memory accounting for bpf maps
Bpf maps can be updated from an interrupt context and in such case there is no process which can be charged. It makes the memory accounting of bpf maps non-trivial. Fortunately, after commit 4127c6504f25 ("mm: kmem: enable kernel memcg accounting from interrupt contexts") and commit b87d8cefe43c ("mm, memcg: rework remote charging API to support nesting") it's finally possible. To make the ownership model simple and consistent, when the map is created, the memory cgroup of the current process is recorded. All subsequent allocations related to the bpf map are charged to the same memory cgroup. It includes allocations made by any processes (even if they do belong to a different cgroup) and from interrupts. This commit introduces 3 new helpers, which will be used by following commits to enable the accounting of bpf maps memory: - bpf_map_kmalloc_node() - bpf_map_kzalloc() - bpf_map_alloc_percpu() They are wrapping popular memory allocation functions. They set the active memory cgroup to the map's memory cgroup and add __GFP_ACCOUNT to the passed gfp flags. Then they call into the corresponding memory allocation function and restore the original active memory cgroup. These helpers are supposed to use everywhere except the map creation path. During the map creation when the map structure is allocated by itself, it cannot be passed to those helpers. In those cases default memory allocation function will be used with the __GFP_ACCOUNT flag. Signed-off-by: Roman Gushchin <guro@fb.com> Acked-by: Daniel Borkmann <daniel@iogearbox.net> Signed-off-by: Alexei Starovoitov <ast@kernel.org> Link: https://lore.kernel.org/bpf/20201201215900.3569844-7-guro@fb.com
Diffstat (limited to 'include/video/platform_lcd.h')
0 files changed, 0 insertions, 0 deletions