|
@@ -1506,7 +1506,9 @@ void gfs2_gl_hash_clear(struct gfs2_sbd *sdp)
|
|
|
flush_workqueue(glock_workqueue);
|
|
flush_workqueue(glock_workqueue);
|
|
|
glock_hash_walk(clear_glock, sdp);
|
|
glock_hash_walk(clear_glock, sdp);
|
|
|
flush_workqueue(glock_workqueue);
|
|
flush_workqueue(glock_workqueue);
|
|
|
- wait_event(sdp->sd_glock_wait, atomic_read(&sdp->sd_glock_disposal) == 0);
|
|
|
|
|
|
|
+ wait_event_timeout(sdp->sd_glock_wait,
|
|
|
|
|
+ atomic_read(&sdp->sd_glock_disposal) == 0,
|
|
|
|
|
+ HZ * 600);
|
|
|
glock_hash_walk(dump_glock_func, sdp);
|
|
glock_hash_walk(dump_glock_func, sdp);
|
|
|
}
|
|
}
|
|
|
|
|
|