On Thu, Jul 21, 2022 at 07:02:07AM -0700, Alexei Starovoitov wrote: > On Wed, Jul 20, 2022 at 4:47 AM Artem Savkov <asavkov@xxxxxxxxxx> wrote: > > > > +/* If BPF_F_DESTRUCTIVE is used in BPF_PROG_LOAD command, the loaded program > > + * will be able to perform destructive operations such as calling bpf_panic() > > + * helper. > > + */ > > +#define BPF_F_DESTRUCTIVE (1U << 6) > > I don't understand what value this flag provides. > > bpf prog won't be using kexec accidentally. > Requiring user space to also pass this flag seems pointless. bpf program likely won't. But I think it is not uncommon for people to run bpftrace scripts they fetched off the internet to run them without fully reading the code. So the idea was to provide intermediate tools like that with a common way to confirm user's intent without implementing their own guards around dangerous calls. If that is not a good enough of a reason to add the flag I can drop it. -- Artem