dlm: add time stamp of blocking callback
Record the time the latest blocking callback was queued for a lock. This will be used for debugging in combination with lock queue timestamp changes in the previous patch. Signed-off-by: David Teigland <teigland@redhat.com>
This commit is contained in:
parent
eeda418d8c
commit
e3a84ad495
|
@ -245,6 +245,7 @@ struct dlm_lkb {
|
||||||
struct list_head lkb_astqueue; /* need ast to be sent */
|
struct list_head lkb_astqueue; /* need ast to be sent */
|
||||||
struct list_head lkb_ownqueue; /* list of locks for a process */
|
struct list_head lkb_ownqueue; /* list of locks for a process */
|
||||||
struct list_head lkb_time_list;
|
struct list_head lkb_time_list;
|
||||||
|
ktime_t lkb_time_bast; /* for debugging */
|
||||||
ktime_t lkb_timestamp;
|
ktime_t lkb_timestamp;
|
||||||
unsigned long lkb_timeout_cs;
|
unsigned long lkb_timeout_cs;
|
||||||
|
|
||||||
|
|
|
@ -318,6 +318,8 @@ static inline void queue_cast_overlap(struct dlm_rsb *r, struct dlm_lkb *lkb)
|
||||||
|
|
||||||
static void queue_bast(struct dlm_rsb *r, struct dlm_lkb *lkb, int rqmode)
|
static void queue_bast(struct dlm_rsb *r, struct dlm_lkb *lkb, int rqmode)
|
||||||
{
|
{
|
||||||
|
lkb->lkb_time_bast = ktime_get();
|
||||||
|
|
||||||
if (is_master_copy(lkb))
|
if (is_master_copy(lkb))
|
||||||
send_bast(r, lkb, rqmode);
|
send_bast(r, lkb, rqmode);
|
||||||
else
|
else
|
||||||
|
|
Loading…
Reference in New Issue