From: Md Haris Iqbal <haris.iqbal@xxxxxxxxxxxxxxx> Fixes: 2de6c8de192b ("block/rnbd: server: main functionality") Reported-by: kernel test robot <rong.a.chen@xxxxxxxxx> Signed-off-by: Md Haris Iqbal <haris.iqbal@xxxxxxxxxxxxxxx> The rnbd_server module's communication manager initialization depends on the registration of the "network namespace subsystem" of the RDMA CM agent module. As such, when the kernel is configured to load the rnbd_server and the RDMA cma module during initialization; and if the rnbd_server module is initialized before RDMA cma module, a null ptr dereference occurs during the RDMA bind operation. This patch delays the initialization of the rnbd_server module to the late_initcall level, since RDMA cma module uses module_init which puts it into the device_initcall level. --- drivers/block/rnbd/rnbd-srv.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/block/rnbd/rnbd-srv.c b/drivers/block/rnbd/rnbd-srv.c index 86e61523907b..213df05e5994 100644 --- a/drivers/block/rnbd/rnbd-srv.c +++ b/drivers/block/rnbd/rnbd-srv.c @@ -840,5 +840,5 @@ static void __exit rnbd_srv_cleanup_module(void) rnbd_srv_destroy_sysfs_files(); } -module_init(rnbd_srv_init_module); +late_initcall(rnbd_srv_init_module); module_exit(rnbd_srv_cleanup_module); -- 2.25.1