scsi: libfc: don't set FC_RQST_STATE_DONE before calling fc_bsg_jobdone()
authorJohannes Thumshirn <jthumshirn@suse.de>
Thu, 17 Nov 2016 09:31:16 +0000 (10:31 +0100)
committerMartin K. Petersen <martin.petersen@oracle.com>
Fri, 18 Nov 2016 01:15:25 +0000 (20:15 -0500)
commit7ac65007c285e377a31107fe2e13afacf47400f2
tree8697bdd6988ce5694db7d2a41e2f7a1dfba6b47f
parent1d69b1222abcba58e567bc99b0b76b7857dc5031
scsi: libfc: don't set FC_RQST_STATE_DONE before calling fc_bsg_jobdone()

Don't set FC_RQST_STATE_DONE before calling fc_bsg_jobdone() as
fc_bsg_jobdone() calls blk_complete_requeust() which raises a soft-IRQ
that ends up in fc_bsg_sofirq_done() and fc_bsg_softirq_done() sets the
FC_RQST_STATE_DONE flag.

Signed-off-by: Johannes Thumshirn <jthumshirn@suse.de>
Reviewed-by: Hannes Reinecke <hare@suse.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
drivers/scsi/libfc/fc_lport.c