/** Resource object for policy instance. */
struct ptlrpc_nrs_resource tc_res;
/** Node in the hash table. */
+ struct rhash_head tc_rhash;
struct hlist_node tc_hnode;
/** NID of the client. */
struct lnet_nid tc_nid;
/** Hash key of the client. */
char tc_key[NRS_TBF_KEY_LEN];
/** Reference number of the client. */
- atomic_t tc_ref;
+ refcount_t tc_ref;
/** Lock to protect rule and linkage. */
spinlock_t tc_rule_lock;
/** Linkage to rule. */
* nrs_tbf_head::th_cli_hash.
*/
struct list_head tc_lru;
+ /**
+ * RCU head for rhashtable handling
+ */
+ struct rcu_head tc_rcu_head;
};
#define MAX_TBF_NAME (16)
*/
struct ptlrpc_nrs_resource th_res;
/**
+ * Hash of clients.
+ */
+ struct rhashtable th_cli_rhash ____cacheline_aligned_in_smp;
+ /**
* List of rules.
*/
struct list_head th_list;
/**
* Heap of queues.
*/
- struct binheap *th_binheap;
+ struct binheap *th_binheap;
/**
* Hash of clients.
*/