Whamcloud - gitweb
c0ea49e71ef7e72c8ad34b160a630203a5a52f27
[doc/protocol.git] / ldlm_gl_callback.txt
1 RPC 104: LDLM_GL_CALLBACK
2 ~~~~~~~~~~~~~~~~~~~~~~~~~
3 [[ldlm-gl-callback-rpc]]
4
5 An RPC that assists with getting a lock back from an entity that has
6 it.
7
8 .LDLM_GL_CALLBACK Request Packet Structure
9 image::ldlm-gl-callback-request.png["LDLM_GL_CALLBACK Request Packet Structure",height=50]
10
11 //////////////////////////////////////////////////////////////////////
12 The ldlm-gl-callback-request.png diagram resemgles this text
13 art:
14
15        LDLM_GL_CALLBACK:
16       --request---------------------
17       | ptlrpc_body | ldlm_request |
18       ------------------------------
19 //////////////////////////////////////////////////////////////////////
20
21 The request RPC resembles the simplest LDLM_ENQUEUE RPC, but only
22 identifies the relevant resource that the destination entity already
23 had a lock on. It asks the recipient to flush its dirty write cache,
24 and notify the requester of size and time attributes once that is
25 done.
26
27 'ptlrpc_body'::
28 RPC descriptor. <<struct-ptlrpc-body>>
29
30 'ldlm_request'::
31 Description of the lock being requested. Which resource is the target,
32 what lock is current, and what lock desired. <<struct-ldlm-request>>
33
34 .LDLM_GL_CALLBACK Reply Packet Structure
35 image::ldlm-gl-callback-reply.png["LDLM_GL_CALLBACK Reply Packet Structure",height=50]
36
37 //////////////////////////////////////////////////////////////////////
38 The ldlm-gl-callback-reply.png diagram resemgles this text
39 art:
40
41        LDLM_GL_CALLBACK:
42       --reply------------------
43       | ptlrpc_body | ost_lvb |
44       -------------------------
45 //////////////////////////////////////////////////////////////////////
46
47 The reply updates the attributes on the requester.
48
49 'ptlrpc_body'::
50 RPC descriptor. <<struct-ptlrpc-body>>
51
52 'ost_lvb'::
53 Attribute data associated with a resource on an OST. <<struct-ost-lvb>>
54