Print this page
6601 Various GLD drivers return EINVAL instead of ENOTSUP for unused mac_prop_id_t's
Reviewed by: Garrett D'Amore <garrett@damore.org>
Reviewed by: Dan McDonald <danmcd@omniti.com>
Reviewed by: Igor Kozhukhov <ikozhukhov@gmail.com>

Split Close
Expand all
Collapse all
          --- old/usr/src/uts/common/io/igb/igb_gld.c
          +++ new/usr/src/uts/common/io/igb/igb_gld.c
↓ open down ↓ 19 lines elided ↑ open up ↑
  20   20   */
  21   21  
  22   22  /*
  23   23   * Copyright(c) 2007-2010 Intel Corporation. All rights reserved.
  24   24   */
  25   25  
  26   26  /*
  27   27   * Copyright (c) 2008, 2010, Oracle and/or its affiliates. All rights reserved.
  28   28   * Copyright 2013, Nexenta Systems, Inc. All rights reserved.
  29   29   * Copyright 2014 Pluribus Networks Inc.
       30 + * Copyright 2016 OmniTI Computer Consulting, Inc. All rights reserved.
  30   31   */
  31   32  
  32   33  #include "igb_sw.h"
  33   34  
  34   35  int
  35   36  igb_m_stat(void *arg, uint_t stat, uint64_t *val)
  36   37  {
  37   38          igb_t *igb = (igb_t *)arg;
  38   39          struct e1000_hw *hw = &igb->hw;
  39   40          igb_stat_t *igb_ks;
↓ open down ↓ 1069 lines elided ↑ open up ↑
1109 1110                           */
1110 1111                          tx_size = igb->max_frame_size;
1111 1112                          igb->tx_buf_size = ((tx_size >> 10) + ((tx_size &
1112 1113                              (((uint32_t)1 << 10) - 1)) > 0 ? 1 : 0)) << 10;
1113 1114                  }
1114 1115                  break;
1115 1116          case MAC_PROP_PRIVATE:
1116 1117                  err = igb_set_priv_prop(igb, pr_name, pr_valsize, pr_val);
1117 1118                  break;
1118 1119          default:
1119      -                err = EINVAL;
     1120 +                err = ENOTSUP;
1120 1121                  break;
1121 1122          }
1122 1123  
1123 1124          mutex_exit(&igb->gen_lock);
1124 1125  
1125 1126          if (igb_check_acc_handle(igb->osdep.reg_handle) != DDI_FM_OK) {
1126 1127                  ddi_fm_service_impact(igb->dip, DDI_SERVICE_DEGRADED);
1127 1128                  return (EIO);
1128 1129          }
1129 1130  
↓ open down ↓ 81 lines elided ↑ open up ↑
1211 1212          case MAC_PROP_ADV_10HDX_CAP:
1212 1213                  *(uint8_t *)pr_val = igb->param_adv_10hdx_cap;
1213 1214                  break;
1214 1215          case MAC_PROP_EN_10HDX_CAP:
1215 1216                  *(uint8_t *)pr_val = igb->param_en_10hdx_cap;
1216 1217                  break;
1217 1218          case MAC_PROP_PRIVATE:
1218 1219                  err = igb_get_priv_prop(igb, pr_name, pr_valsize, pr_val);
1219 1220                  break;
1220 1221          default:
1221      -                err = EINVAL;
     1222 +                err = ENOTSUP;
1222 1223                  break;
1223 1224          }
1224 1225          return (err);
1225 1226  }
1226 1227  
1227 1228  void
1228 1229  igb_m_propinfo(void *arg, const char *pr_name, mac_prop_id_t pr_num,
1229 1230      mac_prop_info_handle_t prh)
1230 1231  {
1231 1232          igb_t *igb = (igb_t *)arg;
↓ open down ↓ 352 lines elided ↑ open up ↑
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX