On 20.10.2025 19:53, Josh Poimboeuf wrote:
> Commit 6717e8f91db7 ("kbuild: Remove 'kmod_' prefix from
> __KBUILD_MODNAME") inadvertently broke module alias generation for
> modules which rely on MODULE_DEVICE_TABLE().
>
> It removed the "kmod_" prefix from __KBUILD_MODNAME, which caused
> MODULE_DEVICE_TABLE() to generate a symbol name which no longer matched
> the format expected by handle_moddevtable() in scripts/mod/file2alias.c.
>
> As a result, modpost failed to find the device tables, leading to
> missing module aliases.
>
> Fix this by explicitly adding the "kmod_" string within the
> MODULE_DEVICE_TABLE() macro itself, restoring the symbol name to the
> format expected by file2alias.c.
>
> Fixes: 6717e8f91db7 ("kbuild: Remove 'kmod_' prefix from __KBUILD_MODNAME")
> Reported-by: Alexander Stein <[email protected]>
> Reported-by: Marek Szyprowski <[email protected]>
> Reported-by: Mark Brown <[email protected]>
> Reported-by: Cosmin Tanislav <[email protected]>
> Signed-off-by: Josh Poimboeuf <[email protected]>

This fixes the issue observed on my test systems. Thanks!

Closes: 
https://lore.kernel.org/all/[email protected]/
Tested-by: Marek Szyprowski <[email protected]>


> ---
>   include/linux/module.h | 3 ++-
>   1 file changed, 2 insertions(+), 1 deletion(-)
>
> diff --git a/include/linux/module.h b/include/linux/module.h
> index e135cc79aceea..d80c3ea574726 100644
> --- a/include/linux/module.h
> +++ b/include/linux/module.h
> @@ -251,10 +251,11 @@ struct module_kobject 
> *lookup_or_create_module_kobject(const char *name);
>    */
>   #define __mod_device_table(type, name)      \
>       __PASTE(__mod_device_table__,   \
> +     __PASTE(kmod_,                  \
>       __PASTE(__KBUILD_MODNAME,       \
>       __PASTE(__,                     \
>       __PASTE(type,                   \
> -     __PASTE(__, name)))))
> +     __PASTE(__, name))))))
>   
>   /* Creates an alias so file2alias.c can find device table. */
>   #define MODULE_DEVICE_TABLE(type, name)                                     
> \

Best regards
-- 
Marek Szyprowski, PhD
Samsung R&D Institute Poland


Reply via email to