]> git.proxmox.com Git - mirror_spl-debian.git/commit
Properly destroy work items in spl_kmem_cache_destroy()
authorGunnar Beutner <gunnar@beutner.name>
Tue, 11 Oct 2011 16:59:02 +0000 (09:59 -0700)
committerBrian Behlendorf <behlendorf1@llnl.gov>
Tue, 11 Oct 2011 16:59:19 +0000 (09:59 -0700)
commit64c075c3f4381df02d206008b94498248cc49324
tree3da8bdf5d574f1086273da179b4d40810f9005bd
parent763b2f3b57af1febb0fd72c4976992e672a350b4
Properly destroy work items in spl_kmem_cache_destroy()

In a non-debug build the ASSERT() would be optimized away
which could cause pending work items to not be cancelled.

We must also use cancel_delayed_work_sync() rather than just
cancel_delayed_work() to actually wait until work items have
completed.  Otherwise they might accidentally access free'd
memory.

Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov>
Closes ZFS bugs #279, #62, #363, #418
module/spl/spl-kmem.c