[Cluster-devel] cluster/gfs-kernel/src/gfs rgrp.c

2008-01-29 Thread fabbione
CVSROOT:/cvs/cluster
Module name:cluster
Changes by: [EMAIL PROTECTED]   2008-01-30 06:57:41

Modified files:
gfs-kernel/src/gfs: rgrp.c 

Log message:
Bugzilla 227892:

* Warn people about the RG corruption and request a gfs_fsck
* Upon error detection, perform a minimum error data collection

Port forward patch from RHEL5 branch to HEAD.

Original author: Wendy Cheng <[EMAIL PROTECTED]>

Patches:
http://sourceware.org/cgi-bin/cvsweb.cgi/cluster/gfs-kernel/src/gfs/rgrp.c.diff?cvsroot=cluster&r1=1.21&r2=1.22

--- cluster/gfs-kernel/src/gfs/rgrp.c   2007/06/19 21:26:11 1.21
+++ cluster/gfs-kernel/src/gfs/rgrp.c   2008/01/30 06:57:41 1.22
@@ -1456,8 +1456,13 @@
goal = 0;
}
 
-   if (gfs_assert_withdraw(rgd->rd_sbd, x <= length))
-   blk = 0;
+   if (unlikely(x > length)) {
+   printk("GFS error: possible RG corruption\n");
+   printk("please run gfs_fsck after withdraw\n");
+   dump_stack();
+   if (gfs_assert_withdraw(rgd->rd_sbd, x <= length))
+   blk = 0;
+   }
 
/* Attach bitmap buffer to trans, modify bits to do block alloc */
gfs_trans_add_bh(rgd->rd_gl, rgd->rd_bh[buf]);



[Cluster-devel] cluster/gfs-kernel/src/gfs rgrp.c

2008-01-02 Thread wcheng
CVSROOT:/cvs/cluster
Module name:cluster
Branch: RHEL4
Changes by: [EMAIL PROTECTED]   2008-01-02 19:17:09

Modified files:
gfs-kernel/src/gfs: rgrp.c 

Log message:
Bugzilla 227892:
1. Warn people about the RG corruption and request a gfs_fsck
2. Upon error detection, perform a minimum error data collection.

Patches:
http://sourceware.org/cgi-bin/cvsweb.cgi/cluster/gfs-kernel/src/gfs/rgrp.c.diff?cvsroot=cluster&only_with_tag=RHEL4&r1=1.14.2.4&r2=1.14.2.5

--- cluster/gfs-kernel/src/gfs/rgrp.c   2007/03/13 21:21:21 1.14.2.4
+++ cluster/gfs-kernel/src/gfs/rgrp.c   2008/01/02 19:17:09 1.14.2.5
@@ -1456,8 +1456,13 @@
goal = 0;
}
 
-   if (gfs_assert_withdraw(rgd->rd_sbd, x <= length))
-   blk = 0;
+   if (unlikely(x > length)) {
+   printk("GFS error: possible RG corruption\n");
+   printk("please run gfs_fsck after withdraw\n");
+   dump_stack();
+   if (gfs_assert_withdraw(rgd->rd_sbd, x <= length))
+   blk = 0;
+   }
 
/* Attach bitmap buffer to trans, modify bits to do block alloc */
gfs_trans_add_bh(rgd->rd_gl, rgd->rd_bh[buf]);



[Cluster-devel] cluster/gfs-kernel/src/gfs rgrp.c

2008-01-02 Thread wcheng
CVSROOT:/cvs/cluster
Module name:cluster
Branch: RHEL5
Changes by: [EMAIL PROTECTED]   2008-01-02 18:45:07

Modified files:
gfs-kernel/src/gfs: rgrp.c 

Log message:
Bugzilla 227892:

* Warn people about the RG corruption and request a gfs_fsck
* Upon error detection, perform a minimum error data collection

Patches:
http://sourceware.org/cgi-bin/cvsweb.cgi/cluster/gfs-kernel/src/gfs/rgrp.c.diff?cvsroot=cluster&only_with_tag=RHEL5&r1=1.19.2.1&r2=1.19.2.2

--- cluster/gfs-kernel/src/gfs/rgrp.c   2007/06/19 14:47:07 1.19.2.1
+++ cluster/gfs-kernel/src/gfs/rgrp.c   2008/01/02 18:45:07 1.19.2.2
@@ -1455,8 +1455,13 @@
goal = 0;
}
 
-   if (gfs_assert_withdraw(rgd->rd_sbd, x <= length))
-   blk = 0;
+   if (unlikely(x > length)) {
+   printk("GFS error: possible RG corruption\n");
+   printk("please run gfs_fsck after withdraw\n");
+   dump_stack();
+   if (gfs_assert_withdraw(rgd->rd_sbd, x <= length))
+   blk = 0;
+   } 
 
/* Attach bitmap buffer to trans, modify bits to do block alloc */
gfs_trans_add_bh(rgd->rd_gl, rgd->rd_bh[buf]);