]> git.karo-electronics.de Git - linux-beck.git/commitdiff
GFS2: Flush pending glock work when evicting an inode
authorSteven Whitehouse <swhiteho@redhat.com>
Wed, 7 Mar 2012 10:43:02 +0000 (10:43 +0000)
committerSteven Whitehouse <swhiteho@redhat.com>
Wed, 7 Mar 2012 10:43:02 +0000 (10:43 +0000)
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 <swhiteho@redhat.com>
fs/gfs2/super.c

index f3faf72fa7ae5d842d7d18ca606229cb918c29d8..6172fa77ad59acf938d7a82f12c6bd1b78735df0 100644 (file)
@@ -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;