Loading fs/gfs2/xattr.c +11 −10 Original line number Original line Diff line number Diff line Loading @@ -1296,6 +1296,7 @@ static int ea_acl_chmod_unstuffed(struct gfs2_inode *ip, int gfs2_xattr_acl_chmod(struct gfs2_inode *ip, struct iattr *attr, char *data) int gfs2_xattr_acl_chmod(struct gfs2_inode *ip, struct iattr *attr, char *data) { { struct gfs2_sbd *sdp = GFS2_SB(&ip->i_inode); struct gfs2_ea_location el; struct gfs2_ea_location el; struct buffer_head *dibh; struct buffer_head *dibh; int error; int error; Loading @@ -1305,16 +1306,17 @@ int gfs2_xattr_acl_chmod(struct gfs2_inode *ip, struct iattr *attr, char *data) return error; return error; if (GFS2_EA_IS_STUFFED(el.el_ea)) { if (GFS2_EA_IS_STUFFED(el.el_ea)) { error = gfs2_trans_begin(GFS2_SB(&ip->i_inode), RES_DINODE + RES_EATTR, 0); error = gfs2_trans_begin(sdp, RES_DINODE + RES_EATTR, 0); if (error) if (error == 0) { return error; gfs2_trans_add_bh(ip->i_gl, el.el_bh, 1); gfs2_trans_add_bh(ip->i_gl, el.el_bh, 1); memcpy(GFS2_EA2DATA(el.el_ea), data, memcpy(GFS2_EA2DATA(el.el_ea), data, GFS2_EA_DATA_LEN(el.el_ea)); GFS2_EA_DATA_LEN(el.el_ea)); } else } } else { error = ea_acl_chmod_unstuffed(ip, el.el_ea, data); error = ea_acl_chmod_unstuffed(ip, el.el_ea, data); } brelse(el.el_bh); if (error) if (error) return error; return error; Loading @@ -1327,8 +1329,7 @@ int gfs2_xattr_acl_chmod(struct gfs2_inode *ip, struct iattr *attr, char *data) brelse(dibh); brelse(dibh); } } gfs2_trans_end(GFS2_SB(&ip->i_inode)); gfs2_trans_end(sdp); return error; return error; } } Loading Loading
fs/gfs2/xattr.c +11 −10 Original line number Original line Diff line number Diff line Loading @@ -1296,6 +1296,7 @@ static int ea_acl_chmod_unstuffed(struct gfs2_inode *ip, int gfs2_xattr_acl_chmod(struct gfs2_inode *ip, struct iattr *attr, char *data) int gfs2_xattr_acl_chmod(struct gfs2_inode *ip, struct iattr *attr, char *data) { { struct gfs2_sbd *sdp = GFS2_SB(&ip->i_inode); struct gfs2_ea_location el; struct gfs2_ea_location el; struct buffer_head *dibh; struct buffer_head *dibh; int error; int error; Loading @@ -1305,16 +1306,17 @@ int gfs2_xattr_acl_chmod(struct gfs2_inode *ip, struct iattr *attr, char *data) return error; return error; if (GFS2_EA_IS_STUFFED(el.el_ea)) { if (GFS2_EA_IS_STUFFED(el.el_ea)) { error = gfs2_trans_begin(GFS2_SB(&ip->i_inode), RES_DINODE + RES_EATTR, 0); error = gfs2_trans_begin(sdp, RES_DINODE + RES_EATTR, 0); if (error) if (error == 0) { return error; gfs2_trans_add_bh(ip->i_gl, el.el_bh, 1); gfs2_trans_add_bh(ip->i_gl, el.el_bh, 1); memcpy(GFS2_EA2DATA(el.el_ea), data, memcpy(GFS2_EA2DATA(el.el_ea), data, GFS2_EA_DATA_LEN(el.el_ea)); GFS2_EA_DATA_LEN(el.el_ea)); } else } } else { error = ea_acl_chmod_unstuffed(ip, el.el_ea, data); error = ea_acl_chmod_unstuffed(ip, el.el_ea, data); } brelse(el.el_bh); if (error) if (error) return error; return error; Loading @@ -1327,8 +1329,7 @@ int gfs2_xattr_acl_chmod(struct gfs2_inode *ip, struct iattr *attr, char *data) brelse(dibh); brelse(dibh); } } gfs2_trans_end(GFS2_SB(&ip->i_inode)); gfs2_trans_end(sdp); return error; return error; } } Loading