]> git.baikalelectronics.ru Git - kernel.git/commit
dcbnl: add support for ieee8021Qaz attributes
authorJohn Fastabend <john.r.fastabend@intel.com>
Thu, 30 Dec 2010 09:25:46 +0000 (09:25 +0000)
committerDavid S. Miller <davem@davemloft.net>
Fri, 31 Dec 2010 18:47:45 +0000 (10:47 -0800)
commitb7441502a49dde874c330788934df6ad9abe4d71
treefb453671722596b9dcb1af4171bdcfa17cd48d61
parentd962e0640ce15dd302da806dfeb8048de635108d
dcbnl: add support for ieee8021Qaz attributes

The IEEE8021Qaz is the IEEE standard version of CEE. The
standard has had enough significant changes from the CEE
version that many of the CEE attributes have no meaning
in the new spec or do not easily map to IEEE standards.

Rather then attempt to create a complicated mapping
between CEE and IEEE standards this patch adds a nested
IEEE attribute to the list of DCB attributes. The policy
is,

[DCB_ATTR_IFNAME]
[DCB_ATTR_STATE]
...
[DCB_ATTR_IEEE]
[DCB_ATTR_IEEE_ETS]
[DCB_ATTR_IEEE_PFC]
[DCB_ATTR_IEEE_APP_TABLE]
[DCB_ATTR_IEEE_APP]
...

The following dcbnl_rtnl_ops routines were added to handle
the IEEE standard,

int (*ieee_getets) (struct net_device *, struct ieee_ets *);
int (*ieee_setets) (struct net_device *, struct ieee_ets *);
int (*ieee_getpfc) (struct net_device *, struct ieee_pfc *);
int (*ieee_setpfc) (struct net_device *, struct ieee_pfc *);
int (*ieee_getapp) (struct net_device *, struct dcb_app *);
int (*ieee_setapp) (struct net_device *, struct dcb_app *);

Signed-off-by: John Fastabend <john.r.fastabend@intel.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
include/linux/dcbnl.h
include/net/dcbnl.h
net/dcb/dcbnl.c