Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1305210
| From | Ming Lei <tom.leiming@gmail.com> |
|---|---|
| Newsgroups | linux.kernel |
| Subject | Re: [PATCH net-next 2/4] bpf: bpf_htab: Add BPF_MAP_TYPE_PERCPU_HASH |
| Date | 2016-01-09 11:40 +0100 |
| Message-ID | <qOZ69-4ce-9@gated-at.bofh.it> (permalink) |
| References | <qOrnQ-63O-5@gated-at.bofh.it> <qOrnR-63O-39@gated-at.bofh.it> |
| Organization | linux.* mail to news gateway |
On Fri, Jan 8, 2016 at 6:35 AM, Martin KaFai Lau <kafai@fb.com> wrote:
> This patch adds BPFMAP_TYPE_PERCPU_HASH map type and its
> htab_map_ops implementation.
>
> Signed-off-by: Martin KaFai Lau <kafai@fb.com>
> ---
> include/uapi/linux/bpf.h | 1 +
> kernel/bpf/hashtab.c | 201 ++++++++++++++++++++++++++++++++++++++++++++++-
> 2 files changed, 201 insertions(+), 1 deletion(-)
...
> +
> +/* Called from syscall or eBPF program */
> +static void *htab_percpu_map_lookup_elem(struct bpf_map *map, void *key)
> +{
> + struct bpf_htab *htab = container_of(map, struct bpf_htab, map);
> + struct htab_elem_common *l;
> +
> + l = __htab_map_lookup_elem(htab, key);
> + if (l) {
> + void *value = per_cpu_ptr(htab_percpu_elem(l)->value,
> + smp_processor_id());
Then it isn't possible to retrieve the value of one key from all CPUs in eBPF
prog, and that is definitely not flexible because update/delete element can
be run from eBPF prog.
And that is not a thing if using real_key and cpu_id, isn't it?
Thanks,
Back to linux.kernel | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread
[PATCH net-next 0/4] bpf: bpf_htab: Add BPF_MAP_TYPE_PERCPU_HASH Martin KaFai Lau <kafai@fb.com> - 2016-01-07 23:40 +0100
[PATCH net-next 3/4] bpf: bpf_htab: Add syscall to iterate percpu value of a key Martin KaFai Lau <kafai@fb.com> - 2016-01-07 23:40 +0100
[PATCH net-next 2/4] bpf: bpf_htab: Add BPF_MAP_TYPE_PERCPU_HASH Martin KaFai Lau <kafai@fb.com> - 2016-01-07 23:40 +0100
Re: [PATCH net-next 2/4] bpf: bpf_htab: Add BPF_MAP_TYPE_PERCPU_HASH Ming Lei <tom.leiming@gmail.com> - 2016-01-09 11:10 +0100
Re: [PATCH net-next 2/4] bpf: bpf_htab: Add BPF_MAP_TYPE_PERCPU_HASH Martin KaFai Lau <kafai@fb.com> - 2016-01-12 04:20 +0100
Re: [PATCH net-next 2/4] bpf: bpf_htab: Add BPF_MAP_TYPE_PERCPU_HASH Martin KaFai Lau <kafai@fb.com> - 2016-01-12 08:50 +0100
Re: [PATCH net-next 2/4] bpf: bpf_htab: Add BPF_MAP_TYPE_PERCPU_HASH Ming Lei <tom.leiming@gmail.com> - 2016-01-09 11:40 +0100
Re: [PATCH net-next 0/4] bpf: bpf_htab: Add BPF_MAP_TYPE_PERCPU_HASH Ming Lei <tom.leiming@gmail.com> - 2016-01-08 08:00 +0100
Re: [PATCH net-next 0/4] bpf: bpf_htab: Add BPF_MAP_TYPE_PERCPU_HASH Martin KaFai Lau <kafai@fb.com> - 2016-01-09 01:50 +0100
Re: [PATCH net-next 0/4] bpf: bpf_htab: Add BPF_MAP_TYPE_PERCPU_HASH Ming Lei <tom.leiming@gmail.com> - 2016-01-09 10:50 +0100
Re: [PATCH net-next 0/4] bpf: bpf_htab: Add BPF_MAP_TYPE_PERCPU_HASH Martin KaFai Lau <kafai@fb.com> - 2016-01-10 03:40 +0100
Re: [PATCH net-next 0/4] bpf: bpf_htab: Add BPF_MAP_TYPE_PERCPU_HASH Ming Lei <tom.leiming@gmail.com> - 2016-01-11 03:30 +0100
Re: [PATCH net-next 0/4] bpf: bpf_htab: Add BPF_MAP_TYPE_PERCPU_HASH Martin KaFai Lau <kafai@fb.com> - 2016-01-11 23:40 +0100
Re: [PATCH net-next 0/4] bpf: bpf_htab: Add BPF_MAP_TYPE_PERCPU_HASH Ming Lei <tom.leiming@gmail.com> - 2016-01-12 06:50 +0100
Re: [PATCH net-next 0/4] bpf: bpf_htab: Add BPF_MAP_TYPE_PERCPU_HASH Alexei Starovoitov <alexei.starovoitov@gmail.com> - 2016-01-12 07:10 +0100
csiph-web