summaryrefslogtreecommitdiffstats
path: root/lib
diff options
context:
space:
mode:
authorJames Smart <jsmart2021@gmail.com>2017-11-30 01:47:32 +0100
committerChristoph Hellwig <hch@lst.de>2018-01-08 11:01:54 +0100
commit24431d60d3fbfd4c8c05e1828e5d9b35db4fd81c (patch)
tree8524825c4e27854a09e34f66987f0bcf0f27c378 /lib
parentnvme_fcloop: disassocate local port structs (diff)
downloadlinux-24431d60d3fbfd4c8c05e1828e5d9b35db4fd81c.tar.xz
linux-24431d60d3fbfd4c8c05e1828e5d9b35db4fd81c.zip
nvme_fcloop: rework to remove xxx_IN_ISR feature flags
The existing fcloop driver expects the target side upcalls to the transport to context switch, thus the calls into the nvmet layer are not done in the calling context of the host/initiator down calls. The xxx_IN_ISR feature flags are used to select this logic. The xxx_IN_ISR feature flags should go away in the nvmet_fc transport as no other lldd utilizes them. Both Broadcom and Cavium lldds have their own non-ISR deferred handlers thus the nvmet calls can be made directly. This patch converts the paths that make the target upcalls (command receive, abort receive) such that they schedule a work item rather than expecting the transport to schedule the work item. The patch also cleans up the following: - The completion path from target to host scheduled a host work element called "work". Rename it "tio_done_work" for code clarity. - The abort io path called a iniwork item to call the host side io done. This is no longer needed as the abort routine can make the same call. Signed-off-by: James Smart <james.smart@broadcom.com> Signed-off-by: Christoph Hellwig <hch@lst.de>
Diffstat (limited to 'lib')
0 files changed, 0 insertions, 0 deletions