[SCSI] libfc: fix checking FC_TYPE_BLS
authorVasu Dev <vasu.dev@intel.com>
Fri, 28 Oct 2011 18:34:12 +0000 (11:34 -0700)
committerJames Bottomley <JBottomley@Parallels.com>
Mon, 31 Oct 2011 09:26:44 +0000 (13:26 +0400)
commit14fc315fa30d128760c7edeff56530142576cd2e
treeafedc80340cff48207180675f64b956fbc8940ff
parent044aceef33bba7a471a3ed47ac60998b2983b18b
[SCSI] libfc: fix checking FC_TYPE_BLS

Its checked after skb freed, so instead have fh_type
cached and then check FC_TYPE_BLS against cached
fh_type value.

This wrong check was causing double exch locking as
reported by Bhanu at
https://lists.open-fcoe.org/pipermail/devel/2011-October/011793.html

Signed-off-by: Vasu Dev <vasu.dev@intel.com>
Tested-by: Bhanu Prakash Gollapudi <bprakash@broadcom.com>
Signed-off-by: Yi Zou <yi.zou@intel.com>
Signed-off-by: James Bottomley <JBottomley@Parallels.com>
drivers/scsi/libfc/fc_exch.c