mirror of
https://git.proxmox.com/git/mirror_zfs.git
synced 2026-05-22 02:27:36 +03:00
Add dbgmsg kstat
Internally ZFS keeps a small log to facilitate debugging. By default the log is disabled, to enable it set zfs_dbgmsg_enable=1. The contents of the log can be accessed by reading the /proc/spl/kstat/zfs/dbgmsg file. Writing 0 to this proc file clears the log. $ echo 1 >/sys/module/zfs/parameters/zfs_dbgmsg_enable $ echo 0 >/proc/spl/kstat/zfs/dbgmsg $ zpool import tank $ cat /proc/spl/kstat/zfs/dbgmsg 1 0 0x01 -1 0 2492357525542 2525836565501 timestamp message 1441141408 spa=tank async request task=1 1441141408 txg 70 open pool version 5000; software version 5000/5; ... 1441141409 spa=tank async request task=32 1441141409 txg 72 import pool version 5000; software version 5000/5; ... 1441141414 command: lt-zpool import tank Note the zfs_dbgmsg() and dprintf() functions are both now mapped to the same log. As mentioned above the kernel debug log can be accessed though the /proc/spl/kstat/zfs/dbgmsg kstat. For user space consumers log messages are immediately written to stdout after applying the ZFS_DEBUG environment variable. $ ZFS_DEBUG=on ./cmd/ztest/ztest -V Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov> Signed-off-by: Ned Bass <bass6@llnl.gov> Closes #3728
This commit is contained in:
@@ -827,9 +827,6 @@ ztest_kill(ztest_shared_t *zs)
|
||||
spa_config_sync(ztest_spa, B_FALSE, B_FALSE);
|
||||
mutex_exit(&spa_namespace_lock);
|
||||
|
||||
if (ztest_opts.zo_verbose >= 3)
|
||||
zfs_dbgmsg_print(FTAG);
|
||||
|
||||
(void) kill(getpid(), SIGKILL);
|
||||
}
|
||||
|
||||
@@ -5894,9 +5891,6 @@ ztest_run(ztest_shared_t *zs)
|
||||
zs->zs_alloc = metaslab_class_get_alloc(spa_normal_class(spa));
|
||||
zs->zs_space = metaslab_class_get_space(spa_normal_class(spa));
|
||||
|
||||
if (ztest_opts.zo_verbose >= 3)
|
||||
zfs_dbgmsg_print(FTAG);
|
||||
|
||||
umem_free(tid, ztest_opts.zo_threads * sizeof (kt_did_t));
|
||||
|
||||
/* Kill the resume thread */
|
||||
|
||||
Reference in New Issue
Block a user