Print this page
2619 asynchronous destruction of ZFS file systems
2747 SPA versioning with zfs feature flags
Reviewed by: Matt Ahrens <mahrens@delphix.com>
Reviewed by: George Wilson <gwilson@delphix.com>
Reviewed by: Richard Lowe <richlowe@richlowe.net>
Reviewed by: Dan Kruchinin <dan.kruchinin@gmail.com>
Approved by: Dan McDonald <danmcd@nexenta.com>

*** 19,28 **** --- 19,29 ---- * CDDL HEADER END */ /* * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved. * Copyright 2011 Nexenta Systems, Inc. All rights reserved. + * Copyright (c) 2012 by Delphix. All rights reserved. */ /* Portions Copyright 2010 Robert Milkowski */ #include <mdb/mdb_ctf.h>
*** 1235,1244 **** --- 1236,1248 ---- aux = "VERS_NEWER"; break; case VDEV_AUX_VERSION_OLDER: aux = "VERS_OLDER"; break; + case VDEV_AUX_UNSUP_FEAT: + aux = "UNSUP_FEAT"; + break; case VDEV_AUX_SPARED: aux = "SPARED"; break; case VDEV_AUX_ERR_EXCEEDED: aux = "ERR_EXCEEDED";
*** 2180,2190 **** mdb_warn("failed to read data at %p;", addr); mdb_printf("maybe no stats? run \"zpool scrub\" first."); return (DCMD_ERR); } ! tzb = &stats.zab_type[DN_MAX_LEVELS][DMU_OT_NUMTYPES]; if (tzb->zb_gangs != 0) { mdb_printf("Ganged blocks: %llu\n", (longlong_t)tzb->zb_gangs); } --- 2184,2194 ---- mdb_warn("failed to read data at %p;", addr); mdb_printf("maybe no stats? run \"zpool scrub\" first."); return (DCMD_ERR); } ! tzb = &stats.zab_type[DN_MAX_LEVELS][DMU_OT_TOTAL]; if (tzb->zb_gangs != 0) { mdb_printf("Ganged blocks: %llu\n", (longlong_t)tzb->zb_gangs); }
*** 2196,2206 **** } mdb_printf("\nBlocks\tLSIZE\tPSIZE\tASIZE" "\t avg\t comp\t%%Total\tType\n"); ! for (t = 0; t <= DMU_OT_NUMTYPES; t++) { char csize[NICENUM_BUFLEN], lsize[NICENUM_BUFLEN]; char psize[NICENUM_BUFLEN], asize[NICENUM_BUFLEN]; char avg[NICENUM_BUFLEN]; char comp[NICENUM_BUFLEN], pct[NICENUM_BUFLEN]; char typename[64]; --- 2200,2210 ---- } mdb_printf("\nBlocks\tLSIZE\tPSIZE\tASIZE" "\t avg\t comp\t%%Total\tType\n"); ! for (t = 0; t <= DMU_OT_TOTAL; t++) { char csize[NICENUM_BUFLEN], lsize[NICENUM_BUFLEN]; char psize[NICENUM_BUFLEN], asize[NICENUM_BUFLEN]; char avg[NICENUM_BUFLEN]; char comp[NICENUM_BUFLEN], pct[NICENUM_BUFLEN]; char typename[64];
*** 2207,2216 **** --- 2211,2222 ---- int l; if (t == DMU_OT_DEFERRED) strcpy(typename, "deferred free"); + else if (t == DMU_OT_OTHER) + strcpy(typename, "other"); else if (t == DMU_OT_TOTAL) strcpy(typename, "Total"); else if (mdb_readstr(typename, sizeof (typename), (uintptr_t)dmu_ot[t].ot_name) == -1) { mdb_warn("failed to read type name");