1. 22 Sep, 2014 1 commit
  2. 19 Sep, 2014 12 commits
  3. 16 Sep, 2014 1 commit
    • Andy Zhou's avatar
      openvswitch: Add recirc and hash action. · 971427f3
      Andy Zhou authored
      Recirc action allows a packet to reenter openvswitch processing.
      currently openvswitch lookup flow for packet received and execute
      set of actions on that packet, with help of recirc action we can
      process/modify the packet and recirculate it back in openvswitch
      for another pass.
      
      OVS hash action calculates 5-tupple hash and set hash in flow-key
      hash. This can be used along with recirculation for distributing
      packets among different ports for bond devices.
      For example:
      OVS bonding can use following actions:
      Match on: bond flow; Action: hash, recirc(id)
      Match on: recirc-id == id and hash lower bits == a;
                Action: output port_bond_a
      Signed-off-by: default avatarAndy Zhou <azhou@nicira.com>
      Acked-by: default avatarJesse Gross <jesse@nicira.com>
      Signed-off-by: default avatarPravin B Shelar <pshelar@nicira.com>
      971427f3
  4. 15 Sep, 2014 2 commits
    • Alexander Duyck's avatar
      dsa: Replace mii_bus with a generic host device · b4d2394d
      Alexander Duyck authored
      This change makes it so that instead of passing and storing a mii_bus we
      instead pass and store a host_dev.  From there we can test to determine the
      exact type of device, and can verify it is the correct device for our switch.
      
      So for example it would be possible to pass a device pointer from a pci_dev
      and instead of checking for a PHY ID we could check for a vendor and/or device
      ID.
      Signed-off-by: default avatarAlexander Duyck <alexander.h.duyck@intel.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      b4d2394d
    • Alexander Duyck's avatar
      dsa: Split ops up, and avoid assigning tag_protocol and receive separately · 5075314e
      Alexander Duyck authored
      This change addresses several issues.
      
      First, it was possible to set tag_protocol without setting the ops pointer.
      To correct that I have reordered things so that rcv is now populated before
      we set tag_protocol.
      
      Second, it didn't make much sense to keep setting the device ops each time a
      new slave was registered.  So by moving the receive portion out into root
      switch initialization that issue should be addressed.
      
      Third, I wanted to avoid sending tags if the rcv pointer was not registered
      so I changed the tag check to verify if the rcv function pointer is set on
      the root tree.  If it is then we start sending DSA tagged frames.
      
      Finally I split the device ops pointer in the structures into two spots.  I
      placed the rcv function pointer in the root switch since this makes it
      easiest to access from there, and I placed the xmit function pointer in the
      slave for the same reason.
      Signed-off-by: default avatarAlexander Duyck <alexander.h.duyck@intel.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      5075314e
  5. 13 Sep, 2014 11 commits
  6. 10 Sep, 2014 1 commit
  7. 09 Sep, 2014 12 commits