Files
android_kernel_xiaomi_sm8450/include/uapi/linux
Andrii Nakryiko 0c991ebc8c bpf: Implement bpf_prog replacement for an active bpf_cgroup_link
Add new operation (LINK_UPDATE), which allows to replace active bpf_prog from
under given bpf_link. Currently this is only supported for bpf_cgroup_link,
but will be extended to other kinds of bpf_links in follow-up patches.

For bpf_cgroup_link, implemented functionality matches existing semantics for
direct bpf_prog attachment (including BPF_F_REPLACE flag). User can either
unconditionally set new bpf_prog regardless of which bpf_prog is currently
active under given bpf_link, or, optionally, can specify expected active
bpf_prog. If active bpf_prog doesn't match expected one, no changes are
performed, old bpf_link stays intact and attached, operation returns
a failure.

cgroup_bpf_replace() operation is resolving race between auto-detachment and
bpf_prog update in the same fashion as it's done for bpf_link detachment,
except in this case update has no way of succeeding because of target cgroup
marked as dying. So in this case error is returned.

Signed-off-by: Andrii Nakryiko <andriin@fb.com>
Signed-off-by: Alexei Starovoitov <ast@kernel.org>
Link: https://lore.kernel.org/bpf/20200330030001.2312810-3-andriin@fb.com
2020-03-30 17:36:33 -07:00
..
2019-01-28 08:13:52 +01:00
2019-12-18 18:07:31 +01:00
2019-03-07 18:32:01 -08:00
2019-10-09 22:31:14 -04:00
2019-09-25 17:51:39 -07:00
2019-08-02 14:44:02 +10:00
2019-06-14 15:00:51 +05:30
2018-12-20 19:13:07 +01:00
2020-01-18 09:19:18 -05:00
2019-03-27 13:30:07 -07:00
2018-06-18 15:11:53 +10:00
2019-08-12 19:33:50 -07:00
2019-12-11 15:31:52 +01:00
2018-09-05 22:27:11 -07:00
2019-09-08 15:37:04 +02:00
2018-07-07 17:41:38 +02:00
2020-01-31 12:50:04 +01:00
2018-08-03 10:03:57 -07:00
2017-11-28 16:54:00 +01:00
2020-02-07 14:39:38 +09:00
2019-08-19 13:04:45 -07:00
2018-12-16 12:15:25 -08:00
2018-12-01 12:38:32 +01:00
2019-05-28 21:37:30 -07:00
2018-01-14 23:06:30 -05:00
2018-01-16 16:47:29 +01:00
2020-01-18 09:19:18 -05:00
2019-10-02 20:32:27 -06:00
2019-01-22 10:21:45 +01:00
2019-07-30 20:34:34 +02:00
2018-03-20 03:17:41 +02:00
2019-12-18 10:37:18 +01:00
2020-01-14 12:20:48 +01:00
2017-11-16 10:49:00 +09:00
2020-01-26 15:28:47 +01:00
2019-11-13 12:15:34 -08:00
2019-12-18 18:07:31 +01:00
2020-01-04 13:49:51 +08:00
2018-09-03 13:29:38 +02:00
2019-12-09 09:59:07 +01:00
2018-02-06 18:32:44 -08:00
2019-09-18 20:17:50 +02:00
2019-08-01 21:49:46 +02:00