OSDN Git Service

staging/lustre/ldlm: Remove ldlm_glimpse_ast()
authorOleg Drokin <green@linuxhacker.ru>
Thu, 1 Oct 2015 04:12:26 +0000 (00:12 -0400)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 2 Oct 2015 09:17:19 +0000 (11:17 +0200)
Only used on the server.

Signed-off-by: Oleg Drokin <green@linuxhacker.ru>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/staging/lustre/lustre/include/lustre_dlm.h
drivers/staging/lustre/lustre/ldlm/ldlm_request.c

index 432222b..8b2b092 100644 (file)
@@ -1282,7 +1282,6 @@ int ldlm_expired_completion_wait(void *data);
 int ldlm_blocking_ast_nocheck(struct ldlm_lock *lock);
 int ldlm_blocking_ast(struct ldlm_lock *lock, struct ldlm_lock_desc *desc,
                      void *data, int flag);
-int ldlm_glimpse_ast(struct ldlm_lock *lock, void *reqp);
 int ldlm_completion_ast_async(struct ldlm_lock *lock, __u64 flags, void *data);
 int ldlm_completion_ast(struct ldlm_lock *lock, __u64 flags, void *data);
 /** @} ldlm_local_ast */
index c73661c..a9159fd 100644 (file)
@@ -358,34 +358,6 @@ int ldlm_blocking_ast(struct ldlm_lock *lock, struct ldlm_lock_desc *desc,
 }
 EXPORT_SYMBOL(ldlm_blocking_ast);
 
-/**
- * ->l_glimpse_ast() for DLM extent locks acquired on the server-side. See
- * comment in filter_intent_policy() on why you may need this.
- */
-int ldlm_glimpse_ast(struct ldlm_lock *lock, void *reqp)
-{
-       /*
-        * Returning -ELDLM_NO_LOCK_DATA actually works, but the reason for
-        * that is rather subtle: with OST-side locking, it may so happen that
-        * _all_ extent locks are held by the OST. If client wants to obtain
-        * current file size it calls ll{,u}_glimpse_size(), and (as locks are
-        * on the server), dummy glimpse callback fires and does
-        * nothing. Client still receives correct file size due to the
-        * following fragment in filter_intent_policy():
-        *
-        * rc = l->l_glimpse_ast(l, NULL); // this will update the LVB
-        * if (rc != 0 && res->lr_namespace->ns_lvbo &&
-        *     res->lr_namespace->ns_lvbo->lvbo_update) {
-        *       res->lr_namespace->ns_lvbo->lvbo_update(res, NULL, 0, 1);
-        * }
-        *
-        * that is, after glimpse_ast() fails, filter_lvbo_update() runs, and
-        * returns correct file size to the client.
-        */
-       return -ELDLM_NO_LOCK_DATA;
-}
-EXPORT_SYMBOL(ldlm_glimpse_ast);
-
 static void failed_lock_cleanup(struct ldlm_namespace *ns,
                                struct ldlm_lock *lock, int mode)
 {