]> git.proxmox.com Git - mirror_zfs.git/commitdiff
Fix coverity defects: CID 186143
authorloli10K <loli10K@users.noreply.github.com>
Fri, 24 May 2019 02:17:00 +0000 (04:17 +0200)
committerBrian Behlendorf <behlendorf1@llnl.gov>
Fri, 24 May 2019 02:17:00 +0000 (19:17 -0700)
CID 186143: Memory - illegal accesses (USE_AFTER_FREE)

This patch fixes an use-after-free in spa_import_progress_destroy()
moving the kmem_free() call at the end of the function.

Reviewed-by: Chris Dunlop <chris@onthe.net.au>
Reviewed-by: Giuseppe Di Natale <guss80@gmail.com>
Reviewed-by: Igor Kozhukhov <igor@dilos.org>
Reviewed-by: George Melikov <mail@gmelikov.ru>
Reviewed by: Brian Behlendorf <behlendorf1@llnl.gov>
Signed-off-by: loli10K <ezomori.nozomu@gmail.com>
Closes #8788

module/zfs/spa_misc.c

index dddbe9cfa0e4751790ce44314c9b036cecc67e7a..a111a9e4e611e08eb88f248c51d2cd11d35e9800 100644 (file)
@@ -2102,8 +2102,8 @@ spa_import_progress_destroy(void)
        spa_history_list_t *shl = spa_import_progress_list;
        procfs_list_uninstall(&shl->procfs_list);
        spa_import_progress_truncate(shl, 0);
-       kmem_free(shl, sizeof (spa_history_list_t));
        procfs_list_destroy(&shl->procfs_list);
+       kmem_free(shl, sizeof (spa_history_list_t));
 }
 
 int