On Thu, 29 Aug 2019 20:05:49 +0200 Toke Høiland-Jørgensen <toke@xxxxxxxxxx> wrote: > Alexei Starovoitov <alexei.starovoitov@xxxxxxxxx> writes: > > > On Thu, Aug 29, 2019 at 09:44:18AM +0200, Toke Høiland-Jørgensen wrote: > >> Alexei Starovoitov <ast@xxxxxxxxxx> writes: > >> > >> > CAP_BPF allows the following BPF operations: > >> > - Loading all types of BPF programs > >> > - Creating all types of BPF maps except: > >> > - stackmap that needs CAP_TRACING > >> > - devmap that needs CAP_NET_ADMIN > >> > - cpumap that needs CAP_SYS_ADMIN > >> > >> Why CAP_SYS_ADMIN instead of CAP_NET_ADMIN for cpumap? > > > > Currently it's cap_sys_admin and I think it should stay this way > > because it creates kthreads. > > Ah, right. I can sorta see that makes sense because of the kthreads, but > it also means that you can use all of XDP *except* cpumap with > CAP_NET_ADMIN+CAP_BPF. That is bound to create confusion, isn't it? Hmm... I see 'cpumap' primarily as a network stack feature. It is about starting the network stack on a specific CPU, allocating and building SKBs on that remote CPU. It can only be used together with XDP_REDIRECT. I would prefer CAP_NET_ADMIN like the devmap, to keep the XDP capabilities consistent. -- Best regards, Jesper Dangaard Brouer MSc.CS, Principal Kernel Engineer at Red Hat LinkedIn: http://www.linkedin.com/in/brouer