aboutsummaryrefslogtreecommitdiff
path: root/fs/xfs/quota/xfs_qm.c
diff options
context:
space:
mode:
authorTakashi Iwai <tiwai@suse.de>2009-03-09 15:21:57 +0100
committerTakashi Iwai <tiwai@suse.de>2009-03-09 15:21:57 +0100
commitefdcd41b4e41560375bb34ad8b095bcaa1c3a93f (patch)
tree57200ef68bae530776c0c2621c51e9464e1e72f9 /fs/xfs/quota/xfs_qm.c
parent33dbe6114047496a5b6fee0941c52dad41250043 (diff)
parent79c7cdd5441f5d3900c1632adcc8cd2bee35c8da (diff)
Merge branch 'topic/vmaster-update' into topic/docbook-fix
Diffstat (limited to 'fs/xfs/quota/xfs_qm.c')
-rw-r--r--fs/xfs/quota/xfs_qm.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/fs/xfs/quota/xfs_qm.c b/fs/xfs/quota/xfs_qm.c
index 6b13960cf31..7a2beb64314 100644
--- a/fs/xfs/quota/xfs_qm.c
+++ b/fs/xfs/quota/xfs_qm.c
@@ -1070,6 +1070,13 @@ xfs_qm_sync(
return 0;
}
+/*
+ * The hash chains and the mplist use the same xfs_dqhash structure as
+ * their list head, but we can take the mplist qh_lock and one of the
+ * hash qh_locks at the same time without any problem as they aren't
+ * related.
+ */
+static struct lock_class_key xfs_quota_mplist_class;
/*
* This initializes all the quota information that's kept in the
@@ -1105,6 +1112,8 @@ xfs_qm_init_quotainfo(
}
xfs_qm_list_init(&qinf->qi_dqlist, "mpdqlist", 0);
+ lockdep_set_class(&qinf->qi_dqlist.qh_lock, &xfs_quota_mplist_class);
+
qinf->qi_dqreclaims = 0;
/* mutex used to serialize quotaoffs */