1. 20 Nov, 2013 9 commits
  2. 14 Nov, 2013 1 commit
  3. 13 Nov, 2013 4 commits
    • Nicholas Bellinger's avatar
      target: Fix delayed Task Aborted Status (TAS) handling bug · 29f4c090
      Nicholas Bellinger authored
      This patch fixes a bug in delayed Task Aborted Status (TAS) handling,
      where transport_send_task_abort() was not returning for the case
      when the se_tfo->write_pending() callback indicated that last fabric
      specific WRITE PDU had not yet been received.
      
      It also adds an explicit cmd->scsi_status = SAM_STAT_TASK_ABORTED
      assignment within transport_check_aborted_status() to avoid the case
      where se_tfo->queue_status() is called when the SAM_STAT_TASK_ABORTED
      assignment + ->queue_status() in transport_send_task_abort() does not
      occur once SCF_SENT_DELAYED_TAS has been set.
      
      Cc: <stable@vger.kernel.org> #3.2+
      Signed-off-by: default avatarNicholas Bellinger <nab@linux-iscsi.org>
      29f4c090
    • Nicholas Bellinger's avatar
      iscsi-target: Reject unsupported multi PDU text command sequence · 122f8afc
      Nicholas Bellinger authored
      This patch adds a check to reject text commands with F_BIT=0 ||
      C_BIT=1, as multi PDU text command sequences are currently
      unsupported.
      
      This avoids the case where a text command received with F_BIT=0,
      was generating a text response with F_BIT=1 which is a protocol
      error according to RFC-3720 Section 10.11.1.
      Reported-by: default avatarArshad Hussain <arshad.hussain@calsoftinc.com>
      Signed-off-by: default avatarNicholas Bellinger <nab@linux-iscsi.org>
      122f8afc
    • Nicholas Bellinger's avatar
      ib_isert: Avoid duplicate iscsit_increment_maxcmdsn call · 04d9cd12
      Nicholas Bellinger authored
      This patch avoids a duplicate iscsit_increment_maxcmdsn() call for
      ISER_IB_RDMA_WRITE within isert_map_rdma() + isert_reg_rdma_frwr(),
      which will already be occuring once during isert_put_datain() ->
      iscsit_build_rsp_pdu() operation.
      
      It also removes the local conn->stat_sn assignment + increment,
      and changes the third parameter to iscsit_build_rsp_pdu() to
      signal this should be done by iscsi_target_mode code.
      Tested-by: default avatarMoussa Ba <moussaba@micron.com>
      Cc: <stable@vger.kernel.org> # v3.10+
      Signed-off-by: default avatarNicholas Bellinger <nab@linux-iscsi.org>
      04d9cd12
    • Nicholas Bellinger's avatar
      iscsi-target: Fix mutex_trylock usage in iscsit_increment_maxcmdsn · 5e8e6b4b
      Nicholas Bellinger authored
      This patch fixes a >= v3.10 regression bug with mutex_trylock() usage
      within iscsit_increment_maxcmdsn(), that was originally added to allow
      for a special case where ->cmdsn_mutex was already held from the
      iscsit_execute_cmd() exception path for ib_isert.
      
      When !mutex_trylock() was occuring under contention during normal RX/TX
      process context codepaths, the bug was manifesting itself as the following
      protocol error:
      
        Received CmdSN: 0x000fcbb7 is greater than MaxCmdSN: 0x000fcbb6, protocol error.
        Received CmdSN: 0x000fcbb8 is greater than MaxCmdSN: 0x000fcbb6, protocol error.
      
      This patch simply avoids the direct ib_isert callback in lio_queue_status()
      for the special iscsi_execute_cmd() exception cases, that allows the problematic
      mutex_trylock() usage in iscsit_increment_maxcmdsn() to go away.
      Reported-by: default avatarMoussa Ba <moussaba@micron.com>
      Tested-by: default avatarMoussa Ba <moussaba@micron.com>
      Cc: <stable@vger.kernel.org> # v3.10+
      Signed-off-by: default avatarNicholas Bellinger <nab@linux-iscsi.org>
      5e8e6b4b
  4. 12 Nov, 2013 3 commits
  5. 08 Nov, 2013 1 commit
  6. 07 Nov, 2013 4 commits
  7. 06 Nov, 2013 1 commit
    • Nicholas Bellinger's avatar
      ib_isert: Add support for completion interrupt coalescing · 95b60f07
      Nicholas Bellinger authored
      This patch adds support for completion interrupt coalescing that
      allows only every ISERT_COMP_BATCH_COUNT (8) to set IB_SEND_SIGNALED,
      thus avoiding completion interrupts for every posted iser_tx_desc.
      
      The batch processing is done using a per isert_conn llist that once
      IB_SEND_SIGNALED has been set is saved to tx_desc->comp_llnode_batch,
      and completion processing of previously posted iser_tx_descs is done
      in a single shot from within isert_send_completion() code.
      
      Note this is only done for response PDUs from ISCSI_OP_SCSI_CMD, and
      all other control type of PDU responses will force an implicit batch
      drain to occur.
      
      Cc: Or Gerlitz <ogerlitz@mellanox.com>
      Cc: Sagi Grimberg <sagig@mellanox.com>
      Cc: Kent Overstreet <kmo@daterainc.com>
      Cc: Roland Dreier <roland@purestorage.com>
      Signed-off-by: default avatarNicholas Bellinger <nab@linux-iscsi.org>
      95b60f07
  8. 24 Oct, 2013 3 commits
  9. 16 Oct, 2013 9 commits
  10. 03 Oct, 2013 1 commit
  11. 02 Oct, 2013 1 commit
    • Nicholas Bellinger's avatar
      tcm_fc: Convert to per-cpu command map pre-allocation of ft_cmd · 5f544cfa
      Nicholas Bellinger authored
      This patch converts tcm_fc to use transport_init_session_tags()
      pre-allocation logic for struct ft_cmd descriptors using per-cpu
      session tag pooling in order to effectively avoid memory allocation
      + release for each received I/O.
      
      It adds percpu_ida_alloc() in ft_recv_cmd() to obtain an tag and
      locate ft_cmd from se_sess->sess_cmd_map[], and percpu_ida_free()
      in ft_free_cmd() to release the tag based upon se_cmd->map_tag id.
      
      It also uses a TCM_FC_DEFAULT_TAGS value of 512, that puts the
      per se_sess->sess_cmd_map allocation at ~360K on 64-bit.
      
      v2 changes:
      
        - Handle possible tag < 0 failure with GFP_ATOMIC
      
      Cc: Mark Rustad <mark.d.rustad@intel.com>
      Cc: Robert Love <robert.w.love@intel.com>
      Cc: Kent Overstreet <kmo@daterainc.com>
      Signed-off-by: default avatarNicholas Bellinger <nab@daterainc.com>
      5f544cfa
  12. 29 Sep, 2013 3 commits
    • Linus Torvalds's avatar
      Linux 3.12-rc3 · 15c03dd4
      Linus Torvalds authored
      15c03dd4
    • Linus Torvalds's avatar
      Merge tag 'usb-3.12-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb · 30ceb4ec
      Linus Torvalds authored
      Pull USB fixes from Greg KH:
       "Here are a number of USB driver fixes for 3.12-rc3.
      
        These are all for host controller issues that have been reported, and
        there's a fix for an annoying error message that gets printed every
        time you remove a USB 3 device from the system that's been bugging me
        for a while"
      
      * tag 'usb-3.12-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb:
        usb: dwc3: add support for Merrifield
        USB: fsl/ehci: fix failure of checking PHY_CLK_VALID during reinitialization
        USB: Fix breakage in ffs_fs_mount()
        fsl/usb: Resolve PHY_CLK_VLD instability issue for ULPI phy
        usb/core/devio.c: Don't reject control message to endpoint with wrong direction bit
        usb: chipidea: USB_CHIPIDEA should depend on HAS_DMA
        usb: chipidea: udc: free pending TD at removal procedure
        usb: chipidea: imx: Add usb_phy_shutdown at probe's error path
        usb: chipidea: Fix memleak for ci->hw_bank.regmap when removal
        usb: chipidea: udc: fix the oops after rmmod gadget
        USB: fix PM config symbol in uhci-hcd, ehci-hcd, and xhci-hcd
        USB: OHCI: accept very late isochronous URBs
        USB: UHCI: accept very late isochronous URBs
        USB: iMX21: accept very late isochronous URBs
        usbcore: check usb device's state before sending a Set SEL control transfer
        xhci: Fix race between ep halt and URB cancellation
        usb: Fix xHCI host issues on remote wakeup.
        xhci: Ensure a command structure points to the correct trb on the command ring
        xhci: Fix oops happening after address device timeout
      30ceb4ec
    • Linus Torvalds's avatar
      Merge tag 'tty-3.12-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty · 26c019fc
      Linus Torvalds authored
      Pull tty/serial fixes from Greg KH:
       "Here are some serial at tty driver fixes for 3.12-rc3
      
        The serial driver fixes some kref leaks, documentation is moved to the
        proper places, and the tty and n_tty fixes resolve some reported
        regressions.  There is still one outstanding tty regression fix that
        isn't in here yet, as I want to test it out some more, it will be sent
        for 3.12-rc4 if it checks out"
      
      * tag 'tty-3.12-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty:
        tty: ar933x_uart: move devicetree binding documentation
        tty: Fix SIGTTOU not sent with tcflush()
        n_tty: Fix EOF push index when termios changes
        serial: pch_uart: remove unnecessary tty_port_tty_get
        serial: pch_uart: fix tty-kref leak in dma-rx path
        serial: pch_uart: fix tty-kref leak in rx-error path
        serial: tegra: fix tty-kref leak
      26c019fc