]> git.baikalelectronics.ru Git - kernel.git/commit
bpf: fix attach type BPF_LIRC_MODE2 dependency wrt CONFIG_CGROUP_BPF
authorSean Young <sean@mess.org>
Mon, 18 Jun 2018 23:04:24 +0000 (00:04 +0100)
committerDaniel Borkmann <daniel@iogearbox.net>
Tue, 26 Jun 2018 09:28:38 +0000 (11:28 +0200)
commit6e45905f66aee5c1308e4e75e8da5a5c9f3f45b8
treec2ca0792e966f0bfb00f08d4df3401f2d68d52a9
parent93ea4c232e2b7cd8b6fe08c45fbcb40809634785
bpf: fix attach type BPF_LIRC_MODE2 dependency wrt CONFIG_CGROUP_BPF

If the kernel is compiled with CONFIG_CGROUP_BPF not enabled, it is not
possible to attach, detach or query IR BPF programs to /dev/lircN devices,
making them impossible to use. For embedded devices, it should be possible
to use IR decoding without cgroups or CONFIG_CGROUP_BPF enabled.

This change requires some refactoring, since bpf_prog_{attach,detach,query}
functions are now always compiled, but their code paths for cgroups need
moving out. Rather than a #ifdef CONFIG_CGROUP_BPF in kernel/bpf/syscall.c,
moving them to kernel/bpf/cgroup.c and kernel/bpf/sockmap.c does not
require #ifdefs since that is already conditionally compiled.

Fixes: 9e35d71b7069 ("media: rc: introduce BPF_PROG_LIRC_MODE2")
Signed-off-by: Sean Young <sean@mess.org>
Signed-off-by: Daniel Borkmann <daniel@iogearbox.net>
drivers/media/rc/bpf-lirc.c
include/linux/bpf-cgroup.h
include/linux/bpf.h
include/linux/bpf_lirc.h
kernel/bpf/cgroup.c
kernel/bpf/sockmap.c
kernel/bpf/syscall.c