On Wed, Dec 18, 2019 at 11:44:32PM -0800, Andrey Ignatov wrote: > v3->v4: > - use OPTS_VALID and OPTS_GET to handle bpf_prog_attach_opts. > > v2->v3: > - rely on DECLARE_LIBBPF_OPTS from libbpf_common.h; > - separate "required" and "optional" arguments in bpf_prog_attach_xattr; > - convert test_cgroup_attach to prog_tests; > - move the new selftest to prog_tests/cgroup_attach_multi. > > v1->v2: > - move DECLARE_LIBBPF_OPTS from libbpf.h to bpf.h (patch 4); > - switch new libbpf API to OPTS framework; > - switch selftest to libbpf OPTS framework. > > This patch set adds support for replacing cgroup-bpf programs attached with > BPF_F_ALLOW_MULTI flag so that any program in a list can be updated to a new > version without service interruption and order of programs can be preserved. > > Please see patch 3 for details on the use-case and API changes. > > Other patches: > Patch 1 is preliminary refactoring of __cgroup_bpf_attach to simplify it. > Patch 2 is minor cleanup of hierarchy_allows_attach. > Patch 4 extends libbpf API to support new set of attach attributes. > Patch 5 converts test_cgroup_attach to prog_tests. > Patch 6 adds selftest coverage for the new API. Applied, Thanks