aboutsummaryrefslogtreecommitdiffstats
path: root/net/dcb/dcbnl.c
diff options
context:
space:
mode:
authorDon Skidmore <donald.c.skidmore@intel.com>2008-12-21 23:10:29 -0500
committerDavid S. Miller <davem@davemloft.net>2008-12-21 23:10:29 -0500
commitf4314e815e87b4ab1c9b1115dd5853cd20ca999c (patch)
tree4a8784070f58420814528ca0abd5cf3e12753ce5 /net/dcb/dcbnl.c
parent1486a61ebcd2711532f8163d30babc40e11e7b40 (diff)
net: add DCNA attribute to the BCN interface for DCB
Adds the Backward Congestion Notification Address (BCNA) attribute to the Backward Congestion Notification (BCN) interface for Data Center Bridging (DCB), which was missing. Receive the BCNA attribute in the ixgbe driver. The BCNA attribute is for a switch to inform the endstation about the physical port identification in order to support BCN on aggregated links. Signed-off-by: Don Skidmore <donald.c.skidmore@intel.com> Signed-off-by: Eric W Multanen <eric.w.multanen@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Diffstat (limited to 'net/dcb/dcbnl.c')
-rw-r--r--net/dcb/dcbnl.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/net/dcb/dcbnl.c b/net/dcb/dcbnl.c
index fc88fc4d4f63..5dbfe5fdc0d6 100644
--- a/net/dcb/dcbnl.c
+++ b/net/dcb/dcbnl.c
@@ -140,6 +140,8 @@ static struct nla_policy dcbnl_bcn_nest[DCB_BCN_ATTR_MAX + 1] = {
140 [DCB_BCN_ATTR_RP_6] = {.type = NLA_U8}, 140 [DCB_BCN_ATTR_RP_6] = {.type = NLA_U8},
141 [DCB_BCN_ATTR_RP_7] = {.type = NLA_U8}, 141 [DCB_BCN_ATTR_RP_7] = {.type = NLA_U8},
142 [DCB_BCN_ATTR_RP_ALL] = {.type = NLA_FLAG}, 142 [DCB_BCN_ATTR_RP_ALL] = {.type = NLA_FLAG},
143 [DCB_BCN_ATTR_BCNA_0] = {.type = NLA_U32},
144 [DCB_BCN_ATTR_BCNA_1] = {.type = NLA_U32},
143 [DCB_BCN_ATTR_ALPHA] = {.type = NLA_U32}, 145 [DCB_BCN_ATTR_ALPHA] = {.type = NLA_U32},
144 [DCB_BCN_ATTR_BETA] = {.type = NLA_U32}, 146 [DCB_BCN_ATTR_BETA] = {.type = NLA_U32},
145 [DCB_BCN_ATTR_GD] = {.type = NLA_U32}, 147 [DCB_BCN_ATTR_GD] = {.type = NLA_U32},
@@ -922,7 +924,7 @@ static int dcbnl_bcn_getcfg(struct net_device *netdev, struct nlattr **tb,
922 goto err_bcn; 924 goto err_bcn;
923 } 925 }
924 926
925 for (i = DCB_BCN_ATTR_ALPHA; i <= DCB_BCN_ATTR_RI; i++) { 927 for (i = DCB_BCN_ATTR_BCNA_0; i <= DCB_BCN_ATTR_RI; i++) {
926 if (!getall && !bcn_tb[i]) 928 if (!getall && !bcn_tb[i])
927 continue; 929 continue;
928 930
@@ -980,7 +982,7 @@ static int dcbnl_bcn_setcfg(struct net_device *netdev, struct nlattr **tb,
980 data[i]->nla_type - DCB_BCN_ATTR_RP_0, value_byte); 982 data[i]->nla_type - DCB_BCN_ATTR_RP_0, value_byte);
981 } 983 }
982 984
983 for (i = DCB_BCN_ATTR_ALPHA; i <= DCB_BCN_ATTR_RI; i++) { 985 for (i = DCB_BCN_ATTR_BCNA_0; i <= DCB_BCN_ATTR_RI; i++) {
984 if (data[i] == NULL) 986 if (data[i] == NULL)
985 continue; 987 continue;
986 value_int = nla_get_u32(data[i]); 988 value_int = nla_get_u32(data[i]);