bpf: Document BPF_PROG_QUERY syscall command
Commit 468e2f64d2
("bpf: introduce BPF_PROG_QUERY command") originally
introduced this, but there have been several additions since then.
Unlike BPF_PROG_ATTACH, it appears that the sockmap progs are not able
to be queried so far.
Signed-off-by: Joe Stringer <joe@cilium.io>
Signed-off-by: Alexei Starovoitov <ast@kernel.org>
Reviewed-by: Quentin Monnet <quentin@isovalent.com>
Acked-by: Toke Høiland-Jørgensen <toke@redhat.com>
Acked-by: Yonghong Song <yhs@fb.com>
Link: https://lore.kernel.org/bpf/20210302171947.2268128-8-joe@cilium.io
This commit is contained in:
parent
2a3fdca4e3
commit
5d999994e0
|
@ -389,6 +389,43 @@ union bpf_iter_link_info {
|
|||
* Obtain information about eBPF programs associated with the
|
||||
* specified *attach_type* hook.
|
||||
*
|
||||
* The *target_fd* must be a valid file descriptor for a kernel
|
||||
* object which depends on the attach type of *attach_bpf_fd*:
|
||||
*
|
||||
* **BPF_PROG_TYPE_CGROUP_DEVICE**,
|
||||
* **BPF_PROG_TYPE_CGROUP_SKB**,
|
||||
* **BPF_PROG_TYPE_CGROUP_SOCK**,
|
||||
* **BPF_PROG_TYPE_CGROUP_SOCK_ADDR**,
|
||||
* **BPF_PROG_TYPE_CGROUP_SOCKOPT**,
|
||||
* **BPF_PROG_TYPE_CGROUP_SYSCTL**,
|
||||
* **BPF_PROG_TYPE_SOCK_OPS**
|
||||
*
|
||||
* Control Group v2 hierarchy with the eBPF controller
|
||||
* enabled. Requires the kernel to be compiled with
|
||||
* **CONFIG_CGROUP_BPF**.
|
||||
*
|
||||
* **BPF_PROG_TYPE_FLOW_DISSECTOR**
|
||||
*
|
||||
* Network namespace (eg /proc/self/ns/net).
|
||||
*
|
||||
* **BPF_PROG_TYPE_LIRC_MODE2**
|
||||
*
|
||||
* LIRC device path (eg /dev/lircN). Requires the kernel
|
||||
* to be compiled with **CONFIG_BPF_LIRC_MODE2**.
|
||||
*
|
||||
* **BPF_PROG_QUERY** always fetches the number of programs
|
||||
* attached and the *attach_flags* which were used to attach those
|
||||
* programs. Additionally, if *prog_ids* is nonzero and the number
|
||||
* of attached programs is less than *prog_cnt*, populates
|
||||
* *prog_ids* with the eBPF program ids of the programs attached
|
||||
* at *target_fd*.
|
||||
*
|
||||
* The following flags may alter the result:
|
||||
*
|
||||
* **BPF_F_QUERY_EFFECTIVE**
|
||||
* Only return information regarding programs which are
|
||||
* currently effective at the specified *target_fd*.
|
||||
*
|
||||
* Return
|
||||
* Returns zero on success. On error, -1 is returned and *errno*
|
||||
* is set appropriately.
|
||||
|
|
Loading…
Reference in New Issue