ocfs2: o2hb: fix hb hung time
hr_last_timeout_start should be set as the last time where hb is still OK. When hb write timeout, hung time will be (jiffies - hr_last_timeout_start). Signed-off-by: Junxiao Bi <junxiao.bi@oracle.com> Reviewed-by: Ryan Ding <ryan.ding@oracle.com> Reviewed-by: Mark Fasheh <mfasheh@suse.de> Cc: Gang He <ghe@suse.com> Cc: rwxybh <rwxybh@126.com> Cc: Joel Becker <jlbec@evilplan.org> Cc: Joseph Qi <joseph.qi@huawei.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
Родитель
88dbe98dc7
Коммит
6633ca5731
|
@ -356,7 +356,6 @@ static void o2hb_arm_timeout(struct o2hb_region *reg)
|
|||
spin_unlock(&o2hb_live_lock);
|
||||
}
|
||||
cancel_delayed_work(®->hr_write_timeout_work);
|
||||
reg->hr_last_timeout_start = jiffies;
|
||||
schedule_delayed_work(®->hr_write_timeout_work,
|
||||
msecs_to_jiffies(O2HB_MAX_WRITE_TIMEOUT_MS));
|
||||
|
||||
|
@ -1174,6 +1173,7 @@ static int o2hb_do_disk_heartbeat(struct o2hb_region *reg)
|
|||
if (own_slot_ok) {
|
||||
o2hb_set_quorum_device(reg);
|
||||
o2hb_arm_timeout(reg);
|
||||
reg->hr_last_timeout_start = jiffies;
|
||||
}
|
||||
|
||||
bail:
|
||||
|
|
Загрузка…
Ссылка в новой задаче