1. 08 9月, 2015 1 次提交
    • D
      NTB: Add flow control to the ntb_netdev · e74bfeed
      Dave Jiang 提交于
      Right now if we push the NTB really hard, we start dropping packets due
      to not able to process the packets fast enough. We need to st:qop the
      upper layer from flooding us when that happens.
      
      A timer is necessary in order to restart the queue once the resource has
      been processed on the receive side. Due to the way NTB is setup, the
      resources on the tx side are tied to the processing of the rx side and
      there's no async way to know when the rx side has released those
      resources.
      Signed-off-by: NDave Jiang <dave.jiang@intel.com>
      Signed-off-by: NJon Mason <jdmason@kudzu.us>
      e74bfeed
  2. 10 8月, 2015 6 次提交
  3. 05 7月, 2015 11 次提交
  4. 02 7月, 2015 1 次提交
  5. 14 9月, 2014 2 次提交
  6. 08 4月, 2014 2 次提交
  7. 21 11月, 2013 3 次提交
  8. 15 11月, 2013 2 次提交
  9. 06 9月, 2013 4 次提交
  10. 04 9月, 2013 2 次提交
  11. 16 5月, 2013 6 次提交
    • J
      NTB: Multiple NTB client fix · 8b19d450
      Jon Mason 提交于
      Fix issue with adding multiple ntb client devices to the ntb virtual
      bus.  Previously, multiple devices would be added with the same name,
      resulting in crashes.  To get around this issue, add a unique number to
      the device when it is added.
      Signed-off-by: NJon Mason <jon.mason@intel.com>
      8b19d450
    • J
      NTB: memcpy lockup workaround · c336acd3
      Jon Mason 提交于
      The system will appear to lockup for long periods of time due to the NTB
      driver spending too much time in memcpy.  Avoid this by reducing the
      number of packets that can be serviced on a given interrupt.
      Signed-off-by: NJon Mason <jon.mason@intel.com>
      c336acd3
    • J
      NTB: Correctly handle receive buffers of the minimal size · c9d534c8
      Jon Mason 提交于
      The ring logic of the NTB receive buffer/transmit memory window requires
      there to be at least 2 payload sized allotments.  For the minimal size
      case, split the buffer into two and set the transport_mtu to the
      appropriate size.
      Signed-off-by: NJon Mason <jon.mason@intel.com>
      c9d534c8
    • J
      NTB: reset tx_index on link toggle · 90f9e934
      Jon Mason 提交于
      If the NTB link toggles, the driver could stop receiving due to the
      tx_index not being set to 0 on the transmitting size on a link-up event.
      This is due to the driver expecting the incoming data to start at the
      beginning of the receive buffer and not at a random place.
      Signed-off-by: NJon Mason <jon.mason@intel.com>
      90f9e934
    • J
      NTB: Link toggle memory leak · b77b2637
      Jon Mason 提交于
      Each link-up will allocate a new NTB receive buffer when the NTB
      properties are negotiated with the remote system.  These allocations did
      not check for existing buffers and thus did not free them.  Now, the
      driver will check for an existing buffer and free it if not of the
      correct size, before trying to alloc a new one.
      Signed-off-by: NJon Mason <jon.mason@intel.com>
      b77b2637
    • J
      NTB: Handle 64bit BAR sizes · 113fc505
      Jon Mason 提交于
      64bit BAR sizes are permissible with an NTB device.  To support them
      various modifications and clean-ups were required, most significantly
      using 2 32bit scratch pad registers for each BAR.
      
      Also, modify the driver to allow more than 2 Memory Windows.
      Signed-off-by: NJon Mason <jon.mason@intel.com>
      113fc505