]> granicus.if.org Git - zfs/commitdiff
Add remaining missing cases (or a default) to all switch statements.
authorBrian Behlendorf <behlendorf1@llnl.gov>
Thu, 12 Mar 2009 16:53:08 +0000 (09:53 -0700)
committerBrian Behlendorf <behlendorf1@llnl.gov>
Thu, 12 Mar 2009 16:53:08 +0000 (09:53 -0700)
The previous code was not wrong, but this prevents gcc from warning
us about missing cases for these known safe switch statements.  The
-Wno-missing-cases can now be removed to detect places where we
accidentally forgot a case.

cmd/zinject/translate.c
lib/libzfs/libzfs_pool.c
module/zfs/arc.c
module/zfs/spa.c
module/zfs/zfs_ioctl.c

index c85e024b62fac3b71dfec4e5da2c8c7c921f05f6..d8654594d15e025ced43878d5446634d2e900b69 100644 (file)
@@ -221,6 +221,8 @@ calculate_range(const char *dataset, err_type_t type, int level, char *range,
        }
 
        switch (type) {
+       default:
+               break;
        case TYPE_DATA:
                break;
 
@@ -335,6 +337,8 @@ translate_record(err_type_t type, const char *object, const char *range,
                 * MOS objects are treated specially.
                 */
                switch (type) {
+               default:
+                       break;
                case TYPE_MOS:
                        record->zi_type = 0;
                        break;
@@ -461,6 +465,8 @@ translate_device(const char *pool, const char *device, err_type_t label_type,
        }
 
        switch (label_type) {
+       default:
+               break;
        case TYPE_LABEL_UBERBLOCK:
                record->zi_start = offsetof(vdev_label_t, vl_uberblock[0]);
                record->zi_end = record->zi_start + VDEV_UBERBLOCK_RING - 1;
index 75ecc54e27c1d8bafa89516893d59780454f50a9..e011abc5429ad7c68f61a9cee3a5470852b08f6e 100644 (file)
@@ -180,6 +180,8 @@ char *
 zpool_state_to_name(vdev_state_t state, vdev_aux_t aux)
 {
        switch (state) {
+       default:
+               break;
        case VDEV_STATE_CLOSED:
        case VDEV_STATE_OFFLINE:
                return (gettext("OFFLINE"));
@@ -414,6 +416,8 @@ zpool_valid_proplist(libzfs_handle_t *hdl, const char *poolname,
                 * Perform additional checking for specific properties.
                 */
                switch (prop) {
+               default:
+                       break;
                case ZPOOL_PROP_VERSION:
                        if (intval < version || intval > SPA_VERSION) {
                                zfs_error_aux(hdl, dgettext(TEXT_DOMAIN,
@@ -706,7 +710,10 @@ zpool_name_valid(libzfs_handle_t *hdl, boolean_t isopen, const char *pool)
                                zfs_error_aux(hdl, dgettext(TEXT_DOMAIN,
                                    "multiple '@' delimiters in name"));
                                break;
-
+                       case NAME_ERR_NO_AT:
+                               zfs_error_aux(hdl, dgettext(TEXT_DOMAIN,
+                                   "permission set is missing '@'"));
+                               break;
                        }
                }
                return (B_FALSE);
index 3a9598a926b248c7987d681e9d07f91e5fb75758..bb87391a51b4863141d34d7da6009ed5d7d93291 100644 (file)
@@ -1110,6 +1110,8 @@ arc_space_consume(uint64_t space, arc_space_type_t type)
        ASSERT(type >= 0 && type < ARC_SPACE_NUMTYPES);
 
        switch (type) {
+       default:
+               break;
        case ARC_SPACE_DATA:
                ARCSTAT_INCR(arcstat_data_size, space);
                break;
@@ -1134,6 +1136,8 @@ arc_space_return(uint64_t space, arc_space_type_t type)
        ASSERT(type >= 0 && type < ARC_SPACE_NUMTYPES);
 
        switch (type) {
+       default:
+               break;
        case ARC_SPACE_DATA:
                ARCSTAT_INCR(arcstat_data_size, -space);
                break;
index f891fc472fa29fe1102de063b2752d1fffd527a3..23be2b0c913e080c4c65db2419314e4660048c16 100644 (file)
@@ -1050,6 +1050,8 @@ spa_check_logs(spa_t *spa)
                (void) dmu_objset_find(spa->spa_name, zil_clear_log_chain, NULL,
                    DS_FIND_CHILDREN);
                break;
+       case SPA_LOG_GOOD:
+               break;
        }
        spa->spa_log_state = SPA_LOG_GOOD;
        return (0);
index d032648b54ebdb1850b4cb3cc5e4a7dc53aa12a4..759ad31669077a856bf17a46caa22580c8932651 100644 (file)
@@ -325,6 +325,8 @@ zfs_secpolicy_setprop(const char *name, zfs_prop_t prop, cred_t *cr)
         * Check permissions for special properties.
         */
        switch (prop) {
+       default:
+               break;
        case ZFS_PROP_ZONED:
                /*
                 * Disallow setting of 'zoned' from within a local zone.
@@ -1438,6 +1440,8 @@ zfs_set_prop_nvlist(const char *name, nvlist_t *nvl)
                 * Check that this value is valid for this pool version
                 */
                switch (prop) {
+               default:
+                       break;
                case ZFS_PROP_COMPRESSION:
                        /*
                         * If the user specified gzip compression, make sure