Re: [Cluster-devel] [fsck.gfs2 PATCH] fsck.gfs2: Fix journal sequence number reporting problem

2015-01-26 Thread Andrew Price

On 23/01/15 19:10, Bob Peterson wrote:

Hi,

This bug was spotted by coverity. The fsck.gfs2 should include a line
to report the number of journal sequence errors fixed. It was coded
improperly so that it was never displayed. This patch fixes the code
so that the message will be printed properly.


ACK - thanks for dealing with coverity complaints.

Cheers,
Andy



Regards,

Bob Peterson
Red Hat File Systems

Signed-off-by: Bob Peterson rpete...@redhat.com
---
diff --git a/gfs2/fsck/fs_recovery.c b/gfs2/fsck/fs_recovery.c
index abb8187..9be5a95 100644
--- a/gfs2/fsck/fs_recovery.c
+++ b/gfs2/fsck/fs_recovery.c
@@ -436,10 +436,9 @@ static int check_journal_seq_no(struct gfs2_inode *ip, int 
fix)
  (unsigned long long)lowest_seq,
  (unsigned long long)highest_seq,
  (unsigned long long)prev_seq);
-   if (!fix) {
-   seq_errors++;
+   seq_errors++;
+   if (!fix)
continue;
-   }
highest_seq++;
lh.lh_sequence = highest_seq;
prev_seq = lh.lh_sequence;
@@ -449,8 +448,10 @@ static int check_journal_seq_no(struct gfs2_inode *ip, int 
fix)
gfs2_log_header_out(lh, bh);
brelse(bh);
}
-   if (seq_errors  fix)
+   if (seq_errors  fix) {
log_err(_(%d sequence errors fixed.\n), seq_errors);
+   seq_errors = 0;
+   }
return seq_errors;
  }






[Cluster-devel] [fsck.gfs2 PATCH] fsck.gfs2: Fix journal sequence number reporting problem

2015-01-23 Thread Bob Peterson
Hi,

This bug was spotted by coverity. The fsck.gfs2 should include a line
to report the number of journal sequence errors fixed. It was coded
improperly so that it was never displayed. This patch fixes the code
so that the message will be printed properly.

Regards,

Bob Peterson
Red Hat File Systems

Signed-off-by: Bob Peterson rpete...@redhat.com 
---
diff --git a/gfs2/fsck/fs_recovery.c b/gfs2/fsck/fs_recovery.c
index abb8187..9be5a95 100644
--- a/gfs2/fsck/fs_recovery.c
+++ b/gfs2/fsck/fs_recovery.c
@@ -436,10 +436,9 @@ static int check_journal_seq_no(struct gfs2_inode *ip, int 
fix)
  (unsigned long long)lowest_seq,
  (unsigned long long)highest_seq,
  (unsigned long long)prev_seq);
-   if (!fix) {
-   seq_errors++;
+   seq_errors++;
+   if (!fix)
continue;
-   }
highest_seq++;
lh.lh_sequence = highest_seq;
prev_seq = lh.lh_sequence;
@@ -449,8 +448,10 @@ static int check_journal_seq_no(struct gfs2_inode *ip, int 
fix)
gfs2_log_header_out(lh, bh);
brelse(bh);
}
-   if (seq_errors  fix)
+   if (seq_errors  fix) {
log_err(_(%d sequence errors fixed.\n), seq_errors);
+   seq_errors = 0;
+   }
return seq_errors;
 }