diff options
author | Prashanth Sreenivasa <pks@delphix.com> | 2016-09-22 09:30:13 -0700 |
---|---|---|
committer | Prakash Surya <prakash.surya@delphix.com> | 2018-01-10 08:00:10 -0800 |
commit | 5cabbc6b49070407fb9610cfe73d4c0e0dea3e77 (patch) | |
tree | 2348a2b4993b5a1f269cff4e010fcbcac97f18b4 /usr/src/cmd/mdb/common/modules/zfs/zfs.c | |
parent | eb9c32327f4caf584b309530acc3df1b67f1d286 (diff) | |
download | illumos-joyent-5cabbc6b49070407fb9610cfe73d4c0e0dea3e77.tar.gz |
7614 zfs device evacuation/removal
Reviewed by: Alex Reece <alex@delphix.com>
Reviewed by: George Wilson <george.wilson@delphix.com>
Reviewed by: John Kennedy <john.kennedy@delphix.com>
Reviewed by: Prakash Surya <prakash.surya@delphix.com>
Reviewed by: Matthew Ahrens <mahrens@delphix.com>
Reviewed by: Richard Laager <rlaager@wiktel.com>
Reviewed by: Tim Chase <tim@chase2k.com>
Approved by: Garrett D'Amore <garrett@damore.org>
Diffstat (limited to 'usr/src/cmd/mdb/common/modules/zfs/zfs.c')
-rw-r--r-- | usr/src/cmd/mdb/common/modules/zfs/zfs.c | 24 |
1 files changed, 22 insertions, 2 deletions
diff --git a/usr/src/cmd/mdb/common/modules/zfs/zfs.c b/usr/src/cmd/mdb/common/modules/zfs/zfs.c index b106ba404f..75d9fbd102 100644 --- a/usr/src/cmd/mdb/common/modules/zfs/zfs.c +++ b/usr/src/cmd/mdb/common/modules/zfs/zfs.c @@ -423,6 +423,23 @@ zfs_params(uintptr_t addr, uint_t flags, int argc, const mdb_arg_t *argv) /* ARGSUSED */ static int +dva(uintptr_t addr, uint_t flags, int argc, const mdb_arg_t *argv) +{ + dva_t dva; + if (mdb_vread(&dva, sizeof (dva_t), addr) == -1) { + mdb_warn("failed to read dva_t"); + return (DCMD_ERR); + } + mdb_printf("<%llu:%llx:%llx>\n", + (u_longlong_t)DVA_GET_VDEV(&dva), + (u_longlong_t)DVA_GET_OFFSET(&dva), + (u_longlong_t)DVA_GET_ASIZE(&dva)); + + return (DCMD_OK); +} + +/* ARGSUSED */ +static int blkptr(uintptr_t addr, uint_t flags, int argc, const mdb_arg_t *argv) { char type[80], checksum[80], compress[80]; @@ -2055,10 +2072,12 @@ spa_space(uintptr_t addr, uint_t flags, int argc, const mdb_arg_t *argv) sd.ms_freeingtree >> shift, suffix); mdb_printf("ms_freedtree = %llu%s\n", sd.ms_freedtree >> shift, suffix); - mdb_printf("ms_tree = %llu%s\n", sd.ms_tree >> shift, suffix); + mdb_printf("ms_tree = %llu%s\n", + sd.ms_tree >> shift, suffix); mdb_printf("ms_deferspace = %llu%s\n", sd.ms_deferspace >> shift, suffix); - mdb_printf("last synced avail = %llu%s\n", sd.avail >> shift, suffix); + mdb_printf("last synced avail = %llu%s\n", + sd.avail >> shift, suffix); mdb_printf("current syncing avail = %llu%s\n", sd.nowavail >> shift, suffix); @@ -3916,6 +3935,7 @@ out: static const mdb_dcmd_t dcmds[] = { { "arc", "[-bkmg]", "print ARC variables", arc_print }, { "blkptr", ":", "print blkptr_t", blkptr }, + { "dva", ":", "print dva_t", dva }, { "dbuf", ":", "print dmu_buf_impl_t", dbuf }, { "dbuf_stats", ":", "dbuf stats", dbuf_stats }, { "dbufs", |