diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2014-01-31 18:31:23 -0500 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2014-01-31 18:31:23 -0500 |
commit | 4e13c5d0212f25d69a97606b9d5a85edb52a7737 (patch) | |
tree | 002f59b9151f42a6388656762f0e7963d08b89ef /drivers/vhost | |
parent | deb2a1d29bf0168ff2575e714e5c1f156be663fb (diff) | |
parent | 5259a06ef97068b710f45d092a587e8d740f750f (diff) |
Merge branch 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/nab/target-pending
Pull SCSI target updates from Nicholas Bellinger:
"The highlights this round include:
- add support for SCSI Referrals (Hannes)
- add support for T10 DIF into target core (nab + mkp)
- add support for T10 DIF emulation in FILEIO + RAMDISK backends (Sagi + nab)
- add support for T10 DIF -> bio_integrity passthrough in IBLOCK backend (nab)
- prep changes to iser-target for >= v3.15 T10 DIF support (Sagi)
- add support for qla2xxx N_Port ID Virtualization - NPIV (Saurav + Quinn)
- allow percpu_ida_alloc() to receive task state bitmask (Kent)
- fix >= v3.12 iscsi-target session reset hung task regression (nab)
- fix >= v3.13 percpu_ref se_lun->lun_ref_active race (nab)
- fix a long-standing network portal creation race (Andy)"
* 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/nab/target-pending: (51 commits)
target: Fix percpu_ref_put race in transport_lun_remove_cmd
target/iscsi: Fix network portal creation race
target: Report bad sector in sense data for DIF errors
iscsi-target: Convert gfp_t parameter to task state bitmask
iscsi-target: Fix connection reset hang with percpu_ida_alloc
percpu_ida: Make percpu_ida_alloc + callers accept task state bitmask
iscsi-target: Pre-allocate more tags to avoid ack starvation
qla2xxx: Configure NPIV fc_vport via tcm_qla2xxx_npiv_make_lport
qla2xxx: Enhancements to enable NPIV support for QLOGIC ISPs with TCM/LIO.
qla2xxx: Fix scsi_host leak on qlt_lport_register callback failure
IB/isert: pass scatterlist instead of cmd to fast_reg_mr routine
IB/isert: Move fastreg descriptor creation to a function
IB/isert: Avoid frwr notation, user fastreg
IB/isert: seperate connection protection domains and dma MRs
tcm_loop: Enable DIF/DIX modes in SCSI host LLD
target/rd: Add DIF protection into rd_execute_rw
target/rd: Add support for protection SGL setup + release
target/rd: Refactor rd_build_device_space + rd_release_device_space
target/file: Add DIF protection support to fd_execute_rw
target/file: Add DIF protection init/format support
...
Diffstat (limited to 'drivers/vhost')
-rw-r--r-- | drivers/vhost/scsi.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/vhost/scsi.c b/drivers/vhost/scsi.c index 1e4c75c5b36b..0a025b8e2a12 100644 --- a/drivers/vhost/scsi.c +++ b/drivers/vhost/scsi.c | |||
@@ -728,7 +728,7 @@ vhost_scsi_get_tag(struct vhost_virtqueue *vq, | |||
728 | } | 728 | } |
729 | se_sess = tv_nexus->tvn_se_sess; | 729 | se_sess = tv_nexus->tvn_se_sess; |
730 | 730 | ||
731 | tag = percpu_ida_alloc(&se_sess->sess_tag_pool, GFP_ATOMIC); | 731 | tag = percpu_ida_alloc(&se_sess->sess_tag_pool, TASK_RUNNING); |
732 | if (tag < 0) { | 732 | if (tag < 0) { |
733 | pr_err("Unable to obtain tag for tcm_vhost_cmd\n"); | 733 | pr_err("Unable to obtain tag for tcm_vhost_cmd\n"); |
734 | return ERR_PTR(-ENOMEM); | 734 | return ERR_PTR(-ENOMEM); |
@@ -889,7 +889,7 @@ static void tcm_vhost_submission_work(struct work_struct *work) | |||
889 | cmd->tvc_lun, cmd->tvc_exp_data_len, | 889 | cmd->tvc_lun, cmd->tvc_exp_data_len, |
890 | cmd->tvc_task_attr, cmd->tvc_data_direction, | 890 | cmd->tvc_task_attr, cmd->tvc_data_direction, |
891 | TARGET_SCF_ACK_KREF, sg_ptr, cmd->tvc_sgl_count, | 891 | TARGET_SCF_ACK_KREF, sg_ptr, cmd->tvc_sgl_count, |
892 | sg_bidi_ptr, sg_no_bidi); | 892 | sg_bidi_ptr, sg_no_bidi, NULL, 0); |
893 | if (rc < 0) { | 893 | if (rc < 0) { |
894 | transport_send_check_condition_and_sense(se_cmd, | 894 | transport_send_check_condition_and_sense(se_cmd, |
895 | TCM_LOGICAL_UNIT_COMMUNICATION_FAILURE, 0); | 895 | TCM_LOGICAL_UNIT_COMMUNICATION_FAILURE, 0); |