06 Jul, 2011

1 commit

  • The following couple of patches add dcbnl an unsolicited notification of
    the the DCB configuration for the CEE flavor of the DCBX protocol. This
    is useful when the user-mode DCB client is not responsible for
    conducting and resolving the DCBX negotiation (either because the DCBX
    stack is embedded in the HW or the negotiation is handled by another
    agent in the host), but still needs to get the negotiated parameters.
    This functionality already exists for the IEEE flavor of the DCBX
    protocol and these patches add it to the older CEE flavor.

    The first patch extends the CEE attribute GET operation to include not
    only the peer information, but also all the pertinent local
    configuration (negotiated parameters). The second patch adds and export
    a CEE specific notification routine.

    Signed-off-by: Shmulik Ravid
    Signed-off-by: David S. Miller

    Shmulik Ravid
     

22 Jun, 2011

1 commit


15 Mar, 2011

3 commits


03 Mar, 2011

2 commits

  • This patch adds the support for retrieving the remote or peer DCBX
    configuration via dcbnl for embedded DCBX stacks supporting the CEE DCBX
    standard.

    Signed-off-by: Shmulik Ravid
    Signed-off-by: David S. Miller

    Shmulik Ravid
     
  • These 2 patches add the support for retrieving the remote or peer DCBX
    configuration via dcbnl for embedded DCBX stacks. The peer configuration
    is part of the DCBX MIB and is useful for debugging and diagnostics of
    the overall DCB configuration. The first patch add this support for IEEE
    802.1Qaz standard the second patch add the same support for the older
    CEE standard. Diff for v2 - the peer-app-info is CEE specific.

    Signed-off-by: Shmulik Ravid
    Signed-off-by: David S. Miller

    Shmulik Ravid
     

20 Feb, 2011

2 commits


12 Feb, 2011

1 commit

  • Implements 802.1Qaz support for ixgbe driver. Additionally,
    this adds IEEE_8021QAZ_TSA_{} defines to dcbnl.h this is to
    avoid having to use cryptic numeric codes for the TSA type.

    Signed-off-by: John Fastabend
    Tested-by: Ross Brattain
    Signed-off-by: Jeff Kirsher

    John Fastabend
     

01 Jan, 2011

4 commits

  • Adding a pair of set-get routines to dcbnl for setting the negotiation
    flags of the various DCB features. Conforms to the CEE flavor of DCBX
    The user sets these flags (enable, advertise, willing) for each feature
    to be used by the DCBX engine. The 'get' routine returns which of the
    features is enabled after the negotiation.

    This patch is dependent on the following patches:
    [net-next-2.6 PATCH 1/3] dcbnl: add support for ieee8021Qaz attributes
    [net-next-2.6 PATCH 2/3] dcbnl: add appliction tlv handlers
    [net-next-2.6 PATCH 3/3] net_dcb: add application notifiers

    Signed-off-by: Shmulik Ravid
    Signed-off-by: David S. Miller

    Shmulik Ravid
     
  • Adding an optional DCBX capability and a pair for get-set routines for
    setting the device DCBX mode. The DCBX capability is a bit field of
    supported attributes. The user is expected to set the DCBX mode with a
    subset of the advertised attributes.

    This patch is dependent on the following patches:
    [net-next-2.6 PATCH 1/3] dcbnl: add support for ieee8021Qaz attributes
    [net-next-2.6 PATCH 2/3] dcbnl: add appliction tlv handlers
    [net-next-2.6 PATCH 3/3] net_dcb: add application notifiers

    Signed-off-by: Shmulik Ravid
    Acked-by: John Fastabend
    Signed-off-by: David S. Miller

    Shmulik Ravid
     
  • This patch adds application tlv handlers. Networking stacks
    may use the application priority to set the skb priority of
    their stack using the negoatiated dcbx priority.

    This patch provides the dcb_{get|set}app() routines for the
    stack to query these parameters. Notice lower layer drivers
    can use the dcbnl_ops routines if additional handling is
    needed. Perhaps in the firmware case for example

    Signed-off-by: John Fastabend
    Signed-off-by: Shmulik Ravid
    Signed-off-by: David S. Miller

    John Fastabend
     
  • 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
    Signed-off-by: David S. Miller

    John Fastabend
     

23 Apr, 2010

1 commit


01 Sep, 2009

1 commit

  • This patch adds dcbnl command definitions to support setapp/getapp
    functionality from the IEEE 802.1Qaz Data Center Bridging Capability
    Exchange protocol (DCBX) specification. Section 3.3 defines the
    application protocol and its 802.1p user priority in DCBX, which is
    implemented here as a pair of setapp/getapp commands in the kernel
    dcbnl for setting and retrieving the user priority for an given
    application protocol. The protocol is identified by the combination of
    an id and an idtype. Currently, when idtype is 0, the corresponding
    id gives the ether type of this protocol, e.g., for FCoE, it will be
    0x8906; when idtype is 1, then the corresponding id gives the TCP or
    UDP port number.

    For more information regarding DCBX spec., please refer to the following:
    http://www.ieee802.org/1/files/public/docs2008/
    az-wadekar-dcbx-capability-exchange-discovery-protocol-1108-v1.01.pdf

    Signed-off-by: Yi Zou
    Acked-by: Peter P Waskiewicz Jr
    Signed-off-by: Jeff Kirsher
    Signed-off-by: David S. Miller

    Yi Zou
     

01 Mar, 2009

1 commit

  • 1) add an include for
    2) change dcbmsg.dcb_family from unsigned char to __u8 to be more
    consistent with use of kernel types

    Signed-off-by: Chris Leech
    Acked-by: Sam Ravnborg
    Signed-off-by: David S. Miller

    Chris Leech
     

22 Dec, 2008

1 commit

  • 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
    Signed-off-by: Eric W Multanen
    Signed-off-by: Jeff Kirsher

    Don Skidmore
     

21 Nov, 2008

5 commits

  • Adds an interface to configure the Backward Congestion Notification
    (BCN) feature. In a BCN capabale network, congestion notifications
    from congested points out in the network can cause the end station
    limit the rate of a given traffic flow.

    Signed-off-by: Alexander Duyck
    Signed-off-by: Jeff Kirsher
    Signed-off-by: Peter P Waskiewicz Jr
    Signed-off-by: David S. Miller

    Alexander Duyck
     
  • Adds a netlink interface for Data Center Bridging (DCB) to get and set
    the enable state of the Priority Flow Control (PFC) feature.
    Primarily, this is a way to turn off PFC in the driver while DCB
    remains enabled.

    Signed-off-by: Alexander Duyck
    Signed-off-by: Jeff Kirsher
    Signed-off-by: Peter P Waskiewicz Jr
    Signed-off-by: David S. Miller

    Alexander Duyck
     
  • Adds interface for Data Center Bridging (DCB) to query (and set if
    supported) the number of traffic classes currently supported by the
    device for the two (DCB) features: priority groups (PG) and priority
    flow control (PFC).

    Signed-off-by: Alexander Duyck
    Signed-off-by: Jeff Kirsher
    Signed-off-by: Peter P Waskiewicz Jr
    Signed-off-by: David S. Miller

    Alexander Duyck
     
  • Adds to the netlink interface for Data Center Bridging (DCB), allowing
    the DCB capabilities supported by a device to be queried.

    Signed-off-by: Alexander Duyck
    Signed-off-by: Jeff Kirsher
    Signed-off-by: Peter P Waskiewicz Jr
    Signed-off-by: David S. Miller

    Alexander Duyck
     
  • This adds support for Data Center Bridging (DCB) features in the ixgbe
    driver and adds an rtnetlink interface for configuring DCB to the
    kernel. The DCB feature support included are Priority Grouping (PG) -
    which allows bandwidth guarantees to be allocated to groups to traffic
    based on the 802.1q priority, and Priority Based Flow Control (PFC) -
    which introduces a new MAC control PAUSE frame which works at
    granularity of the 802.1p priority instead of the link (IEEE 802.3x).

    Signed-off-by: Alexander Duyck
    Signed-off-by: Jeff Kirsher
    Signed-off-by: Peter P Waskiewicz Jr
    Signed-off-by: David S. Miller

    Alexander Duyck