Received: by 10.213.65.68 with SMTP id h4csp1125927imn; Wed, 28 Mar 2018 21:29:10 -0700 (PDT) X-Google-Smtp-Source: AIpwx49Q8clNvjANevLEFXv5tTmUtuGttc7y80K1RinDo8ELuD+jncOwer9juFurXH70MuAqIaCJ X-Received: by 10.99.178.88 with SMTP id t24mr4523487pgo.212.1522297750164; Wed, 28 Mar 2018 21:29:10 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1522297750; cv=none; d=google.com; s=arc-20160816; b=pB7bNimuJEDfBL/+TXAOr8jjlrkFN9eRRBN9wl2AK9SjxFOIEJwaRWveUdsapkiCo7 JXQ4uRfVCTyfc/K8fI2jPPcgj81DyTAgwQyA58MCj+C4q1c1saD6Oq8WqFRurX8/E6DX Mh8JC7IL47sAt3S+Al/cx5UnOe9DqPRT4QvE0qNczKjTcC3YeHmMVZD6TROPl3OIbMGo sEfN6NENfd1QARsSBfi+5BzhAFYvr5mOhH7X28OV/RnXnealIEKYxbt9JMxEgg/9veuj SaJ0DvJCPj77GNlvxnh6tzE9hHagSCbsJq3eZmMRJ37gWnNxPv2+lGDxhdhip7n+6IQS hamg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :user-agent:references:in-reply-to:message-id:cc:subject:date:to :from:arc-authentication-results; bh=6cxhnbnd91TaE/cnhDdffK8EzIZURFhSWu0y1svQ2mE=; b=FH9u3ZNLZwSuCkH1/yCymYF0FSvWnxADZb92Sxp5b3kzV6/ic9x3Uj5UZwsOEjuOpw wPHJFcjQE2TrwNAfVPZuvJXBgK8suSRL6DES9HATV4b99B0U6pJ0QtjhX2LdaHCgPPBP dp2JbdBChg3ohCAXS6hP9rPDXWY0bUxkH5P/b+wg2dVerzJPmU4OzFeHvNEYaEzFR7q3 HIMdu7+zX8QBlYken04qXLtr807EbD7rmzvWFs5iS/wD9jMgVgSdYpyRB7NMjHGT5ysy w62P3LxxPGewxYYcZQ1bjEWo1aBAkyzH8Dty8pQxUS24PLmckHBNSy68gzG6CnflIqZe 9UCg== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id h18si3815535pfi.31.2018.03.28.21.28.56; Wed, 28 Mar 2018 21:29:10 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752300AbeC2E1l (ORCPT + 99 others); Thu, 29 Mar 2018 00:27:41 -0400 Received: from mx2.suse.de ([195.135.220.15]:34759 "EHLO mx2.suse.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752267AbeC2E1j (ORCPT ); Thu, 29 Mar 2018 00:27:39 -0400 X-Virus-Scanned: by amavisd-new at test-mx.suse.de Received: from relay1.suse.de (charybdis-ext.suse.de [195.135.220.254]) by mx2.suse.de (Postfix) with ESMTP id 93CBAAFA8; Thu, 29 Mar 2018 04:27:37 +0000 (UTC) From: NeilBrown To: Oleg Drokin , Greg Kroah-Hartman , James Simmons , Andreas Dilger Date: Thu, 29 Mar 2018 15:26:48 +1100 Subject: [PATCH 04/17] staging: lustre: remove unused hash tables. Cc: Linux Kernel Mailing List , Lustre Development List Message-ID: <152229760834.27689.17845742683913841545.stgit@noble> In-Reply-To: <152229732768.27689.4800156943561963977.stgit@noble> References: <152229732768.27689.4800156943561963977.stgit@noble> User-Agent: StGit/0.17.1-dirty MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org exp_lock_hash and exp_flock_hash are unused in the client, so remove all references. Also remove unused hashtable size definitions. Signed-off-by: NeilBrown --- drivers/staging/lustre/lustre/include/lustre_dlm.h | 10 ------- .../staging/lustre/lustre/include/lustre_export.h | 7 ----- .../staging/lustre/lustre/include/obd_support.h | 18 ------------- drivers/staging/lustre/lustre/ldlm/ldlm_flock.c | 11 +------- drivers/staging/lustre/lustre/ldlm/ldlm_lock.c | 14 ---------- drivers/staging/lustre/lustre/ldlm/ldlm_request.c | 27 +------------------- drivers/staging/lustre/lustre/obdclass/genops.c | 2 - 7 files changed, 3 insertions(+), 86 deletions(-) diff --git a/drivers/staging/lustre/lustre/include/lustre_dlm.h b/drivers/staging/lustre/lustre/include/lustre_dlm.h index 7407acf60cf8..5a355fbab401 100644 --- a/drivers/staging/lustre/lustre/include/lustre_dlm.h +++ b/drivers/staging/lustre/lustre/include/lustre_dlm.h @@ -629,16 +629,6 @@ struct ldlm_lock { * Tree node for ldlm_extent. */ struct ldlm_interval *l_tree_node; - /** - * Per export hash of locks. - * Protected by per-bucket exp->exp_lock_hash locks. - */ - struct hlist_node l_exp_hash; - /** - * Per export hash of flock locks. - * Protected by per-bucket exp->exp_flock_hash locks. - */ - struct hlist_node l_exp_flock_hash; /** * Requested mode. * Protected by lr_lock. diff --git a/drivers/staging/lustre/lustre/include/lustre_export.h b/drivers/staging/lustre/lustre/include/lustre_export.h index 40cd168ed2ea..19ce13bc8ee6 100644 --- a/drivers/staging/lustre/lustre/include/lustre_export.h +++ b/drivers/staging/lustre/lustre/include/lustre_export.h @@ -102,13 +102,6 @@ struct obd_export { struct ptlrpc_connection *exp_connection; /** Connection count value from last successful reconnect rpc */ __u32 exp_conn_cnt; - /** Hash list of all ldlm locks granted on this export */ - struct cfs_hash *exp_lock_hash; - /** - * Hash list for Posix lock deadlock detection, added with - * ldlm_lock::l_exp_flock_hash. - */ - struct cfs_hash *exp_flock_hash; struct list_head exp_outstanding_replies; struct list_head exp_uncommitted_replies; spinlock_t exp_uncommitted_replies_lock; diff --git a/drivers/staging/lustre/lustre/include/obd_support.h b/drivers/staging/lustre/lustre/include/obd_support.h index 8595091b8b86..eb2d6cb6b40b 100644 --- a/drivers/staging/lustre/lustre/include/obd_support.h +++ b/drivers/staging/lustre/lustre/include/obd_support.h @@ -67,27 +67,9 @@ extern char obd_jobid_var[]; #define HASH_UUID_BKT_BITS 5 #define HASH_UUID_CUR_BITS 7 #define HASH_UUID_MAX_BITS 12 -#define HASH_NID_BKT_BITS 5 -#define HASH_NID_CUR_BITS 7 -#define HASH_NID_MAX_BITS 12 -#define HASH_NID_STATS_BKT_BITS 5 -#define HASH_NID_STATS_CUR_BITS 7 -#define HASH_NID_STATS_MAX_BITS 12 -#define HASH_LQE_BKT_BITS 5 -#define HASH_LQE_CUR_BITS 7 -#define HASH_LQE_MAX_BITS 12 #define HASH_CONN_BKT_BITS 5 #define HASH_CONN_CUR_BITS 5 #define HASH_CONN_MAX_BITS 15 -#define HASH_EXP_LOCK_BKT_BITS 5 -#define HASH_EXP_LOCK_CUR_BITS 7 -#define HASH_EXP_LOCK_MAX_BITS 16 -#define HASH_CL_ENV_BKT_BITS 5 -#define HASH_CL_ENV_BITS 10 -#define HASH_JOB_STATS_BKT_BITS 5 -#define HASH_JOB_STATS_CUR_BITS 7 -#define HASH_JOB_STATS_MAX_BITS 12 - /* Timeout definitions */ #define OBD_TIMEOUT_DEFAULT 100 /* Time to wait for all clients to reconnect during recovery (hard limit) */ diff --git a/drivers/staging/lustre/lustre/ldlm/ldlm_flock.c b/drivers/staging/lustre/lustre/ldlm/ldlm_flock.c index 411b540b96d9..94f3b1e49896 100644 --- a/drivers/staging/lustre/lustre/ldlm/ldlm_flock.c +++ b/drivers/staging/lustre/lustre/ldlm/ldlm_flock.c @@ -83,9 +83,6 @@ ldlm_flock_destroy(struct ldlm_lock *lock, enum ldlm_mode mode) LDLM_DEBUG(lock, "%s(mode: %d)", __func__, mode); - /* Safe to not lock here, since it should be empty anyway */ - LASSERT(hlist_unhashed(&lock->l_exp_flock_hash)); - list_del_init(&lock->l_res_link); /* client side - set a flag to prevent sending a CANCEL */ @@ -263,15 +260,9 @@ static int ldlm_process_flock_lock(struct ldlm_lock *req) lock->l_policy_data.l_flock.start = new->l_policy_data.l_flock.end + 1; new2->l_conn_export = lock->l_conn_export; - if (lock->l_export) { + if (lock->l_export) new2->l_export = class_export_lock_get(lock->l_export, new2); - if (new2->l_export->exp_lock_hash && - hlist_unhashed(&new2->l_exp_hash)) - cfs_hash_add(new2->l_export->exp_lock_hash, - &new2->l_remote_handle, - &new2->l_exp_hash); - } ldlm_lock_addref_internal_nolock(new2, lock->l_granted_mode); diff --git a/drivers/staging/lustre/lustre/ldlm/ldlm_lock.c b/drivers/staging/lustre/lustre/ldlm/ldlm_lock.c index 95bea351d21d..b8fd778d9832 100644 --- a/drivers/staging/lustre/lustre/ldlm/ldlm_lock.c +++ b/drivers/staging/lustre/lustre/ldlm/ldlm_lock.c @@ -318,18 +318,6 @@ static int ldlm_lock_destroy_internal(struct ldlm_lock *lock) } ldlm_set_destroyed(lock); - if (lock->l_export && lock->l_export->exp_lock_hash) { - /* NB: it's safe to call cfs_hash_del() even lock isn't - * in exp_lock_hash. - */ - /* In the function below, .hs_keycmp resolves to - * ldlm_export_lock_keycmp() - */ - /* coverity[overrun-buffer-val] */ - cfs_hash_del(lock->l_export->exp_lock_hash, - &lock->l_remote_handle, &lock->l_exp_hash); - } - ldlm_lock_remove_from_lru(lock); class_handle_unhash(&lock->l_handle); @@ -419,8 +407,6 @@ static struct ldlm_lock *ldlm_lock_new(struct ldlm_resource *resource) lock->l_blocking_lock = NULL; INIT_LIST_HEAD(&lock->l_sl_mode); INIT_LIST_HEAD(&lock->l_sl_policy); - INIT_HLIST_NODE(&lock->l_exp_hash); - INIT_HLIST_NODE(&lock->l_exp_flock_hash); lprocfs_counter_incr(ldlm_res_to_ns(resource)->ns_stats, LDLM_NSS_LOCKS); diff --git a/drivers/staging/lustre/lustre/ldlm/ldlm_request.c b/drivers/staging/lustre/lustre/ldlm/ldlm_request.c index be43958e4090..8e79f5e073ff 100644 --- a/drivers/staging/lustre/lustre/ldlm/ldlm_request.c +++ b/drivers/staging/lustre/lustre/ldlm/ldlm_request.c @@ -405,19 +405,7 @@ int ldlm_cli_enqueue_fini(struct obd_export *exp, struct ptlrpc_request *req, cleanup_phase = 0; lock_res_and_lock(lock); - /* Key change rehash lock in per-export hash with new key */ - if (exp->exp_lock_hash) { - /* In the function below, .hs_keycmp resolves to - * ldlm_export_lock_keycmp() - */ - /* coverity[overrun-buffer-val] */ - cfs_hash_rehash_key(exp->exp_lock_hash, - &lock->l_remote_handle, - &reply->lock_handle, - &lock->l_exp_hash); - } else { - lock->l_remote_handle = reply->lock_handle; - } + lock->l_remote_handle = reply->lock_handle; *flags = ldlm_flags_from_wire(reply->lock_flags); lock->l_flags |= ldlm_flags_from_wire(reply->lock_flags & @@ -1884,18 +1872,7 @@ static int replay_lock_interpret(const struct lu_env *env, /* Key change rehash lock in per-export hash with new key */ exp = req->rq_export; - if (exp && exp->exp_lock_hash) { - /* In the function below, .hs_keycmp resolves to - * ldlm_export_lock_keycmp() - */ - /* coverity[overrun-buffer-val] */ - cfs_hash_rehash_key(exp->exp_lock_hash, - &lock->l_remote_handle, - &reply->lock_handle, - &lock->l_exp_hash); - } else { - lock->l_remote_handle = reply->lock_handle; - } + lock->l_remote_handle = reply->lock_handle; LDLM_DEBUG(lock, "replayed lock:"); ptlrpc_import_recovery_state_machine(req->rq_import); diff --git a/drivers/staging/lustre/lustre/obdclass/genops.c b/drivers/staging/lustre/lustre/obdclass/genops.c index 63ccbabb4c5a..86e22472719a 100644 --- a/drivers/staging/lustre/lustre/obdclass/genops.c +++ b/drivers/staging/lustre/lustre/obdclass/genops.c @@ -721,8 +721,6 @@ struct obd_export *class_new_export(struct obd_device *obd, return ERR_PTR(-ENOMEM); export->exp_conn_cnt = 0; - export->exp_lock_hash = NULL; - export->exp_flock_hash = NULL; atomic_set(&export->exp_refcount, 2); atomic_set(&export->exp_rpc_count, 0); atomic_set(&export->exp_cb_count, 0);