
This commit introduces BPF_MAP_TYPE_CGROUP_STORAGE maps: a special type of maps which are implementing the cgroup storage. >From the userspace point of view it's almost a generic hash map with the (cgroup inode id, attachment type) pair used as a key. The only difference is that some operations are restricted: 1) a user can't create new entries, 2) a user can't remove existing entries. The lookup from userspace is o(log(n)). Signed-off-by: Roman Gushchin <guro@fb.com> Cc: Alexei Starovoitov <ast@kernel.org> Cc: Daniel Borkmann <daniel@iogearbox.net> Acked-by: Martin KaFai Lau <kafai@fb.com> Signed-off-by: Daniel Borkmann <daniel@iogearbox.net>
26 lines
793 B
Makefile
26 lines
793 B
Makefile
# SPDX-License-Identifier: GPL-2.0
|
|
obj-y := core.o
|
|
|
|
obj-$(CONFIG_BPF_SYSCALL) += syscall.o verifier.o inode.o helpers.o tnum.o
|
|
obj-$(CONFIG_BPF_SYSCALL) += hashtab.o arraymap.o percpu_freelist.o bpf_lru_list.o lpm_trie.o map_in_map.o
|
|
obj-$(CONFIG_BPF_SYSCALL) += local_storage.o
|
|
obj-$(CONFIG_BPF_SYSCALL) += disasm.o
|
|
obj-$(CONFIG_BPF_SYSCALL) += btf.o
|
|
ifeq ($(CONFIG_NET),y)
|
|
obj-$(CONFIG_BPF_SYSCALL) += devmap.o
|
|
obj-$(CONFIG_BPF_SYSCALL) += cpumap.o
|
|
ifeq ($(CONFIG_XDP_SOCKETS),y)
|
|
obj-$(CONFIG_BPF_SYSCALL) += xskmap.o
|
|
endif
|
|
obj-$(CONFIG_BPF_SYSCALL) += offload.o
|
|
ifeq ($(CONFIG_STREAM_PARSER),y)
|
|
ifeq ($(CONFIG_INET),y)
|
|
obj-$(CONFIG_BPF_SYSCALL) += sockmap.o
|
|
endif
|
|
endif
|
|
endif
|
|
ifeq ($(CONFIG_PERF_EVENTS),y)
|
|
obj-$(CONFIG_BPF_SYSCALL) += stackmap.o
|
|
endif
|
|
obj-$(CONFIG_CGROUP_BPF) += cgroup.o
|