]> granicus.if.org Git - zfs/commitdiff
Use kernel slab for vn_cache and vn_file_cache
authorChunwei Chen <tuxoko@gmail.com>
Tue, 31 Jan 2017 21:44:01 +0000 (13:44 -0800)
committerBrian Behlendorf <behlendorf1@llnl.gov>
Tue, 31 Jan 2017 21:44:01 +0000 (13:44 -0800)
Resolve a false positive in the kmemleak checker by shifting to the
kernel slab.  It shows up because vn_file_cache is using KMC_KMEM
which is directly allocated using __get_free_pages, which is not
automatically tracked by kmemleak.

Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov>
Signed-off-by: Chunwei Chen <david.chen@osnexus.com>
Closes #599

module/spl/spl-vnode.c

index d02e816436eae7b1618076b8e72d6d8d331d46f9..cd276b5c847d6e9622eb9c222c230d6ccf323d48 100644 (file)
@@ -897,13 +897,13 @@ spl_vn_init(void)
                                     sizeof(struct vnode), 64,
                                     vn_cache_constructor,
                                     vn_cache_destructor,
-                                    NULL, NULL, NULL, KMC_KMEM);
+                                    NULL, NULL, NULL, 0);
 
        vn_file_cache = kmem_cache_create("spl_vn_file_cache",
                                          sizeof(file_t), 64,
                                          vn_file_cache_constructor,
                                          vn_file_cache_destructor,
-                                         NULL, NULL, NULL, KMC_KMEM);
+                                         NULL, NULL, NULL, 0);
        return (0);
 } /* vn_init() */