On Tue, Aug 28, 2018 at 07:52:31AM +0800, Chengguang Xu wrote: > @@ -1012,14 +1012,11 @@ static int __init init(void) > return 0; > > error: > - if (virtscsi_cmd_pool) { > - mempool_destroy(virtscsi_cmd_pool); > - virtscsi_cmd_pool = NULL; > - } > - if (virtscsi_cmd_cache) { > - kmem_cache_destroy(virtscsi_cmd_cache); > - virtscsi_cmd_cache = NULL; > - } > + mempool_destroy(virtscsi_cmd_pool); > + virtscsi_cmd_pool = NULL; > + kmem_cache_destroy(virtscsi_cmd_cache); > + virtscsi_cmd_cache = NULL; > + Since this is in the error unwind path of the module's init function, you could also drop explicitly setting the pointers to NULL afterwards. Greg