Re: [PATCH net-next 1/8] bpf: multi program support for cgroup+bpf

2017-10-02 Thread Alexei Starovoitov
On 10/2/17 9:26 PM, David Ahern wrote: On 10/2/17 9:21 PM, Alexei Starovoitov wrote: i'm not sure what you're trying to say. The first loop quoted above is inside cgroup_bpf_put() which is called when cgroup is destroyed. At this point we're detaching and prog_put all attached programs. While t

Re: [PATCH net-next 1/8] bpf: multi program support for cgroup+bpf

2017-10-02 Thread David Ahern
On 10/2/17 9:21 PM, Alexei Starovoitov wrote: > > i'm not sure what you're trying to say. > The first loop quoted above is inside cgroup_bpf_put() > which is called when cgroup is destroyed. At this point > we're detaching and prog_put all attached programs. > While there is only one static_branch

Re: [PATCH net-next 1/8] bpf: multi program support for cgroup+bpf

2017-10-02 Thread Alexei Starovoitov
On 10/2/17 8:54 PM, David Ahern wrote: On 10/2/17 4:48 PM, Alexei Starovoitov wrote: diff --git a/kernel/bpf/cgroup.c b/kernel/bpf/cgroup.c index 546113430049..70f679a94804 100644 --- a/kernel/bpf/cgroup.c +++ b/kernel/bpf/cgroup.c @@ -27,129 +27,361 @@ void cgroup_bpf_put(struct cgroup *cgrp)

Re: [PATCH net-next 1/8] bpf: multi program support for cgroup+bpf

2017-10-02 Thread David Ahern
On 10/2/17 4:48 PM, Alexei Starovoitov wrote: > diff --git a/kernel/bpf/cgroup.c b/kernel/bpf/cgroup.c > index 546113430049..70f679a94804 100644 > --- a/kernel/bpf/cgroup.c > +++ b/kernel/bpf/cgroup.c > @@ -27,129 +27,361 @@ void cgroup_bpf_put(struct cgroup *cgrp) > { > unsigned int type; >

[PATCH net-next 1/8] bpf: multi program support for cgroup+bpf

2017-10-02 Thread Alexei Starovoitov
introduce BPF_F_ALLOW_MULTI flag that can be used to attach multiple bpf programs to a cgroup. The difference between three possible flags for BPF_PROG_ATTACH command: - NONE(default): No further bpf programs allowed in the subtree. - BPF_F_ALLOW_OVERRIDE: If a sub-cgroup installs some bpf program