All of lore.kernel.org
 help / color / mirror / Atom feed
* [GIT PULL] target updates for v3.16-rc1
@ 2014-06-12 21:05 Nicholas A. Bellinger
  2014-06-13 13:39 ` Christoph Hellwig
  0 siblings, 1 reply; 8+ messages in thread
From: Nicholas A. Bellinger @ 2014-06-12 21:05 UTC (permalink / raw)
  To: Linus Torvalds
  Cc: target-devel, linux-scsi, LKML, Stephen Rothwell, Paolo Bonzini,
	Quinn Tran, Michael S. Tsirkin, Rusty Russell, Christoph Hellwig

Hello Linus,

Here are the target-pending updates for v3.16-rc1 code.  Please go ahead
and pull from:

  git://git.kernel.org/pub/scm/linux/kernel/git/nab/target-pending.git for-next

Note that you'll need to 'thread the needle' this time around, as there
are no less than four different merge conflicts / build breakages that
have been reported in linux-next (srf CC'ed) over the last weeks.

The first is with virtio-scsi between what has been merged in scsi.git
for "virtio_scsi: use cmd_size", and the "virtio-scsi: Enable DIF/DIX
modes in SCSI host LLD" below.  (Adding Paolo + hch CC')

http://marc.info/?l=linux-kernel&m=140083605208042&w=2

The second is with qla2xxx between what has been merged in scsi.git
for "qla2xxx: T10-Dif: add T10-PI support", and the "qla2xxx: Convert to
percpu_ida session tag pre-allocation" below.  (Adding Quinn CC')

http://marc.info/?l=linux-next&m=140109133803347&w=2

The third is with vhost-scsi between what has been merged in vhost.git
for "vhost: move acked_features to VQs", and the "vhost/scsi: Enable T10
PI IOV -> SGL memory mapping" below.  (Adding MST CC')
 
http://marc.info/?l=linux-next&m=140237354814532&w=2

And the last is with virtio-scsi between what has been merged in
virtio.git for "virtio_scsi: don't call virtqueue_add_sgs(... GFP_NOIO)
holding spinlock.", and the "virtio-scsi: Enable DIF/DIX modes in SCSI
host LLD" below.  (Adding Rusty CC')

http://marc.info/?l=linux-next&m=140254666208366&w=2

All the conflicts aside, the highlights this round include:

  - Add support for T10 PI pass-through between vhost-scsi + virtio-scsi
    (MST + Paolo + MKP + nab)
  - Add support for T10 PI in qla2xxx target mode (Quinn + MKP + hch + nab,
    merged through scsi.git)
  - Add support for percpu-ida pre-allocation in qla2xxx target code
    (Quinn + nab)
  - A number of iser-target fixes related to hardening the network portal
    shutdown path (Sagi + Slava)
  - Fix response length residual handling for a number of control CDBs
    (Roland + Christophe V.)
  - Various iscsi RFC conformance fixes in the CHAP authentication path
    (Tejas and Calsoft folks + nab)
  - Return TASK_SET_FULL status for tcm_fc(FCoE) DataIn + Response failures
    (Vasu + Jun + nab)
  - Fix long-standing ABORT_TASK + session reset hang (nab)
  - Convert iser-initiator + iser-target to include T10 bytes into EDTL
    (Sagi + Or + MKP + Mike Christie)
  - Fix NULL pointer dereference regression related to XCOPY introduced
    in v3.15 + CC'ed to v3.12.y (nab)

Thank you,

--nab

Christophe Vu-Brugier (4):
  target/spc: Simplify INQUIRY EVPD=0x80
  target: cleanup some boolean tests
  target/sbc: Remove sbc_check_valid_sectors()
  target/sbc: Check that the LBA and number of blocks are correct in
    VERIFY

Nicholas Bellinger (17):
  virtio-scsi.h: Add virtio_scsi_cmd_req_pi + VIRTIO_SCSI_F_T10_PI bits
  vhost/scsi: Move sanity check into vhost_scsi_map_iov_to_sgl
  vhost/scsi: Add preallocation of protection SGLs
  vhost/scsi: Add T10 PI IOV -> SGL memory mapping logic
  vhost/scsi: Enable T10 PI IOV -> SGL memory mapping
  virtio-scsi: Enable DIF/DIX modes in SCSI host LLD
  qla2xxx: Convert to percpu_ida session tag pre-allocation
  iscsi-target: Reject zero-length payloads during SecurityNegotiation
  iscsi-target: Remove no-op from iscsit_tpg_del_portal_group
  iscsi-target: Reject mutual authentication with reflected CHAP_C
  tcm_fc: Generate TASK_SET_FULL status for DataIN failures
  tcm_fc: Generate TASK_SET_FULL status for response failures
  target: Set CMD_T_ACTIVE bit for Task Management Requests
  target: Use complete_all for se_cmd->t_transport_stop_comp
  iscsi-target: Fix ABORT_TASK + connection reset iscsi_queue_req
    memory leak
  vhost-scsi: Include prot_bytes into expected data transfer length
  target: Fix NULL pointer dereference for XCOPY in target_put_sess_cmd

Roland Dreier (2):
  iscsi-target: Put length of failed allocation in error message
  target: Report correct response length for some commands

Sagi Grimberg (10):
  Target/iser: Bail from accept_np if np_thread is trying to close
  Target/iser: Fix hangs in connection teardown
  Target/iser: Improve cm events handling
  Target/iser: Wait for proper cleanup before unloading
  Target/iser: Gracefully reject T10-PI enabled connect request if not
    supported
  Target/iser: Fix a wrong dereference in case discovery session is
    over iser
  Target/iscsi: Fix sendtargets response pdu for iser transport
  scsi_cmnd: Introduce scsi_transfer_length helper
  libiscsi, iser: Adjust data_length to include protection information
  TARGET/sbc,loopback: Adjust command data length in case pi exists on
    the wire

Tejas Vaykole (1):
  iscsi-target: Fix CHAP_A parameter list handling

 drivers/infiniband/ulp/iser/iser_initiator.c   |   34 +--
 drivers/infiniband/ulp/isert/ib_isert.c        |   70 +++---
 drivers/infiniband/ulp/isert/ib_isert.h        |    2 +-
 drivers/scsi/Kconfig                           |    1 +
 drivers/scsi/libiscsi.c                        |   18 +-
 drivers/scsi/qla2xxx/qla_target.c              |  195 ++++++++++-----
 drivers/scsi/qla2xxx/qla_target.h              |    6 +
 drivers/scsi/qla2xxx/tcm_qla2xxx.c             |    6 +-
 drivers/scsi/qla2xxx/tcm_qla2xxx.h             |    5 +
 drivers/scsi/virtio_scsi.c                     |   87 +++++--
 drivers/target/iscsi/iscsi_target.c            |   29 ++-
 drivers/target/iscsi/iscsi_target_auth.c       |   74 +++++-
 drivers/target/iscsi/iscsi_target_auth.h       |    1 +
 drivers/target/iscsi/iscsi_target_login.c      |    2 +-
 drivers/target/iscsi/iscsi_target_nego.c       |   12 +-
 drivers/target/iscsi/iscsi_target_parameters.c |   14 +-
 drivers/target/iscsi/iscsi_target_tpg.c        |    8 +-
 drivers/target/iscsi/iscsi_target_tpg.h        |    1 -
 drivers/target/loopback/tcm_loop.c             |   15 +-
 drivers/target/target_core_sbc.c               |   68 ++----
 drivers/target/target_core_spc.c               |   18 +-
 drivers/target/target_core_transport.c         |   37 ++-
 drivers/target/target_core_xcopy.c             |   10 +-
 drivers/target/tcm_fc/tfc_cmd.c                |   19 +-
 drivers/target/tcm_fc/tfc_io.c                 |   17 +-
 drivers/vhost/scsi.c                           |  308 ++++++++++++++++--------
 include/linux/virtio_scsi.h                    |   15 +-
 include/scsi/scsi_cmnd.h                       |   17 ++
 include/target/iscsi/iscsi_transport.h         |    3 +-
 include/target/target_core_backend.h           |    1 +
 30 files changed, 728 insertions(+), 365 deletions(-)


^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [GIT PULL] target updates for v3.16-rc1
  2014-06-12 21:05 [GIT PULL] target updates for v3.16-rc1 Nicholas A. Bellinger
@ 2014-06-13 13:39 ` Christoph Hellwig
  2014-06-13 15:21   ` James Bottomley
  2014-06-13 18:07   ` Nicholas A. Bellinger
  0 siblings, 2 replies; 8+ messages in thread
From: Christoph Hellwig @ 2014-06-13 13:39 UTC (permalink / raw)
  To: Nicholas A. Bellinger
  Cc: Linus Torvalds, target-devel, linux-scsi, LKML, Stephen Rothwell,
	Paolo Bonzini, Quinn Tran, Michael S. Tsirkin, Rusty Russell,
	Christoph Hellwig

On Thu, Jun 12, 2014 at 02:05:16PM -0700, Nicholas A. Bellinger wrote:
> The first is with virtio-scsi between what has been merged in scsi.git
> for "virtio_scsi: use cmd_size", and the "virtio-scsi: Enable DIF/DIX
> modes in SCSI host LLD" below.  (Adding Paolo + hch CC')

Just curious, why did we decide to take the virtio-scsi patches
through the target tree?  Seems like taking them through the scsi
tree would have been a lot simpler.


^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [GIT PULL] target updates for v3.16-rc1
  2014-06-13 13:39 ` Christoph Hellwig
@ 2014-06-13 15:21   ` James Bottomley
  2014-06-13 16:41     ` Christoph Hellwig
  2014-06-13 18:07   ` Nicholas A. Bellinger
  1 sibling, 1 reply; 8+ messages in thread
From: James Bottomley @ 2014-06-13 15:21 UTC (permalink / raw)
  To: Christoph Hellwig
  Cc: Nicholas A. Bellinger, Linus Torvalds, target-devel, linux-scsi,
	LKML, Stephen Rothwell, Paolo Bonzini, Quinn Tran,
	Michael S. Tsirkin, Rusty Russell

On Fri, 2014-06-13 at 15:39 +0200, Christoph Hellwig wrote:
> On Thu, Jun 12, 2014 at 02:05:16PM -0700, Nicholas A. Bellinger wrote:
> > The first is with virtio-scsi between what has been merged in scsi.git
> > for "virtio_scsi: use cmd_size", and the "virtio-scsi: Enable DIF/DIX
> > modes in SCSI host LLD" below.  (Adding Paolo + hch CC')
> 
> Just curious, why did we decide to take the virtio-scsi patches
> through the target tree?  Seems like taking them through the scsi
> tree would have been a lot simpler.

We've been ineffectively trying to split them between target and
initiator, since it's effectively both.  Now that we seem to have a
workable process, why don't we just take everything (target scsi-queue
and vhost) through the SCSI tree, that way we don't get into these
problems in future.

James



^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [GIT PULL] target updates for v3.16-rc1
  2014-06-13 15:21   ` James Bottomley
@ 2014-06-13 16:41     ` Christoph Hellwig
  2014-06-13 17:04       ` James Bottomley
  0 siblings, 1 reply; 8+ messages in thread
From: Christoph Hellwig @ 2014-06-13 16:41 UTC (permalink / raw)
  To: James Bottomley
  Cc: Christoph Hellwig, Nicholas A. Bellinger, Linus Torvalds,
	target-devel, linux-scsi, LKML, Stephen Rothwell, Paolo Bonzini,
	Quinn Tran, Michael S. Tsirkin, Rusty Russell

On Fri, Jun 13, 2014 at 08:21:01AM -0700, James Bottomley wrote:
> We've been ineffectively trying to split them between target and
> initiator, since it's effectively both.  Now that we seem to have a
> workable process, why don't we just take everything (target scsi-queue
> and vhost) through the SCSI tree, that way we don't get into these
> problems in future.

virtio-scsi has nothing to do with the target.  I also think sending
target updates through the scsi tree doesn't seem very useful, as there's
is no shared code to start with.


^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [GIT PULL] target updates for v3.16-rc1
  2014-06-13 16:41     ` Christoph Hellwig
@ 2014-06-13 17:04       ` James Bottomley
  2014-06-13 17:19         ` Christoph Hellwig
  0 siblings, 1 reply; 8+ messages in thread
From: James Bottomley @ 2014-06-13 17:04 UTC (permalink / raw)
  To: Christoph Hellwig
  Cc: Nicholas A. Bellinger, Linus Torvalds, target-devel, linux-scsi,
	LKML, Stephen Rothwell, Paolo Bonzini, Quinn Tran,
	Michael S. Tsirkin, Rusty Russell

On Fri, 2014-06-13 at 18:41 +0200, Christoph Hellwig wrote:
> On Fri, Jun 13, 2014 at 08:21:01AM -0700, James Bottomley wrote:
> > We've been ineffectively trying to split them between target and
> > initiator, since it's effectively both.  Now that we seem to have a
> > workable process, why don't we just take everything (target scsi-queue
> > and vhost) through the SCSI tree, that way we don't get into these
> > problems in future.
> 
> virtio-scsi has nothing to do with the target.  I also think sending
> target updates through the scsi tree doesn't seem very useful, as there's
> is no shared code to start with.

Yes, there is, that's where we get the conflicts.  The target tree
updates the current SCSI drivers with target pieces.  It's hard to
separate them out because there's usually some target tree dependency.

James



^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [GIT PULL] target updates for v3.16-rc1
  2014-06-13 17:04       ` James Bottomley
@ 2014-06-13 17:19         ` Christoph Hellwig
  0 siblings, 0 replies; 8+ messages in thread
From: Christoph Hellwig @ 2014-06-13 17:19 UTC (permalink / raw)
  To: James Bottomley
  Cc: Nicholas A. Bellinger, Linus Torvalds, target-devel, linux-scsi,
	LKML, Stephen Rothwell, Paolo Bonzini, Quinn Tran,
	Michael S. Tsirkin, Rusty Russell

On Fri, Jun 13, 2014 at 10:04:04AM -0700, James Bottomley wrote:
> Yes, there is, that's where we get the conflicts.  The target tree
> updates the current SCSI drivers with target pieces.  It's hard to
> separate them out because there's usually some target tree dependency.

That's only really the case for qla2xxx, and it's not been the major
issue here (the qla2xxx target code is fairly well isolated to start with).

The issue here is that the target tree got the DIF/DIX support for
virtio_scsi, which really should have gone in through the scsi tree.

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [GIT PULL] target updates for v3.16-rc1
  2014-06-13 13:39 ` Christoph Hellwig
  2014-06-13 15:21   ` James Bottomley
@ 2014-06-13 18:07   ` Nicholas A. Bellinger
  2014-06-13 18:09     ` Nicholas A. Bellinger
  1 sibling, 1 reply; 8+ messages in thread
From: Nicholas A. Bellinger @ 2014-06-13 18:07 UTC (permalink / raw)
  To: Christoph Hellwig
  Cc: Linus Torvalds, target-devel, linux-scsi, LKML, Stephen Rothwell,
	Paolo Bonzini, Quinn Tran, Michael S. Tsirkin, Rusty Russell

On Fri, 2014-06-13 at 15:39 +0200, Christoph Hellwig wrote:
> On Thu, Jun 12, 2014 at 02:05:16PM -0700, Nicholas A. Bellinger wrote:
> > The first is with virtio-scsi between what has been merged in scsi.git
> > for "virtio_scsi: use cmd_size", and the "virtio-scsi: Enable DIF/DIX
> > modes in SCSI host LLD" below.  (Adding Paolo + hch CC')
> 
> Just curious, why did we decide to take the virtio-scsi patches
> through the target tree?  Seems like taking them through the scsi
> tree would have been a lot simpler.
> 

It's a matter of keeping changes together so they could be run from a
single branch, without having to merge the entirety of scsi.git in order
to test a new target features involving some manner of LLD changes.

Stuff like the qla2xxx target T10 PI where OK to go through scsi.git,
because they really didn't depend on target changes, but for things like
virtio-scsi + vhost-scsi T10 PI, or the iser-initiator + iser-target T10
PI data_length changes where one can't function without the other,
breaking up initiator / target patches across trees will just end up
making my work-flow unnecessarily more difficult.

I'd say identifying these types of merge conflicts is what linux-next is
supposed to be for, and at least this time around the conflicts ended up
being straight-forward to resolve with srf's patches.

--nab


^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [GIT PULL] target updates for v3.16-rc1
  2014-06-13 18:07   ` Nicholas A. Bellinger
@ 2014-06-13 18:09     ` Nicholas A. Bellinger
  0 siblings, 0 replies; 8+ messages in thread
From: Nicholas A. Bellinger @ 2014-06-13 18:09 UTC (permalink / raw)
  To: Christoph Hellwig
  Cc: Linus Torvalds, target-devel, linux-scsi, LKML, Stephen Rothwell,
	Paolo Bonzini, Quinn Tran, Michael S. Tsirkin, Rusty Russell

On Fri, 2014-06-13 at 11:07 -0700, Nicholas A. Bellinger wrote:
> On Fri, 2014-06-13 at 15:39 +0200, Christoph Hellwig wrote:
> > On Thu, Jun 12, 2014 at 02:05:16PM -0700, Nicholas A. Bellinger wrote:
> > > The first is with virtio-scsi between what has been merged in scsi.git
> > > for "virtio_scsi: use cmd_size", and the "virtio-scsi: Enable DIF/DIX
> > > modes in SCSI host LLD" below.  (Adding Paolo + hch CC')
> > 
> > Just curious, why did we decide to take the virtio-scsi patches
> > through the target tree?  Seems like taking them through the scsi
> > tree would have been a lot simpler.
> > 
> 
> It's a matter of keeping changes together so they could be run from a
> single branch, without having to merge the entirety of scsi.git in order
> to test a new target features involving some manner of LLD changes.
> 
> Stuff like the qla2xxx target T10 PI where OK to go through scsi.git,
> because they really didn't depend on target changes, but for things like
> virtio-scsi + vhost-scsi T10 PI, or the iser-initiator + iser-target T10
> PI data_length changes where one can't function without the other,
> breaking up initiator / target patches across trees will just end up
> making my work-flow unnecessarily more difficult.
> 
> I'd say identifying these types of merge conflicts is what linux-next is
> supposed to be for, and at least this time around the conflicts ended up
> being straight-forward to resolve with srf's patches.
> 

... with SFR's patches, of course.  ;)

--nab


^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2014-06-13 18:09 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2014-06-12 21:05 [GIT PULL] target updates for v3.16-rc1 Nicholas A. Bellinger
2014-06-13 13:39 ` Christoph Hellwig
2014-06-13 15:21   ` James Bottomley
2014-06-13 16:41     ` Christoph Hellwig
2014-06-13 17:04       ` James Bottomley
2014-06-13 17:19         ` Christoph Hellwig
2014-06-13 18:07   ` Nicholas A. Bellinger
2014-06-13 18:09     ` Nicholas A. Bellinger

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.