From mboxrd@z Thu Jan 1 00:00:00 1970 From: Steven Whitehouse Date: Fri, 30 Oct 2015 11:18:10 +0000 Subject: [Cluster-devel] [GFS2 PATCH v3 05/14] GFS2: Reintroduce a timeout in function gfs2_gl_hash_clear In-Reply-To: <1445542222-30672-6-git-send-email-rpeterso@redhat.com> References: <1445542222-30672-1-git-send-email-rpeterso@redhat.com> <1445542222-30672-6-git-send-email-rpeterso@redhat.com> Message-ID: <563351F2.30006@redhat.com> List-Id: To: cluster-devel.redhat.com MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Hi, Acked-by: Steven Whitehouse Steve. On 22/10/15 20:30, Bob Peterson wrote: > At some point in the past, we used to have a timeout when GFS2 was > unmounting, trying to clear out its glocks. If the timeout expires, > it would dump the remaining glocks to the kernel messages so that > developers can debug the problem. That timeout was eliminated, > probably by accident. This patch reintroduces it. > > Signed-off-by: Bob Peterson > --- > fs/gfs2/glock.c | 4 +++- > 1 file changed, 3 insertions(+), 1 deletion(-) > > diff --git a/fs/gfs2/glock.c b/fs/gfs2/glock.c > index 9bd1244..c352359 100644 > --- a/fs/gfs2/glock.c > +++ b/fs/gfs2/glock.c > @@ -1506,7 +1506,9 @@ void gfs2_gl_hash_clear(struct gfs2_sbd *sdp) > flush_workqueue(glock_workqueue); > glock_hash_walk(clear_glock, sdp); > 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); > } >