nvme-fcloop: fix deallocation of working context
authorJames Smart <jsmart2021@gmail.com>
Wed, 18 Mar 2020 21:41:12 +0000 (14:41 -0700)
committerChristoph Hellwig <hch@lst.de>
Tue, 31 Mar 2020 14:19:48 +0000 (16:19 +0200)
commit38803fcffb5baf40cd403c1bd980f22308aefee8
tree7817fe30b87e1e343dce47aa14bf647ade76f0e0
parentc95b708d5fa65b4e51f088ee077d127fd5a57b70
nvme-fcloop: fix deallocation of working context

There's been a longstanding bug of LS completions which freed ls ops,
particularly the disconnect LS, while executing on a work context that
is in the memory being free. Not a good thing to do.

Rework LS handling to make callbacks in the rport context rather than
the ls_request context.

Signed-off-by: James Smart <jsmart2021@gmail.com>
Reviewed-by: Himanshu Madhani <himanshu.madhani@oracle.com>
Reviewed-by: Hannes Reinecke <hare@suse.de>
Signed-off-by: Christoph Hellwig <hch@lst.de>
drivers/nvme/target/fcloop.c