summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMark Rustad <mark.d.rustad@intel.com>2012-06-26 15:57:30 -0700
committerBen Hutchings <ben@decadent.org.uk>2012-07-12 04:32:19 +0100
commit90f81e29765bd976bf083b239ad04e7f64ab5269 (patch)
tree56796f27eceb366f9b348ebad359d555d86ef981
parent1935549ba38cf30ebe8748ccb88fb99d009241d4 (diff)
downloadlwn-90f81e29765bd976bf083b239ad04e7f64ab5269.tar.gz
lwn-90f81e29765bd976bf083b239ad04e7f64ab5269.zip
tcm_fc: Resolve suspicious RCU usage warnings
commit 863555be0c81558b1af277addcf68acb8f778860 upstream. Use rcu_dereference_protected to tell rcu that the ft_lport_lock is held during ft_lport_create. This resolved "suspicious RCU usage" warnings when debugging options are turned on. Signed-off-by: Mark Rustad <mark.d.rustad@intel.com> Tested-by: Ross Brattain <ross.b.brattain@intel.com> Signed-off-by: Nicholas Bellinger <nab@linux-iscsi.org> Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
-rw-r--r--drivers/target/tcm_fc/tfc_sess.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/target/tcm_fc/tfc_sess.c b/drivers/target/tcm_fc/tfc_sess.c
index 326921385aff..64ddb638240c 100644
--- a/drivers/target/tcm_fc/tfc_sess.c
+++ b/drivers/target/tcm_fc/tfc_sess.c
@@ -61,7 +61,8 @@ static struct ft_tport *ft_tport_create(struct fc_lport *lport)
struct ft_tport *tport;
int i;
- tport = rcu_dereference(lport->prov[FC_TYPE_FCP]);
+ tport = rcu_dereference_protected(lport->prov[FC_TYPE_FCP],
+ lockdep_is_held(&ft_lport_lock));
if (tport && tport->tpg)
return tport;