[GFS2] Make the new argument to gfs2_trans_add_bh() actually do something
Passes the flag through to ensure that the correct log operations are invoked when the flag is set. Signed-off-by: Steven Whitehouse: <swhiteho@redhat.com>
This commit is contained in:
@@ -537,13 +537,13 @@ int gfs2_meta_reread(struct gfs2_sbd *sdp, struct buffer_head *bh, int flags)
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* gfs2_meta_attach_bufdata - attach a struct gfs2_bufdata structure to a buffer
|
* gfs2_attach_bufdata - attach a struct gfs2_bufdata structure to a buffer
|
||||||
* @gl: the glock the buffer belongs to
|
* @gl: the glock the buffer belongs to
|
||||||
* @bh: The buffer to be attached to
|
* @bh: The buffer to be attached to
|
||||||
*
|
* @meta: Flag to indicate whether its metadata or not
|
||||||
*/
|
*/
|
||||||
|
|
||||||
void gfs2_meta_attach_bufdata(struct gfs2_glock *gl, struct buffer_head *bh)
|
void gfs2_attach_bufdata(struct gfs2_glock *gl, struct buffer_head *bh, int meta)
|
||||||
{
|
{
|
||||||
struct gfs2_bufdata *bd;
|
struct gfs2_bufdata *bd;
|
||||||
|
|
||||||
@@ -563,7 +563,10 @@ void gfs2_meta_attach_bufdata(struct gfs2_glock *gl, struct buffer_head *bh)
|
|||||||
bd->bd_gl = gl;
|
bd->bd_gl = gl;
|
||||||
|
|
||||||
INIT_LIST_HEAD(&bd->bd_list_tr);
|
INIT_LIST_HEAD(&bd->bd_list_tr);
|
||||||
|
if (meta)
|
||||||
lops_init_le(&bd->bd_le, &gfs2_buf_lops);
|
lops_init_le(&bd->bd_le, &gfs2_buf_lops);
|
||||||
|
else
|
||||||
|
lops_init_le(&bd->bd_le, &gfs2_databuf_lops);
|
||||||
|
|
||||||
set_v2bd(bh, bd);
|
set_v2bd(bh, bd);
|
||||||
|
|
||||||
|
@@ -64,7 +64,7 @@ int gfs2_meta_read(struct gfs2_glock *gl, uint64_t blkno,
|
|||||||
int flags, struct buffer_head **bhp);
|
int flags, struct buffer_head **bhp);
|
||||||
int gfs2_meta_reread(struct gfs2_sbd *sdp, struct buffer_head *bh, int flags);
|
int gfs2_meta_reread(struct gfs2_sbd *sdp, struct buffer_head *bh, int flags);
|
||||||
|
|
||||||
void gfs2_meta_attach_bufdata(struct gfs2_glock *gl, struct buffer_head *bh);
|
void gfs2_attach_bufdata(struct gfs2_glock *gl, struct buffer_head *bh, int meta);
|
||||||
void gfs2_meta_pin(struct gfs2_sbd *sdp, struct buffer_head *bh);
|
void gfs2_meta_pin(struct gfs2_sbd *sdp, struct buffer_head *bh);
|
||||||
void gfs2_meta_unpin(struct gfs2_sbd *sdp, struct buffer_head *bh,
|
void gfs2_meta_unpin(struct gfs2_sbd *sdp, struct buffer_head *bh,
|
||||||
struct gfs2_ail *ai);
|
struct gfs2_ail *ai);
|
||||||
|
@@ -151,7 +151,7 @@ void gfs2_trans_add_bh(struct gfs2_glock *gl, struct buffer_head *bh, int meta)
|
|||||||
if (bd)
|
if (bd)
|
||||||
gfs2_assert(sdp, bd->bd_gl == gl);
|
gfs2_assert(sdp, bd->bd_gl == gl);
|
||||||
else {
|
else {
|
||||||
gfs2_meta_attach_bufdata(gl, bh);
|
gfs2_attach_bufdata(gl, bh, meta);
|
||||||
bd = get_v2bd(bh);
|
bd = get_v2bd(bh);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user