diff options
Diffstat (limited to 'fs/gfs2/glops.c')
-rw-r--r-- | fs/gfs2/glops.c | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/fs/gfs2/glops.c b/fs/gfs2/glops.c index e262f22f744e..013bf5f1552f 100644 --- a/fs/gfs2/glops.c +++ b/fs/gfs2/glops.c | |||
@@ -129,6 +129,7 @@ static void inode_go_xmote_bh(struct gfs2_glock *gl) | |||
129 | 129 | ||
130 | static void inode_go_drop_th(struct gfs2_glock *gl) | 130 | static void inode_go_drop_th(struct gfs2_glock *gl) |
131 | { | 131 | { |
132 | printk(KERN_INFO "drop th %p\n", gl->gl_object); | ||
132 | gfs2_pte_inval(gl); | 133 | gfs2_pte_inval(gl); |
133 | gfs2_glock_drop_th(gl); | 134 | gfs2_glock_drop_th(gl); |
134 | } | 135 | } |
@@ -147,6 +148,7 @@ static void inode_go_sync(struct gfs2_glock *gl, int flags) | |||
147 | 148 | ||
148 | if (test_bit(GLF_DIRTY, &gl->gl_flags)) { | 149 | if (test_bit(GLF_DIRTY, &gl->gl_flags)) { |
149 | if (meta && data) { | 150 | if (meta && data) { |
151 | printk(KERN_INFO "sync all\n"); | ||
150 | gfs2_page_sync(gl, flags | DIO_START); | 152 | gfs2_page_sync(gl, flags | DIO_START); |
151 | gfs2_log_flush(gl->gl_sbd, gl); | 153 | gfs2_log_flush(gl->gl_sbd, gl); |
152 | gfs2_meta_sync(gl, flags | DIO_START | DIO_WAIT); | 154 | gfs2_meta_sync(gl, flags | DIO_START | DIO_WAIT); |
@@ -224,6 +226,7 @@ static int inode_go_lock(struct gfs2_holder *gh) | |||
224 | return 0; | 226 | return 0; |
225 | 227 | ||
226 | if (ip->i_vn != gl->gl_vn) { | 228 | if (ip->i_vn != gl->gl_vn) { |
229 | printk(KERN_INFO "refresh inode %p\n", &ip->i_inode); | ||
227 | error = gfs2_inode_refresh(ip); | 230 | error = gfs2_inode_refresh(ip); |
228 | if (error) | 231 | if (error) |
229 | return error; | 232 | return error; |
@@ -288,7 +291,7 @@ static void inode_greedy(struct gfs2_glock *gl) | |||
288 | 291 | ||
289 | spin_unlock(&ip->i_spin); | 292 | spin_unlock(&ip->i_spin); |
290 | 293 | ||
291 | gfs2_inode_put(ip); | 294 | iput(&ip->i_inode); |
292 | } | 295 | } |
293 | 296 | ||
294 | /** | 297 | /** |
@@ -361,14 +364,14 @@ static void trans_go_xmote_th(struct gfs2_glock *gl, unsigned int state, | |||
361 | static void trans_go_xmote_bh(struct gfs2_glock *gl) | 364 | static void trans_go_xmote_bh(struct gfs2_glock *gl) |
362 | { | 365 | { |
363 | struct gfs2_sbd *sdp = gl->gl_sbd; | 366 | struct gfs2_sbd *sdp = gl->gl_sbd; |
364 | struct gfs2_inode *ip = sdp->sd_jdesc->jd_inode->u.generic_ip; | 367 | struct gfs2_inode *ip = GFS2_I(sdp->sd_jdesc->jd_inode); |
365 | struct gfs2_glock *j_gl = ip->i_gl; | 368 | struct gfs2_glock *j_gl = ip->i_gl; |
366 | struct gfs2_log_header head; | 369 | struct gfs2_log_header head; |
367 | int error; | 370 | int error; |
368 | 371 | ||
369 | if (gl->gl_state != LM_ST_UNLOCKED && | 372 | if (gl->gl_state != LM_ST_UNLOCKED && |
370 | test_bit(SDF_JOURNAL_LIVE, &sdp->sd_flags)) { | 373 | test_bit(SDF_JOURNAL_LIVE, &sdp->sd_flags)) { |
371 | gfs2_meta_cache_flush(sdp->sd_jdesc->jd_inode->u.generic_ip); | 374 | gfs2_meta_cache_flush(GFS2_I(sdp->sd_jdesc->jd_inode)); |
372 | j_gl->gl_ops->go_inval(j_gl, DIO_METADATA | DIO_DATA); | 375 | j_gl->gl_ops->go_inval(j_gl, DIO_METADATA | DIO_DATA); |
373 | 376 | ||
374 | error = gfs2_find_jhead(sdp->sd_jdesc, &head); | 377 | error = gfs2_find_jhead(sdp->sd_jdesc, &head); |