Message ID | 20230928202807.1765918-1-mfo@canonical.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | modpost: add missing else to the "of" check | expand |
On Fri, Sep 29, 2023 at 5:29 AM Mauricio Faria de Oliveira <mfo@canonical.com> wrote: > > Without this 'else' statement, an "usb" name goes into two handlers: > the first/previous 'if' statement _AND_ the for-loop over 'devtable', > but the latter is useless as it has no 'usb' device_id entry anyway. > > Tested with allmodconfig before/after patch; no changes to *.mod.c: > > git checkout v6.6-rc3 > make -j$(nproc) allmodconfig > make -j$(nproc) olddefconfig > > make -j$(nproc) > find . -name '*.mod.c' | cpio -pd /tmp/before > > # apply patch > > make -j$(nproc) > find . -name '*.mod.c' | cpio -pd /tmp/after > > diff -r /tmp/before/ /tmp/after/ > # no difference > > Fixes: acbef7b76629 ("modpost: fix module autoloading for OF devices with generic compatible property") > Signed-off-by: Mauricio Faria de Oliveira <mfo@canonical.com> > --- Applied to linux-kbuild/fixes. Thanks. -- Best Regards Masahiro Yamada
diff --git a/scripts/mod/file2alias.c b/scripts/mod/file2alias.c index 38120f932b0d..7056751c29b1 100644 --- a/scripts/mod/file2alias.c +++ b/scripts/mod/file2alias.c @@ -1604,7 +1604,7 @@ void handle_moddevtable(struct module *mod, struct elf_info *info, /* First handle the "special" cases */ if (sym_is(name, namelen, "usb")) do_usb_table(symval, sym->st_size, mod); - if (sym_is(name, namelen, "of")) + else if (sym_is(name, namelen, "of")) do_of_table(symval, sym->st_size, mod); else if (sym_is(name, namelen, "pnp")) do_pnp_device_entry(symval, sym->st_size, mod);
Without this 'else' statement, an "usb" name goes into two handlers: the first/previous 'if' statement _AND_ the for-loop over 'devtable', but the latter is useless as it has no 'usb' device_id entry anyway. Tested with allmodconfig before/after patch; no changes to *.mod.c: git checkout v6.6-rc3 make -j$(nproc) allmodconfig make -j$(nproc) olddefconfig make -j$(nproc) find . -name '*.mod.c' | cpio -pd /tmp/before # apply patch make -j$(nproc) find . -name '*.mod.c' | cpio -pd /tmp/after diff -r /tmp/before/ /tmp/after/ # no difference Fixes: acbef7b76629 ("modpost: fix module autoloading for OF devices with generic compatible property") Signed-off-by: Mauricio Faria de Oliveira <mfo@canonical.com> --- scripts/mod/file2alias.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)