Suppress large kmem_alloc() warning.
authorBrian Behlendorf <behlendorf1@llnl.gov>
Mon, 27 Sep 2010 22:04:24 +0000 (15:04 -0700)
committerBrian Behlendorf <behlendorf1@llnl.gov>
Tue, 12 Oct 2010 21:54:59 +0000 (14:54 -0700)
Observed during failure mode testing, dsl_scan_setup_sync() allocates
73920 bytes.  This is way over the limit of what is wise to do with a
kmem_alloc() and it should probably be moved to a slab.  For now I'm
just flagging it with KM_NODEBUG to quiet the error until this can be
revisited.

module/zfs/dsl_scan.c

index c37a822..107c81b 100644 (file)
@@ -211,8 +211,8 @@ dsl_scan_setup_sync(void *arg1, void *arg2, dmu_tx_t *tx)
        /* back to the generic stuff */
 
        if (dp->dp_blkstats == NULL) {
-               dp->dp_blkstats =
-                   kmem_alloc(sizeof (zfs_all_blkstats_t), KM_SLEEP);
+               dp->dp_blkstats = kmem_alloc(sizeof (zfs_all_blkstats_t),
+                   KM_SLEEP | KM_NODEBUG);
        }
        bzero(dp->dp_blkstats, sizeof (zfs_all_blkstats_t));