diff mbox series

[bpf-next] bpf: Define bpf_token_show_fdinfo with CONFIG_PROC_FS

Message ID 20250318062557.3001333-1-chen.dylane@linux.dev (mailing list archive)
State Changes Requested
Delegated to: BPF
Headers show
Series [bpf-next] bpf: Define bpf_token_show_fdinfo with CONFIG_PROC_FS | expand

Checks

Context Check Description
bpf/vmtest-bpf-next-PR success PR summary
bpf/vmtest-bpf-next-VM_Test-0 success Logs for Lint
bpf/vmtest-bpf-next-VM_Test-2 success Logs for Unittests
bpf/vmtest-bpf-next-VM_Test-3 success Logs for Validate matrix.py
bpf/vmtest-bpf-next-VM_Test-1 success Logs for ShellCheck
bpf/vmtest-bpf-next-VM_Test-4 success Logs for aarch64-gcc / GCC BPF
bpf/vmtest-bpf-next-VM_Test-6 success Logs for aarch64-gcc / build-release
bpf/vmtest-bpf-next-VM_Test-5 success Logs for aarch64-gcc / build / build for aarch64 with gcc
bpf/vmtest-bpf-next-VM_Test-10 success Logs for aarch64-gcc / test (test_verifier, false, 360) / test_verifier on aarch64 with gcc
bpf/vmtest-bpf-next-VM_Test-15 success Logs for s390x-gcc / build-release
bpf/vmtest-bpf-next-VM_Test-12 success Logs for aarch64-gcc / veristat-meta
bpf/vmtest-bpf-next-VM_Test-11 success Logs for aarch64-gcc / veristat-kernel
bpf/vmtest-bpf-next-VM_Test-13 success Logs for s390x-gcc / GCC BPF
bpf/vmtest-bpf-next-VM_Test-18 success Logs for s390x-gcc / test (test_verifier, false, 360) / test_verifier on s390x with gcc
bpf/vmtest-bpf-next-VM_Test-20 success Logs for s390x-gcc / veristat-meta
bpf/vmtest-bpf-next-VM_Test-14 success Logs for s390x-gcc / build / build for s390x with gcc
bpf/vmtest-bpf-next-VM_Test-19 success Logs for s390x-gcc / veristat-kernel
bpf/vmtest-bpf-next-VM_Test-24 success Logs for x86_64-gcc / build-release
bpf/vmtest-bpf-next-VM_Test-23 success Logs for x86_64-gcc / build / build for x86_64 with gcc
bpf/vmtest-bpf-next-VM_Test-21 success Logs for set-matrix
bpf/vmtest-bpf-next-VM_Test-25 success Logs for x86_64-gcc / test (test_maps, false, 360) / test_maps on x86_64 with gcc
bpf/vmtest-bpf-next-VM_Test-30 success Logs for x86_64-gcc / test (test_verifier, false, 360) / test_verifier on x86_64 with gcc
bpf/vmtest-bpf-next-VM_Test-32 success Logs for x86_64-gcc / veristat-meta / x86_64-gcc veristat_meta
bpf/vmtest-bpf-next-VM_Test-34 success Logs for x86_64-llvm-17 / build / build for x86_64 with llvm-17
bpf/vmtest-bpf-next-VM_Test-31 success Logs for x86_64-gcc / veristat-kernel / x86_64-gcc veristat_kernel
bpf/vmtest-bpf-next-VM_Test-35 success Logs for x86_64-llvm-17 / build-release / build for x86_64 with llvm-17-O2
bpf/vmtest-bpf-next-VM_Test-36 success Logs for x86_64-llvm-17 / test (test_maps, false, 360) / test_maps on x86_64 with llvm-17
bpf/vmtest-bpf-next-VM_Test-41 success Logs for x86_64-llvm-17 / veristat-meta
bpf/vmtest-bpf-next-VM_Test-39 success Logs for x86_64-llvm-17 / test (test_verifier, false, 360) / test_verifier on x86_64 with llvm-17
bpf/vmtest-bpf-next-VM_Test-43 success Logs for x86_64-llvm-18 / build / build for x86_64 with llvm-18
bpf/vmtest-bpf-next-VM_Test-40 success Logs for x86_64-llvm-17 / veristat-kernel
bpf/vmtest-bpf-next-VM_Test-44 success Logs for x86_64-llvm-18 / build-release / build for x86_64 with llvm-18-O2
bpf/vmtest-bpf-next-VM_Test-50 success Logs for x86_64-llvm-18 / veristat-kernel
bpf/vmtest-bpf-next-VM_Test-49 success Logs for x86_64-llvm-18 / test (test_verifier, false, 360) / test_verifier on x86_64 with llvm-18
bpf/vmtest-bpf-next-VM_Test-51 success Logs for x86_64-llvm-18 / veristat-meta
bpf/vmtest-bpf-next-VM_Test-7 success Logs for aarch64-gcc / test (test_maps, false, 360) / test_maps on aarch64 with gcc
bpf/vmtest-bpf-next-VM_Test-22 success Logs for x86_64-gcc / GCC BPF / GCC BPF
bpf/vmtest-bpf-next-VM_Test-26 success Logs for x86_64-gcc / test (test_progs, false, 360) / test_progs on x86_64 with gcc
bpf/vmtest-bpf-next-VM_Test-28 success Logs for x86_64-gcc / test (test_progs_no_alu32_parallel, true, 30) / test_progs_no_alu32_parallel on x86_64 with gcc
bpf/vmtest-bpf-next-VM_Test-27 success Logs for x86_64-gcc / test (test_progs_no_alu32, false, 360) / test_progs_no_alu32 on x86_64 with gcc
bpf/vmtest-bpf-next-VM_Test-29 success Logs for x86_64-gcc / test (test_progs_parallel, true, 30) / test_progs_parallel on x86_64 with gcc
bpf/vmtest-bpf-next-VM_Test-33 success Logs for x86_64-llvm-17 / GCC BPF / GCC BPF
bpf/vmtest-bpf-next-VM_Test-37 success Logs for x86_64-llvm-17 / test (test_progs, false, 360) / test_progs on x86_64 with llvm-17
bpf/vmtest-bpf-next-VM_Test-38 success Logs for x86_64-llvm-17 / test (test_progs_no_alu32, false, 360) / test_progs_no_alu32 on x86_64 with llvm-17
bpf/vmtest-bpf-next-VM_Test-42 success Logs for x86_64-llvm-18 / GCC BPF / GCC BPF
bpf/vmtest-bpf-next-VM_Test-45 success Logs for x86_64-llvm-18 / test (test_maps, false, 360) / test_maps on x86_64 with llvm-18
bpf/vmtest-bpf-next-VM_Test-47 success Logs for x86_64-llvm-18 / test (test_progs_cpuv4, false, 360) / test_progs_cpuv4 on x86_64 with llvm-18
bpf/vmtest-bpf-next-VM_Test-46 success Logs for x86_64-llvm-18 / test (test_progs, false, 360) / test_progs on x86_64 with llvm-18
bpf/vmtest-bpf-next-VM_Test-48 success Logs for x86_64-llvm-18 / test (test_progs_no_alu32, false, 360) / test_progs_no_alu32 on x86_64 with llvm-18
bpf/vmtest-bpf-next-VM_Test-9 success Logs for aarch64-gcc / test (test_progs_no_alu32, false, 360) / test_progs_no_alu32 on aarch64 with gcc
bpf/vmtest-bpf-next-VM_Test-8 success Logs for aarch64-gcc / test (test_progs, false, 360) / test_progs on aarch64 with gcc
bpf/vmtest-bpf-next-VM_Test-16 success Logs for s390x-gcc / test (test_progs, false, 360) / test_progs on s390x with gcc
bpf/vmtest-bpf-next-VM_Test-17 success Logs for s390x-gcc / test (test_progs_no_alu32, false, 360) / test_progs_no_alu32 on s390x with gcc

Commit Message

Tao Chen March 18, 2025, 6:25 a.m. UTC
Protect bpf_token_show_fdinfo with CONFIG_PROC_FS check, follow the
pattern used with other *_show_fdinfo functions.

Fixes: 35f96de04127 ("bpf: Introduce BPF token object")
Signed-off-by: Tao Chen <chen.dylane@linux.dev>
---
 kernel/bpf/token.c | 4 ++++
 1 file changed, 4 insertions(+)

Comments

Jiri Olsa March 18, 2025, 9:28 a.m. UTC | #1
On Tue, Mar 18, 2025 at 02:25:57PM +0800, Tao Chen wrote:
> Protect bpf_token_show_fdinfo with CONFIG_PROC_FS check, follow the
> pattern used with other *_show_fdinfo functions.
> 
> Fixes: 35f96de04127 ("bpf: Introduce BPF token object")
> Signed-off-by: Tao Chen <chen.dylane@linux.dev>
> ---
>  kernel/bpf/token.c | 4 ++++
>  1 file changed, 4 insertions(+)
> 
> diff --git a/kernel/bpf/token.c b/kernel/bpf/token.c
> index 26057aa13..104ca37e9 100644
> --- a/kernel/bpf/token.c
> +++ b/kernel/bpf/token.c
> @@ -65,6 +65,7 @@ static int bpf_token_release(struct inode *inode, struct file *filp)
>  	return 0;
>  }
>  
> +#ifdef CONFIG_PROC_FS
>  static void bpf_token_show_fdinfo(struct seq_file *m, struct file *filp)
>  {
>  	struct bpf_token *token = filp->private_data;
> @@ -98,6 +99,7 @@ static void bpf_token_show_fdinfo(struct seq_file *m, struct file *filp)
>  	else
>  		seq_printf(m, "allowed_attachs:\t0x%llx\n", token->allowed_attachs);
>  }
> +#endif
>  
>  #define BPF_TOKEN_INODE_NAME "bpf-token"
>  
> @@ -105,7 +107,9 @@ static const struct inode_operations bpf_token_iops = { };
>  
>  static const struct file_operations bpf_token_fops = {
>  	.release	= bpf_token_release,
> +#ifdef CONFIG_PROC_FS
>  	.show_fdinfo	= bpf_token_show_fdinfo,
> +#endif

there's many more of such cases.. I'm not sure if it makes sense to fix that,
because it does not break the build and only save space for !CONFIG_PROC_FS
kernels

jirka


>  };
>  
>  int bpf_token_create(union bpf_attr *attr)
> -- 
> 2.43.0
>
Alexei Starovoitov March 18, 2025, 2:59 p.m. UTC | #2
On Tue, Mar 18, 2025 at 2:29 AM Jiri Olsa <olsajiri@gmail.com> wrote:
>
> On Tue, Mar 18, 2025 at 02:25:57PM +0800, Tao Chen wrote:
> > Protect bpf_token_show_fdinfo with CONFIG_PROC_FS check, follow the
> > pattern used with other *_show_fdinfo functions.
> >
> > Fixes: 35f96de04127 ("bpf: Introduce BPF token object")
> > Signed-off-by: Tao Chen <chen.dylane@linux.dev>
> > ---
> >  kernel/bpf/token.c | 4 ++++
> >  1 file changed, 4 insertions(+)
> >
> > diff --git a/kernel/bpf/token.c b/kernel/bpf/token.c
> > index 26057aa13..104ca37e9 100644
> > --- a/kernel/bpf/token.c
> > +++ b/kernel/bpf/token.c
> > @@ -65,6 +65,7 @@ static int bpf_token_release(struct inode *inode, struct file *filp)
> >       return 0;
> >  }
> >
> > +#ifdef CONFIG_PROC_FS
> >  static void bpf_token_show_fdinfo(struct seq_file *m, struct file *filp)
> >  {
> >       struct bpf_token *token = filp->private_data;
> > @@ -98,6 +99,7 @@ static void bpf_token_show_fdinfo(struct seq_file *m, struct file *filp)
> >       else
> >               seq_printf(m, "allowed_attachs:\t0x%llx\n", token->allowed_attachs);
> >  }
> > +#endif
> >
> >  #define BPF_TOKEN_INODE_NAME "bpf-token"
> >
> > @@ -105,7 +107,9 @@ static const struct inode_operations bpf_token_iops = { };
> >
> >  static const struct file_operations bpf_token_fops = {
> >       .release        = bpf_token_release,
> > +#ifdef CONFIG_PROC_FS
> >       .show_fdinfo    = bpf_token_show_fdinfo,
> > +#endif
>
> there's many more of such cases.. I'm not sure if it makes sense to fix that,
> because it does not break the build and only save space for !CONFIG_PROC_FS
> kernels

+1.
let's keep the code as-is.

pw-bot: cr
Tao Chen March 18, 2025, 3:20 p.m. UTC | #3
在 2025/3/18 22:59, Alexei Starovoitov 写道:
> On Tue, Mar 18, 2025 at 2:29 AM Jiri Olsa <olsajiri@gmail.com> wrote:
>>
>> On Tue, Mar 18, 2025 at 02:25:57PM +0800, Tao Chen wrote:
>>> Protect bpf_token_show_fdinfo with CONFIG_PROC_FS check, follow the
>>> pattern used with other *_show_fdinfo functions.
>>>
>>> Fixes: 35f96de04127 ("bpf: Introduce BPF token object")
>>> Signed-off-by: Tao Chen <chen.dylane@linux.dev>
>>> ---
>>>   kernel/bpf/token.c | 4 ++++
>>>   1 file changed, 4 insertions(+)
>>>
>>> diff --git a/kernel/bpf/token.c b/kernel/bpf/token.c
>>> index 26057aa13..104ca37e9 100644
>>> --- a/kernel/bpf/token.c
>>> +++ b/kernel/bpf/token.c
>>> @@ -65,6 +65,7 @@ static int bpf_token_release(struct inode *inode, struct file *filp)
>>>        return 0;
>>>   }
>>>
>>> +#ifdef CONFIG_PROC_FS
>>>   static void bpf_token_show_fdinfo(struct seq_file *m, struct file *filp)
>>>   {
>>>        struct bpf_token *token = filp->private_data;
>>> @@ -98,6 +99,7 @@ static void bpf_token_show_fdinfo(struct seq_file *m, struct file *filp)
>>>        else
>>>                seq_printf(m, "allowed_attachs:\t0x%llx\n", token->allowed_attachs);
>>>   }
>>> +#endif
>>>
>>>   #define BPF_TOKEN_INODE_NAME "bpf-token"
>>>
>>> @@ -105,7 +107,9 @@ static const struct inode_operations bpf_token_iops = { };
>>>
>>>   static const struct file_operations bpf_token_fops = {
>>>        .release        = bpf_token_release,
>>> +#ifdef CONFIG_PROC_FS
>>>        .show_fdinfo    = bpf_token_show_fdinfo,
>>> +#endif
>>
>> there's many more of such cases.. I'm not sure if it makes sense to fix that,
>> because it does not break the build and only save space for !CONFIG_PROC_FS
>> kernels
> 
> +1.
> let's keep the code as-is.
> 

Got it, thanks anyway.

> pw-bot: cr
diff mbox series

Patch

diff --git a/kernel/bpf/token.c b/kernel/bpf/token.c
index 26057aa13..104ca37e9 100644
--- a/kernel/bpf/token.c
+++ b/kernel/bpf/token.c
@@ -65,6 +65,7 @@  static int bpf_token_release(struct inode *inode, struct file *filp)
 	return 0;
 }
 
+#ifdef CONFIG_PROC_FS
 static void bpf_token_show_fdinfo(struct seq_file *m, struct file *filp)
 {
 	struct bpf_token *token = filp->private_data;
@@ -98,6 +99,7 @@  static void bpf_token_show_fdinfo(struct seq_file *m, struct file *filp)
 	else
 		seq_printf(m, "allowed_attachs:\t0x%llx\n", token->allowed_attachs);
 }
+#endif
 
 #define BPF_TOKEN_INODE_NAME "bpf-token"
 
@@ -105,7 +107,9 @@  static const struct inode_operations bpf_token_iops = { };
 
 static const struct file_operations bpf_token_fops = {
 	.release	= bpf_token_release,
+#ifdef CONFIG_PROC_FS
 	.show_fdinfo	= bpf_token_show_fdinfo,
+#endif
 };
 
 int bpf_token_create(union bpf_attr *attr)