1. 02 4月, 2014 2 次提交
    • R
      IB/iser: Drain the tx cq once before looping on the rx cq · 1d6c2b73
      Roi Dayan 提交于
      The iser disconnection flow isn't done before all the inflight
      recv/send buffers posted to the QP are either flushed or normally
      completed to the CQ that serves this connection.  The condition check
      is done in iser_handle_comp_error().
      
      Currently, it's possible for the send buffer completion that makes the
      posted send buffers counter reach zero to be polled in the drain tx
      call, which is after the rx cq is fully drained.  Since this
      completion might be not an error one (for example, it might be a
      completion of the logout request iSCSI PDU) we will skip
      iser_handle_comp_error().  So the connection will never terminate from
      the iscsi stack point of view, and we hang.
      
      To resolve this race, do the draining of the tx cq before the loop on
      the rx cq.
      Signed-off-by: NRoi Dayan <roid@mellanox.com>
      Signed-off-by: NOr Gerlitz <ogerlitz@mellanox.com>
      Signed-off-by: NRoland Dreier <roland@purestorage.com>
      1d6c2b73
    • R
      IB/iser: Fix sector_t format warning · 39c978cd
      Randy Dunlap 提交于
      Fix pr_err (printk) format warning:
      
          drivers/infiniband/ulp/iser/iser_verbs.c:1181:4: warning: format '%lx' expects argument of type 'long unsigned int', but argument 3 has type 'sector_t' [-Wformat]
      Signed-off-by: NRandy Dunlap <rdunlap@infradead.org>
      Signed-off-by: NRoland Dreier <roland@purestorage.com>
      39c978cd
  2. 18 3月, 2014 13 次提交
  3. 15 2月, 2014 2 次提交
  4. 03 9月, 2013 2 次提交
  5. 26 8月, 2013 1 次提交
  6. 10 8月, 2013 7 次提交
  7. 05 6月, 2013 2 次提交
  8. 02 5月, 2013 4 次提交
  9. 22 2月, 2013 3 次提交
  10. 04 10月, 2012 1 次提交
  11. 19 5月, 2012 1 次提交
  12. 20 3月, 2012 1 次提交
  13. 06 3月, 2012 1 次提交
    • O
      IB/iser: Post initial receive buffers before sending the final login request · 89e984e2
      Or Gerlitz 提交于
      An iser target may send iscsi NO-OP PDUs as soon as it marks the iSER
      iSCSI session as fully operative.  This means that there is window
      where there are no posted receive buffers on the initiator side, so
      it's possible for the iSER RC connection to break because of RNR NAK /
      retry errors.  To fix this, rely on the flags bits in the login
      request to have FFP (0x3) in the lower nibble as a marker for the
      final login request, and post an initial chunk of receive buffers
      before sending that login request instead of after getting the login
      response.
      Signed-off-by: NOr Gerlitz <ogerlitz@mellanox.com>
      Cc: <stable@vger.kernel.org>
      Signed-off-by: NRoland Dreier <roland@purestorage.com>
      89e984e2