OpenZFS 9236 - nuke spa_dbgmsg

We should use zfs_dbgmsg instead of spa_dbgmsg. Or at least,
metaslab_condense() should call zfs_dbgmsg because it's important and
rare enough to always log. It's possible that the message in
zio_dva_allocate() would be too high-frequency for zfs_dbgmsg.

Authored by: Matthew Ahrens <mahrens@delphix.com>
Reviewed by: Serapheim Dimitropoulos <serapheim.dimitro@delphix.com>
Reviewed by: Pavel Zakharov <pavel.zakharov@delphix.com>
Reviewed by: George Wilson <george.wilson@delphix.com>
Reviewed by: Richard Elling <Richard.Elling@RichardElling.com>
Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov>
Approved by: Richard Lowe <richlowe@richlowe.net>
Ported-by: Giuseppe Di Natale <dinatale2@llnl.gov>

Patch Notes:
* Removed ZFS_DEBUG_SPA from zfs-module-parameters.5

OpenZFS-issue: https://www.illumos.org/issues/9236
OpenZFS-commit: https://github.com/openzfs/openzfs/commit/cfaba7f668
Closes #7467
This commit is contained in:
Matthew Ahrens 2017-01-03 15:18:33 -08:00 committed by Brian Behlendorf
parent 089500e792
commit 964c2d69a9
8 changed files with 7 additions and 29 deletions

View File

@ -20,7 +20,7 @@
*/ */
/* /*
* Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved. * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2011, 2016 by Delphix. All rights reserved. * Copyright (c) 2011, 2017 by Delphix. All rights reserved.
* Copyright 2011 Nexenta Systems, Inc. All rights reserved. * Copyright 2011 Nexenta Systems, Inc. All rights reserved.
* Copyright (c) 2013 Steven Hartland. All rights reserved. * Copyright (c) 2013 Steven Hartland. All rights reserved.
* Copyright (c) 2014 Integros [integros.com] * Copyright (c) 2014 Integros [integros.com]
@ -6660,7 +6660,6 @@ ztest_run(ztest_shared_t *zs)
*/ */
kernel_init(FREAD | FWRITE); kernel_init(FREAD | FWRITE);
VERIFY0(spa_open(ztest_opts.zo_pool, &spa, FTAG)); VERIFY0(spa_open(ztest_opts.zo_pool, &spa, FTAG));
spa->spa_debug = B_TRUE;
metaslab_preload_limit = ztest_random(20) + 1; metaslab_preload_limit = ztest_random(20) + 1;
ztest_spa = spa; ztest_spa = spa;
@ -6813,7 +6812,6 @@ ztest_freeze(void)
kernel_init(FREAD | FWRITE); kernel_init(FREAD | FWRITE);
VERIFY3U(0, ==, spa_open(ztest_opts.zo_pool, &spa, FTAG)); VERIFY3U(0, ==, spa_open(ztest_opts.zo_pool, &spa, FTAG));
VERIFY3U(0, ==, ztest_dataset_open(0)); VERIFY3U(0, ==, ztest_dataset_open(0));
spa->spa_debug = B_TRUE;
ztest_spa = spa; ztest_spa = spa;
/* /*
@ -6882,7 +6880,6 @@ ztest_freeze(void)
VERIFY3U(0, ==, spa_open(ztest_opts.zo_pool, &spa, FTAG)); VERIFY3U(0, ==, spa_open(ztest_opts.zo_pool, &spa, FTAG));
ASSERT(spa_freeze_txg(spa) == UINT64_MAX); ASSERT(spa_freeze_txg(spa) == UINT64_MAX);
VERIFY3U(0, ==, ztest_dataset_open(0)); VERIFY3U(0, ==, ztest_dataset_open(0));
spa->spa_debug = B_TRUE;
ztest_spa = spa; ztest_spa = spa;
txg_wait_synced(spa_get_dsl(spa), 0); txg_wait_synced(spa_get_dsl(spa), 0);
ztest_dataset_close(0); ztest_dataset_close(0);

View File

@ -1094,13 +1094,6 @@ _NOTE(CONSTCOND) } while (0)
#define dprintf_bp(bp, fmt, ...) #define dprintf_bp(bp, fmt, ...)
#endif #endif
extern boolean_t spa_debug_enabled(spa_t *spa);
#define spa_dbgmsg(spa, ...) \
{ \
if (spa_debug_enabled(spa)) \
zfs_dbgmsg(__VA_ARGS__); \
}
extern int spa_mode_global; /* mode, e.g. FREAD | FWRITE */ extern int spa_mode_global; /* mode, e.g. FREAD | FWRITE */
extern int zfs_deadman_enabled; extern int zfs_deadman_enabled;
extern unsigned long zfs_deadman_synctime_ms; extern unsigned long zfs_deadman_synctime_ms;

View File

@ -306,7 +306,6 @@ struct spa {
kcondvar_t spa_suspend_cv; /* notification of resume */ kcondvar_t spa_suspend_cv; /* notification of resume */
zio_suspend_reason_t spa_suspended; /* pool is suspended */ zio_suspend_reason_t spa_suspended; /* pool is suspended */
uint8_t spa_claiming; /* pool is doing zil_claim() */ uint8_t spa_claiming; /* pool is doing zil_claim() */
boolean_t spa_debug; /* debug enabled? */
boolean_t spa_is_root; /* pool is root */ boolean_t spa_is_root; /* pool is root */
int spa_minref; /* num refs when first opened */ int spa_minref; /* num refs when first opened */
int spa_mode; /* FREAD | FWRITE */ int spa_mode; /* FREAD | FWRITE */

View File

@ -20,7 +20,7 @@
*/ */
/* /*
* Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved. * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2012, 2016 by Delphix. All rights reserved. * Copyright (c) 2012, 2017 by Delphix. All rights reserved.
*/ */
#ifndef _SYS_ZFS_DEBUG_H #ifndef _SYS_ZFS_DEBUG_H
@ -48,7 +48,7 @@ extern int zfs_dbgmsg_enable;
#define ZFS_DEBUG_DNODE_VERIFY (1 << 2) #define ZFS_DEBUG_DNODE_VERIFY (1 << 2)
#define ZFS_DEBUG_SNAPNAMES (1 << 3) #define ZFS_DEBUG_SNAPNAMES (1 << 3)
#define ZFS_DEBUG_MODIFY (1 << 4) #define ZFS_DEBUG_MODIFY (1 << 4)
#define ZFS_DEBUG_SPA (1 << 5) /* 1<<5 was previously used, try not to reuse */
#define ZFS_DEBUG_ZIO_FREE (1 << 6) #define ZFS_DEBUG_ZIO_FREE (1 << 6)
#define ZFS_DEBUG_HISTOGRAM_VERIFY (1 << 7) #define ZFS_DEBUG_HISTOGRAM_VERIFY (1 << 7)
#define ZFS_DEBUG_METASLAB_VERIFY (1 << 8) #define ZFS_DEBUG_METASLAB_VERIFY (1 << 8)

View File

@ -1387,9 +1387,6 @@ _
16 ZFS_DEBUG_MODIFY 16 ZFS_DEBUG_MODIFY
Check for illegally modified ARC buffers. Check for illegally modified ARC buffers.
_ _
32 ZFS_DEBUG_SPA
Enable spa_dbgmsg entries in the debug log.
_
64 ZFS_DEBUG_ZIO_FREE 64 ZFS_DEBUG_ZIO_FREE
Enable verification of block frees. Enable verification of block frees.
_ _

View File

@ -1555,7 +1555,7 @@ metaslab_set_fragmentation(metaslab_t *msp)
if (spa_writeable(spa) && txg < spa_final_dirty_txg(spa)) { if (spa_writeable(spa) && txg < spa_final_dirty_txg(spa)) {
msp->ms_condense_wanted = B_TRUE; msp->ms_condense_wanted = B_TRUE;
vdev_dirty(vd, VDD_METASLAB, msp, txg + 1); vdev_dirty(vd, VDD_METASLAB, msp, txg + 1);
spa_dbgmsg(spa, "txg %llu, requesting force condense: " zfs_dbgmsg("txg %llu, requesting force condense: "
"ms_id %llu, vdev_id %llu", txg, msp->ms_id, "ms_id %llu, vdev_id %llu", txg, msp->ms_id,
vd->vdev_id); vd->vdev_id);
} }
@ -2081,7 +2081,7 @@ metaslab_condense(metaslab_t *msp, uint64_t txg, dmu_tx_t *tx)
ASSERT(msp->ms_loaded); ASSERT(msp->ms_loaded);
spa_dbgmsg(spa, "condensing: txg %llu, msp[%llu] %p, vdev id %llu, " zfs_dbgmsg("condensing: txg %llu, msp[%llu] %p, vdev id %llu, "
"spa %s, smp size %llu, segments %lu, forcing condense=%s", txg, "spa %s, smp size %llu, segments %lu, forcing condense=%s", txg,
msp->ms_id, msp, msp->ms_group->mg_vd->vdev_id, msp->ms_id, msp, msp->ms_group->mg_vd->vdev_id,
msp->ms_group->mg_vd->vdev_spa->spa_name, msp->ms_group->mg_vd->vdev_spa->spa_name,

View File

@ -248,7 +248,7 @@ int spa_mode_global;
* by default in debug builds. * by default in debug builds.
*/ */
int zfs_flags = ~(ZFS_DEBUG_DPRINTF | ZFS_DEBUG_SET_ERROR | int zfs_flags = ~(ZFS_DEBUG_DPRINTF | ZFS_DEBUG_SET_ERROR |
ZFS_DEBUG_SPA | ZFS_DEBUG_INDIRECT_REMAP); ZFS_DEBUG_INDIRECT_REMAP);
#else #else
int zfs_flags = 0; int zfs_flags = 0;
#endif #endif
@ -659,8 +659,6 @@ spa_add(const char *name, nvlist_t *config, const char *altroot)
KM_SLEEP) == 0); KM_SLEEP) == 0);
} }
spa->spa_debug = ((zfs_flags & ZFS_DEBUG_SPA) != 0);
spa->spa_min_ashift = INT_MAX; spa->spa_min_ashift = INT_MAX;
spa->spa_max_ashift = 0; spa->spa_max_ashift = 0;
@ -2122,12 +2120,6 @@ spa_scan_get_stats(spa_t *spa, pool_scan_stat_t *ps)
return (0); return (0);
} }
boolean_t
spa_debug_enabled(spa_t *spa)
{
return (spa->spa_debug);
}
int int
spa_maxblocksize(spa_t *spa) spa_maxblocksize(spa_t *spa)
{ {

View File

@ -3295,7 +3295,7 @@ zio_dva_allocate(zio_t *zio)
&zio->io_alloc_list, zio); &zio->io_alloc_list, zio);
if (error != 0) { if (error != 0) {
spa_dbgmsg(spa, "%s: metaslab allocation failure: zio %p, " zfs_dbgmsg("%s: metaslab allocation failure: zio %p, "
"size %llu, error %d", spa_name(spa), zio, zio->io_size, "size %llu, error %d", spa_name(spa), zio, zio->io_size,
error); error);
if (error == ENOSPC && zio->io_size > SPA_MINBLOCKSIZE) if (error == ENOSPC && zio->io_size > SPA_MINBLOCKSIZE)