From 1d67767565cfaa3ad887e6db2498e7c4c3b5777d Mon Sep 17 00:00:00 2001 From: Bart Van Assche Date: Tue, 25 Mar 2014 18:51:23 +0000 Subject: [PATCH] Avoid that unloading SCST hangs when using bcache (merge r5052 from trunk) git-svn-id: http://svn.code.sf.net/p/scst/svn/branches/2.2.x@5379 d57e44dd-8a1f-0410-8b47-8ef2f437770f --- scst/src/scst_mem.c | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/scst/src/scst_mem.c b/scst/src/scst_mem.c index 28580c514..c4792da4f 100644 --- a/scst/src/scst_mem.c +++ b/scst/src/scst_mem.c @@ -1587,8 +1587,6 @@ static void sgv_pool_destroy(struct sgv_pool *pool) TRACE_ENTRY(); - cancel_delayed_work_sync(&pool->sgv_purge_work); - sgv_pool_flush(pool); mutex_lock(&sgv_pools_mutex); @@ -1601,6 +1599,8 @@ static void sgv_pool_destroy(struct sgv_pool *pool) scst_sgv_sysfs_del(pool); #endif + cancel_delayed_work_sync(&pool->sgv_purge_work); + for (i = 0; i < pool->max_caches; i++) { if (pool->caches[i]) kmem_cache_destroy(pool->caches[i]); @@ -1828,8 +1828,6 @@ void scst_sgv_pools_deinit(void) sgv_pool_destroy(sgv_norm_pool); sgv_pool_destroy(sgv_norm_clust_pool); - flush_scheduled_work(); - TRACE_EXIT(); return; }