sys/vfs/autofs: Drop unneeded bzero on node/request ctor
authorTomohiro Kusumi <kusumi.tomohiro@gmail.com>
Sun, 10 Jun 2018 16:57:05 +0000 (09:57 -0700)
committerTomohiro Kusumi <kusumi.tomohiro@gmail.com>
Sun, 10 Jun 2018 17:35:07 +0000 (10:35 -0700)
sys/vfs/autofs/autofs.c
sys/vfs/autofs/autofs_vfsops.c
sys/vfs/autofs/autofs_vnops.c

index 97bd702..0d429f1 100644 (file)
@@ -340,6 +340,9 @@ autofs_trigger_one(struct autofs_node *anp,
        if (ar != NULL) {
                refcount_acquire(&ar->ar_refcount);
        } else {
+               /*
+                * All struct fields must be initialized.
+                */
                ar = objcache_get(autofs_request_objcache, M_WAITOK);
                ar->ar_mount = amp;
                ar->ar_id = autofs_softc->sc_last_request_id++;
index b88f968..d0f1ab2 100644 (file)
@@ -46,24 +46,6 @@ static struct objcache_malloc_args autofs_node_args = {
        sizeof(struct autofs_node), M_AUTOFS,
 };
 
-static boolean_t
-autofs_request_objcache_ctor(void *obj, void *privdata, int ocflags)
-{
-       struct autofs_request *ar = obj;
-
-       memset(ar, 0, sizeof(*ar));
-       return (TRUE);
-}
-
-static boolean_t
-autofs_node_objcache_ctor(void *obj, void *privdata, int ocflags)
-{
-       struct autofs_node *an = obj;
-
-       memset(an, 0, sizeof(*an));
-       return (TRUE);
-}
-
 static int
 autofs_init(struct vfsconf *vfsp)
 {
@@ -74,14 +56,14 @@ autofs_init(struct vfsconf *vfsp)
            M_WAITOK | M_ZERO);
 
        autofs_request_objcache = objcache_create("autofs_request", 0, 0,
-               autofs_request_objcache_ctor, NULL, NULL,
-               objcache_malloc_alloc,
+               NULL, NULL, NULL,
+               objcache_malloc_alloc_zero,
                objcache_malloc_free,
                &autofs_request_args);
 
        autofs_node_objcache = objcache_create("autofs_node", 0, 0,
-               autofs_node_objcache_ctor, NULL, NULL,
-               objcache_malloc_alloc,
+               NULL, NULL, NULL,
+               objcache_malloc_alloc_zero,
                objcache_malloc_free,
                &autofs_node_args);
 
index e0c21a4..0c16830 100644 (file)
@@ -492,6 +492,9 @@ autofs_node_new(struct autofs_node *parent, struct autofs_mount *amp,
                    ("node \"%s\" already exists", name));
        }
 
+       /*
+        * All struct fields must be initialized.
+        */
        anp = objcache_get(autofs_node_objcache, M_WAITOK);
        if (namelen >= 0)
                anp->an_name = kstrndup(name, namelen, M_AUTOFS);