diff options
author | David Teigland <teigland@redhat.com> | 2012-03-08 13:37:12 -0500 |
---|---|---|
committer | David Teigland <teigland@redhat.com> | 2012-03-08 15:46:30 -0500 |
commit | 7210cb7a72a22303cdb225bd1aea28697a17bbae (patch) | |
tree | eb303df3d35d52080309d139c1d26edcfab1e670 /fs/dlm/lock.h | |
parent | 192cfd58774b4d17b2fe8bdc77d89c2ef4e0591d (diff) |
dlm: fix slow rsb search in dir recovery
The function used to find an rsb during directory
recovery was searching the single linear list of
rsb's. This wasted a lot of time compared to
using the standard hash table to find the rsb.
Signed-off-by: David Teigland <teigland@redhat.com>
Diffstat (limited to 'fs/dlm/lock.h')
-rw-r--r-- | fs/dlm/lock.h | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/fs/dlm/lock.h b/fs/dlm/lock.h index 265017a7c3e7..1a255307f6ff 100644 --- a/fs/dlm/lock.h +++ b/fs/dlm/lock.h | |||
@@ -28,6 +28,9 @@ void dlm_scan_waiters(struct dlm_ls *ls); | |||
28 | void dlm_scan_timeout(struct dlm_ls *ls); | 28 | void dlm_scan_timeout(struct dlm_ls *ls); |
29 | void dlm_adjust_timeouts(struct dlm_ls *ls); | 29 | void dlm_adjust_timeouts(struct dlm_ls *ls); |
30 | 30 | ||
31 | int dlm_search_rsb_tree(struct rb_root *tree, char *name, int len, | ||
32 | unsigned int flags, struct dlm_rsb **r_ret); | ||
33 | |||
31 | int dlm_purge_locks(struct dlm_ls *ls); | 34 | int dlm_purge_locks(struct dlm_ls *ls); |
32 | void dlm_purge_mstcpy_locks(struct dlm_rsb *r); | 35 | void dlm_purge_mstcpy_locks(struct dlm_rsb *r); |
33 | void dlm_grant_after_purge(struct dlm_ls *ls); | 36 | void dlm_grant_after_purge(struct dlm_ls *ls); |