From mboxrd@z Thu Jan 1 00:00:00 1970 From: Steven Whitehouse Date: Mon, 19 Mar 2012 10:25:25 +0000 Subject: [Cluster-devel] [PATCH 09/12] GFS2: Flush pending glock work when evicting an inode In-Reply-To: <1332152728-4027-1-git-send-email-swhiteho@redhat.com> References: <1332152728-4027-1-git-send-email-swhiteho@redhat.com> Message-ID: <1332152728-4027-10-git-send-email-swhiteho@redhat.com> List-Id: To: cluster-devel.redhat.com MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit This ensures that we will not try to access the inode thats being flushed via the glock after it has been freed. Signed-off-by: Steven Whitehouse diff --git a/fs/gfs2/super.c b/fs/gfs2/super.c index f3faf72..6172fa7 100644 --- a/fs/gfs2/super.c +++ b/fs/gfs2/super.c @@ -1557,6 +1557,7 @@ out: end_writeback(inode); gfs2_dir_hash_inval(ip); ip->i_gl->gl_object = NULL; + flush_delayed_work_sync(&ip->i_gl->gl_work); gfs2_glock_add_to_lru(ip->i_gl); gfs2_glock_put(ip->i_gl); ip->i_gl = NULL; -- 1.7.4