From 56940d7205e87ec3b88632f3fd3e5014917f157c Mon Sep 17 00:00:00 2001 From: Johann Lombardi Date: Mon, 18 Jan 2010 16:01:59 +0100 Subject: [PATCH] b=21846 define lqs_key for quota lqs i=adilger i=landen --- lustre/include/class_hash.h | 6 ++---- lustre/quota/quota_context.c | 11 +++++++++++ 2 files changed, 13 insertions(+), 4 deletions(-) diff --git a/lustre/include/class_hash.h b/lustre/include/class_hash.h index afa2060..9d43ac4 100644 --- a/lustre/include/class_hash.h +++ b/lustre/include/class_hash.h @@ -96,11 +96,9 @@ lh_key(lustre_hash_t *lh, struct hlist_node *hnode) LASSERT(lh); LASSERT(hnode); LASSERT(LHO(lh)); + LASSERT(LHP(lh, key)); - if (LHP(lh, key)) - return LHP(lh, key)(hnode); - - return NULL; + return LHP(lh, key)(hnode); } /* Returns 1 on a match, diff --git a/lustre/quota/quota_context.c b/lustre/quota/quota_context.c index e8d6014..aca504f 100644 --- a/lustre/quota/quota_context.c +++ b/lustre/quota/quota_context.c @@ -1472,6 +1472,16 @@ lqs_hash(lustre_hash_t *lh, void *key, unsigned mask) RETURN(hash & mask); } +static void * +lqs_key(struct hlist_node *hnode) +{ + struct lustre_qunit_size *lqs; + ENTRY; + + lqs = hlist_entry(hnode, struct lustre_qunit_size, lqs_hash); + RETURN(&lqs->lqs_key); +} + static int lqs_compare(void *key, struct hlist_node *hnode) { @@ -1534,6 +1544,7 @@ lqs_exit(struct hlist_node *hnode) static lustre_hash_ops_t lqs_hash_ops = { .lh_hash = lqs_hash, + .lh_key = lqs_key, .lh_compare = lqs_compare, .lh_get = lqs_get, .lh_put = lqs_put, -- 1.8.3.1