Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 38741
b: refs/heads/master
c: 29937ac
h: refs/heads/master
i:
  38739: 00e9449
v: v3
  • Loading branch information
Steven Whitehouse committed Jul 6, 2006
1 parent ce8543a commit 2bd8bf5
Show file tree
Hide file tree
Showing 5 changed files with 8 additions and 12 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: 71ec63c5d66b577a71910b82740751be73e81310
refs/heads/master: 29937ac6caa68d60c7f1a3e07b6137cf53e09e24
12 changes: 3 additions & 9 deletions trunk/fs/gfs2/glock.c
Original file line number Diff line number Diff line change
Expand Up @@ -1965,19 +1965,13 @@ static int examine_bucket(glock_examiner examiner, struct gfs2_sbd *sdp,
static void scan_glock(struct gfs2_glock *gl)
{
if (gfs2_glmutex_trylock(gl)) {
if (gl->gl_ops == &gfs2_inode_glops) {
struct gfs2_inode *ip = gl->gl_object;
if (ip == NULL) {
struct gfs2_sbd *sdp = gl->gl_sbd;
gfs2_assert_withdraw(sdp, gl->gl_state == LM_ST_UNLOCKED);
goto out_schedule;
}
}
if (gl->gl_ops == &gfs2_inode_glops)
goto out;
if (queue_empty(gl, &gl->gl_holders) &&
gl->gl_state != LM_ST_UNLOCKED &&
demote_ok(gl))
goto out_schedule;

out:
gfs2_glmutex_unlock(gl);
}

Expand Down
2 changes: 2 additions & 0 deletions trunk/fs/gfs2/inode.c
Original file line number Diff line number Diff line change
Expand Up @@ -325,6 +325,7 @@ int gfs2_change_nlink(struct gfs2_inode *ip, int diff)
uint32_t nlink;
int error;

BUG_ON(ip->i_di.di_nlink != ip->i_inode.i_nlink);
nlink = ip->i_di.di_nlink + diff;

/* If we are reducing the nlink count, but the new value ends up being
Expand All @@ -341,6 +342,7 @@ int gfs2_change_nlink(struct gfs2_inode *ip, int diff)

ip->i_di.di_nlink = nlink;
ip->i_di.di_ctime = get_seconds();
ip->i_inode.i_nlink = nlink;

gfs2_trans_add_bh(ip->i_gl, dibh, 1);
gfs2_dinode_out(&ip->i_di, dibh->b_data);
Expand Down
1 change: 1 addition & 0 deletions trunk/fs/gfs2/ops_inode.c
Original file line number Diff line number Diff line change
Expand Up @@ -250,6 +250,7 @@ static int gfs2_link(struct dentry *old_dentry, struct inode *dir,
gfs2_holder_uninit(ghs + 1);

if (!error) {
atomic_inc(&inode->i_count);
d_instantiate(dentry, inode);
mark_inode_dirty(inode);
}
Expand Down
3 changes: 1 addition & 2 deletions trunk/fs/gfs2/page.c
Original file line number Diff line number Diff line change
Expand Up @@ -256,8 +256,7 @@ void gfs2_page_add_databufs(struct gfs2_inode *ip, struct page *page,
struct buffer_head *bh;
unsigned int start, end;

for (bh = head, start = 0;
bh != head || !start;
for (bh = head, start = 0; bh != head || !start;
bh = bh->b_this_page, start = end) {
end = start + bsize;
if (end <= from || start >= to)
Expand Down

0 comments on commit 2bd8bf5

Please sign in to comment.