Daniel Phillips <[EMAIL PROTECTED]> wrote:
>
> @@ -103,31 +103,28 @@ struct dlm_lock_resource * __dlm_lookup_
> const char *name,
> unsigned int len)
> {
> - unsigned int hash;
> - struct hlist_node *iter;
> - struct dlm_lock_resource *tmpres=NULL;
> struct hlist_head *bucket;
> + struct hlist_node *list;
>
> mlog_entry("%.*s\n", len, name);
>
> assert_spin_locked(&dlm->spinlock);
> + bucket = dlm->lockres_hash + full_name_hash(name, len) %
> DLM_HASH_BUCKETS;
>
> - hash = full_name_hash(name, len);
err, you might want to calculate that hash outside the spinlock.
Maybe have a lock per bucket, too.
A 1MB hashtable is verging on comical. How may data are there in total?
_______________________________________________
Ocfs2-devel mailing list
[email protected]
http://oss.oracle.com/mailman/listinfo/ocfs2-devel