linux/drivers/nvme/target
James Smart ce79bfc2c7 nvme_fcloop: split job struct from transport for req_release
Current design has the fcloop job struct, used for both initiator and
target processing, allocated as part of the initiator request structure.
On aborts, the initiator side (based on the request) may terminate, yet
the target side wants to continue processing. the target side can't do
that if the initiator side goes away.
Revise fcloop to allocate an independent target side structure when it
starts an io from the initiator.

Added a lock to the request struct as well to synchronize pointer updates
on abort calls.

Modified target downcalls to recognize conditions where initiator has
aborted the io (thus nulled the pointer between job structs), thus
avoid referencing sgl lists which are gone and no longer making upcalls
to the initiator.

In conditions where the targetport is no longer connected, have the
initiator return an access failure rather than simulating a command
completion.

Signed-off-by: James Smart <james.smart@broadcom.com>
Signed-off-by: Sagi Grimberg <sagi@grimberg.me>
2017-04-21 16:41:50 +02:00
..
admin-cmd.c Merge branch 'for-linus' into for-4.12/block 2017-04-07 12:45:20 -06:00
configfs.c nvmet: delete controllers deletion upon subsystem release 2017-01-26 17:44:22 +02:00
core.c nvmet: Introduced helper routine for controller status check. 2017-04-04 09:48:23 -06:00
discovery.c nvmet: Introduced helper routine for controller status check. 2017-04-04 09:48:23 -06:00
fabrics-cmd.c nvmet: convert from kmap to nvmet_copy_from_sgl 2017-04-21 16:41:47 +02:00
fc.c nvmet_fc: add req_release to lldd api 2017-04-21 16:41:49 +02:00
fcloop.c nvme_fcloop: split job struct from transport for req_release 2017-04-21 16:41:50 +02:00
io-cmd.c block: add a flags argument to (__)blkdev_issue_zeroout 2017-04-08 11:25:38 -06:00
Kconfig nvme-fabrics: Add FC LLDD loopback driver to test FC-NVME 2016-12-06 14:51:48 +01:00
loop.c nvme: split nvme status from block req->errors 2017-04-20 12:16:10 -06:00
Makefile nvme-fabrics: Add FC LLDD loopback driver to test FC-NVME 2016-12-06 14:51:48 +01:00
nvmet.h nvmet: Introduced helper routine for controller status check. 2017-04-04 09:48:23 -06:00
rdma.c nvmet-rdma: use generic inet_pton_with_scope 2017-04-04 09:48:23 -06:00