Motr  M0
RWLock
Collaboration diagram for RWLock:

Modules

 Distributed RW Lock Internals
 

Functions

M0_INTERNAL void m0_rw_lockable_init (struct m0_rw_lockable *lockable, const struct m0_fid *fid, struct m0_rm_domain *dom)
 
M0_INTERNAL void m0_rw_lockable_fini (struct m0_rw_lockable *lockable)
 
M0_INTERNAL void m0_rm_rwlock_owner_init (struct m0_rm_owner *owner, struct m0_fid *fid, struct m0_rw_lockable *lockable, struct m0_rm_remote *creditor)
 
M0_INTERNAL void m0_rm_rwlock_owner_fini (struct m0_rm_owner *owner)
 
M0_INTERNAL void m0_rm_rwlock_req_init (struct m0_rm_incoming *req, struct m0_rm_owner *owner, const struct m0_rm_incoming_ops *ops, enum m0_rm_incoming_flags flags, enum m0_rm_rwlock_req_type type)
 
M0_INTERNAL void m0_rm_rwlock_req_fini (struct m0_rm_incoming *req)
 
M0_INTERNAL int m0_rw_lockable_type_register (struct m0_rm_domain *dom, struct m0_rm_resource_type *rtype)
 
M0_INTERNAL void m0_rw_lockable_type_deregister (struct m0_rm_resource_type *rtype)
 

Variables

const struct m0_fid M0_RWLOCK_FID = M0_FID_TINIT('R', 'W', 'L')
 

Detailed Description

Function Documentation

◆ m0_rm_rwlock_owner_fini()

M0_INTERNAL void m0_rm_rwlock_owner_fini ( struct m0_rm_owner owner)

Definition at line 542 of file rm_rwlock.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ m0_rm_rwlock_owner_init()

M0_INTERNAL void m0_rm_rwlock_owner_init ( struct m0_rm_owner owner,
struct m0_fid fid,
struct m0_rw_lockable lockable,
struct m0_rm_remote creditor 
)

Definition at line 532 of file rm_rwlock.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ m0_rm_rwlock_req_fini()

M0_INTERNAL void m0_rm_rwlock_req_fini ( struct m0_rm_incoming req)

Definition at line 567 of file rm_rwlock.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ m0_rm_rwlock_req_init()

M0_INTERNAL void m0_rm_rwlock_req_init ( struct m0_rm_incoming req,
struct m0_rm_owner owner,
const struct m0_rm_incoming_ops ops,
enum m0_rm_incoming_flags  flags,
enum m0_rm_rwlock_req_type  type 
)

Definition at line 548 of file rm_rwlock.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ m0_rw_lockable_fini()

M0_INTERNAL void m0_rw_lockable_fini ( struct m0_rw_lockable lockable)

Definition at line 523 of file rm_rwlock.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ m0_rw_lockable_init()

M0_INTERNAL void m0_rw_lockable_init ( struct m0_rw_lockable lockable,
const struct m0_fid fid,
struct m0_rm_domain dom 
)

Definition at line 508 of file rm_rwlock.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ m0_rw_lockable_type_deregister()

M0_INTERNAL void m0_rw_lockable_type_deregister ( struct m0_rm_resource_type rtype)

Definition at line 588 of file rm_rwlock.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ m0_rw_lockable_type_register()

M0_INTERNAL int m0_rw_lockable_type_register ( struct m0_rm_domain dom,
struct m0_rm_resource_type rtype 
)

Definition at line 575 of file rm_rwlock.c.

Here is the call graph for this function:
Here is the caller graph for this function:

Variable Documentation

◆ M0_RWLOCK_FID

const struct m0_fid M0_RWLOCK_FID = M0_FID_TINIT('R', 'W', 'L')

Fid used with rwlockable resources

Definition at line 596 of file rm_rwlock.c.