Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 143289
b: refs/heads/master
c: 88072fa
h: refs/heads/master
i:
  143287: e0905b1
v: v3
  • Loading branch information
Ryusuke Konishi committed Apr 13, 2009
1 parent 251852b commit bc3f497
Show file tree
Hide file tree
Showing 2 changed files with 11 additions and 8 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: 3efb55b496952e0d29a9ec66d0ceaab175c4e8ca
refs/heads/master: 88072faf9a32c92f37c15065496bb6eb309aebe3
17 changes: 10 additions & 7 deletions trunk/fs/nilfs2/sufile.c
Original file line number Diff line number Diff line change
Expand Up @@ -523,7 +523,7 @@ int nilfs_sufile_set_error(struct inode *sufile, __u64 segnum)
struct nilfs_segment_usage *su;
struct nilfs_sufile_header *header;
void *kaddr;
int ret;
int suclean, ret;

if (unlikely(segnum >= nilfs_sufile_get_nsegments(sufile))) {
printk(KERN_WARNING "%s: invalid segment number: %llu\n",
Expand All @@ -546,16 +546,19 @@ int nilfs_sufile_set_error(struct inode *sufile, __u64 segnum)
brelse(su_bh);
goto out_header;
}
suclean = nilfs_segment_usage_clean(su);

nilfs_segment_usage_set_error(su);
kunmap_atomic(kaddr, KM_USER0);
brelse(su_bh);

kaddr = kmap_atomic(header_bh->b_page, KM_USER0);
header = nilfs_sufile_block_get_header(sufile, header_bh, kaddr);
le64_add_cpu(&header->sh_ndirtysegs, -1);
kunmap_atomic(kaddr, KM_USER0);
nilfs_mdt_mark_buffer_dirty(header_bh);
if (suclean) {
kaddr = kmap_atomic(header_bh->b_page, KM_USER0);
header = nilfs_sufile_block_get_header(sufile, header_bh,
kaddr);
le64_add_cpu(&header->sh_ncleansegs, -1);
kunmap_atomic(kaddr, KM_USER0);
nilfs_mdt_mark_buffer_dirty(header_bh);
}
nilfs_mdt_mark_buffer_dirty(su_bh);
nilfs_mdt_mark_dirty(sufile);
brelse(su_bh);
Expand Down

0 comments on commit bc3f497

Please sign in to comment.