On Thu, Nov 09, 2023 at 08:08:31AM -0800, Eric Biggers wrote: > On Thu, Nov 09, 2023 at 05:00:40PM +0100, Joel Granados wrote: > > > > static void __init fsverity_init_sysctl(void) > > > > { > > > > +#ifdef CONFIG_FS_VERITY_BUILTIN_SIGNATURES > > > > fsverity_sysctl_header = register_sysctl("fs/verity", > > > > fsverity_sysctl_table); > > > > +#else > > > > + fsverity_sysctl_header = register_sysctl_sz("fs/verity", > > > > + fsverity_sysctl_table, 0); > > > > +#endif > > > > if (!fsverity_sysctl_header) > > > > panic("fsverity sysctl registration failed"); > > > > > > This does not make sense, and it causes a build error when CONFIG_FS_VERITY=y > > > and CONFIG_FS_VERITY_BUILTIN_SIGNATURES=n. > > > > > > I think all you need to do is delete the sentinel element, the same as > > > everywhere else. I just tested it, and it works fine. > > I found the reason why I added the CONFIG_FS_VERITY_BUILTIN_SIGNATURES > > here: it is related to > > https://lore.kernel.org/all/20230705212743.42180-3-ebiggers@xxxxxxxxxx/ > > where the directory is registered with an element only if > > CONFIG_FS_VERITY_BUILTIN_SIGNATURES is defined. I had forgotten, but I > > even asked for a clarification on the patch :). > > > > I see that that patch made it to v6.6. So the solution is not to remove > > the CONFIG_FS_VERITY_BUILTIN_SIGNATURES, but for me to rebase on top of > > a more up to date base. > > > > @Eric: Please get back to me if the patch in > > https://lore.kernel.org/all/20230705212743.42180-3-ebiggers@xxxxxxxxxx/ > > is no longer relevant. > > > > Best. > > Yes, that patch was merged in 6.6. I don't think it really matters here though, > other than the fact that it moved the code to a different file. I believe all > you need to do is remove the sentinel element, the same as anywhere else: Indeed. I thought that I had to handle empty array in a special way, but it seems that ARRAY_SIZE works for empty arrays as well. I'll correct this as well. Thx again for the feedback. Best > > diff --git a/fs/verity/init.c b/fs/verity/init.c > index a29f062f6047b..b64a76b9ac362 100644 > --- a/fs/verity/init.c > +++ b/fs/verity/init.c > @@ -24,7 +24,6 @@ static struct ctl_table fsverity_sysctl_table[] = { > .extra2 = SYSCTL_ONE, > }, > #endif > - { } > }; > > static void __init fsverity_init_sysctl(void) -- Joel Granados
Attachment:
signature.asc
Description: PGP signature