Print this page
11490 SRS ring polling disabled for VLANs
11491 Want DLS bypass for VLAN traffic
11492 add VLVF bypass to ixgbe core
2869 duplicate packets with vnics over aggrs
11489 DLS stat delete and aggr kstat can deadlock
Portions contributed by: Theo Schlossnagle <jesus@omniti.com>
Reviewed by: Patrick Mooney <patrick.mooney@joyent.com>
Reviewed by: Robert Mustacchi <rm@joyent.com>
Reviewed by: Dan McDonald <danmcd@joyent.com>


   5  * Common Development and Distribution License (the "License").
   6  * You may not use this file except in compliance with the License.
   7  *
   8  * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
   9  * or http://www.opensolaris.org/os/licensing.
  10  * See the License for the specific language governing permissions
  11  * and limitations under the License.
  12  *
  13  * When distributing Covered Code, include this CDDL HEADER in each
  14  * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
  15  * If applicable, add the following below this CDDL HEADER, with the
  16  * fields enclosed by brackets "[]" replaced with your own identifying
  17  * information: Portions Copyright [yyyy] [name of copyright owner]
  18  *
  19  * CDDL HEADER END
  20  */
  21 
  22 /*
  23  * Copyright 2010 Sun Microsystems, Inc.  All rights reserved.
  24  * Use is subject to license terms.
  25  * Copyright 2013 Joyent, Inc.  All rights reserved.
  26  */
  27 
  28 /*
  29  * This file captures the MAC client API definitions. It can be
  30  * included from any MAC clients.
  31  */
  32 
  33 #ifndef _SYS_MAC_CLIENT_H
  34 #define _SYS_MAC_CLIENT_H
  35 
  36 #include <sys/mac.h>
  37 #include <sys/mac_flow.h>
  38 
  39 #ifdef  __cplusplus
  40 extern "C" {
  41 #endif
  42 
  43 #ifdef  _KERNEL
  44 
  45 /*


  71 
  72 /*
  73  * These are used when MAC clients what to specify tx and rx rings
  74  * properties. MAC_RXRINGS_NONE/MAC_TXRINGS_NONE mean that we should
  75  * not reserve any rings while MAC_RXRINGS_DONTCARE/MAC_TXRINGS_DONTCARE
  76  * mean that the system can decide if it wants to reserve rings or
  77  * not.
  78  */
  79 #define MAC_RXRINGS_NONE        0
  80 #define MAC_TXRINGS_NONE        MAC_RXRINGS_NONE
  81 #define MAC_RXRINGS_DONTCARE    -1
  82 #define MAC_TXRINGS_DONTCARE    MAC_RXRINGS_DONTCARE
  83 
  84 typedef enum {
  85         MAC_CLIENT_PROMISC_ALL,
  86         MAC_CLIENT_PROMISC_FILTERED,
  87         MAC_CLIENT_PROMISC_MULTI
  88 } mac_client_promisc_type_t;
  89 
  90 /* flags passed to mac_unicast_add() */

  91 #define MAC_UNICAST_NODUPCHECK                  0x0001
  92 #define MAC_UNICAST_PRIMARY                     0x0002
  93 #define MAC_UNICAST_HW                          0x0004
  94 #define MAC_UNICAST_VNIC_PRIMARY                0x0008
  95 #define MAC_UNICAST_TAG_DISABLE                 0x0010
  96 #define MAC_UNICAST_STRIP_DISABLE               0x0020
  97 #define MAC_UNICAST_DISABLE_TX_VID_CHECK        0x0040
  98 
  99 /* flags passed to mac_client_open */
 100 #define MAC_OPEN_FLAGS_IS_VNIC                  0x0001
 101 #define MAC_OPEN_FLAGS_EXCLUSIVE                0x0002
 102 #define MAC_OPEN_FLAGS_IS_AGGR_PORT             0x0004
 103 #define MAC_OPEN_FLAGS_SHARES_DESIRED           0x0008
 104 #define MAC_OPEN_FLAGS_USE_DATALINK_NAME        0x0010
 105 #define MAC_OPEN_FLAGS_MULTI_PRIMARY            0x0020
 106 #define MAC_OPEN_FLAGS_NO_UNICAST_ADDR          0x0040
 107 
 108 /* flags passed to mac_client_close */
 109 #define MAC_CLOSE_FLAGS_IS_VNIC         0x0001
 110 #define MAC_CLOSE_FLAGS_EXCLUSIVE       0x0002




   5  * Common Development and Distribution License (the "License").
   6  * You may not use this file except in compliance with the License.
   7  *
   8  * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
   9  * or http://www.opensolaris.org/os/licensing.
  10  * See the License for the specific language governing permissions
  11  * and limitations under the License.
  12  *
  13  * When distributing Covered Code, include this CDDL HEADER in each
  14  * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
  15  * If applicable, add the following below this CDDL HEADER, with the
  16  * fields enclosed by brackets "[]" replaced with your own identifying
  17  * information: Portions Copyright [yyyy] [name of copyright owner]
  18  *
  19  * CDDL HEADER END
  20  */
  21 
  22 /*
  23  * Copyright 2010 Sun Microsystems, Inc.  All rights reserved.
  24  * Use is subject to license terms.
  25  * Copyright 2018 Joyent, Inc.  All rights reserved.
  26  */
  27 
  28 /*
  29  * This file captures the MAC client API definitions. It can be
  30  * included from any MAC clients.
  31  */
  32 
  33 #ifndef _SYS_MAC_CLIENT_H
  34 #define _SYS_MAC_CLIENT_H
  35 
  36 #include <sys/mac.h>
  37 #include <sys/mac_flow.h>
  38 
  39 #ifdef  __cplusplus
  40 extern "C" {
  41 #endif
  42 
  43 #ifdef  _KERNEL
  44 
  45 /*


  71 
  72 /*
  73  * These are used when MAC clients what to specify tx and rx rings
  74  * properties. MAC_RXRINGS_NONE/MAC_TXRINGS_NONE mean that we should
  75  * not reserve any rings while MAC_RXRINGS_DONTCARE/MAC_TXRINGS_DONTCARE
  76  * mean that the system can decide if it wants to reserve rings or
  77  * not.
  78  */
  79 #define MAC_RXRINGS_NONE        0
  80 #define MAC_TXRINGS_NONE        MAC_RXRINGS_NONE
  81 #define MAC_RXRINGS_DONTCARE    -1
  82 #define MAC_TXRINGS_DONTCARE    MAC_RXRINGS_DONTCARE
  83 
  84 typedef enum {
  85         MAC_CLIENT_PROMISC_ALL,
  86         MAC_CLIENT_PROMISC_FILTERED,
  87         MAC_CLIENT_PROMISC_MULTI
  88 } mac_client_promisc_type_t;
  89 
  90 /* flags passed to mac_unicast_add() */
  91 
  92 #define MAC_UNICAST_NODUPCHECK                  0x0001
  93 #define MAC_UNICAST_PRIMARY                     0x0002
  94 #define MAC_UNICAST_HW                          0x0004
  95 #define MAC_UNICAST_VNIC_PRIMARY                0x0008
  96 #define MAC_UNICAST_TAG_DISABLE                 0x0010
  97 #define MAC_UNICAST_STRIP_DISABLE               0x0020
  98 #define MAC_UNICAST_DISABLE_TX_VID_CHECK        0x0040
  99 
 100 /* flags passed to mac_client_open */
 101 #define MAC_OPEN_FLAGS_IS_VNIC                  0x0001
 102 #define MAC_OPEN_FLAGS_EXCLUSIVE                0x0002
 103 #define MAC_OPEN_FLAGS_IS_AGGR_PORT             0x0004
 104 #define MAC_OPEN_FLAGS_SHARES_DESIRED           0x0008
 105 #define MAC_OPEN_FLAGS_USE_DATALINK_NAME        0x0010
 106 #define MAC_OPEN_FLAGS_MULTI_PRIMARY            0x0020
 107 #define MAC_OPEN_FLAGS_NO_UNICAST_ADDR          0x0040
 108 
 109 /* flags passed to mac_client_close */
 110 #define MAC_CLOSE_FLAGS_IS_VNIC         0x0001
 111 #define MAC_CLOSE_FLAGS_EXCLUSIVE       0x0002