On Thu, May 14, 2020 at 02:51:01PM -0400, Sasha Levin wrote:
From: Christian Gromm christian.gromm@microchip.com
[ Upstream commit 5e56bc06e18dfc8a66180fa369384b36e2ab621a ]
This patch replaces function module_init() with subsys_initcall(). It is needed to ensure that the core module of the driver is initialized before a component tries to register with the core. This leads to a NULL pointer dereference if the driver is configured as in-tree.
Signed-off-by: Christian Gromm christian.gromm@microchip.com Reported-by: kernel test robot lkp@intel.com Link: https://lore.kernel.org/r/1587741394-22021-1-git-send-email-christian.gromm@... Signed-off-by: Greg Kroah-Hartman gregkh@linuxfoundation.org Signed-off-by: Sasha Levin sashal@kernel.org
drivers/staging/most/core.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/staging/most/core.c b/drivers/staging/most/core.c index 0c4ae6920d77d..409c48c597f2f 100644 --- a/drivers/staging/most/core.c +++ b/drivers/staging/most/core.c @@ -1484,7 +1484,7 @@ static void __exit most_exit(void) ida_destroy(&mdev_id); } -module_init(most_init); +subsys_initcall(most_init); module_exit(most_exit); MODULE_LICENSE("GPL"); MODULE_AUTHOR("Christian Gromm christian.gromm@microchip.com");
This is not needed in 5.6 and older kernels due to the most/core.c code being in staging for these releases. It only became an issue when it moved out of staging.
So please drop this from here and any older trees you might have selected it for.
thanks,
greg k-h