Whamcloud - gitweb
b=22889 OSS Kernel panic - Kernel BUG at fs/jbd/transaction.c:1155
authorDmitry Zogin <dmitry.zoguine@oracle.com>
Fri, 4 Jun 2010 14:06:24 +0000 (10:06 -0400)
committerJohann Lombardi <johann@sun.com>
Fri, 4 Jun 2010 14:21:22 +0000 (16:21 +0200)
  extend truncate transaction to have enough blocks for last_rcvd and VBR

 o=andreas.dilger
 i=tappro
 i=oleg.drokin

lustre/obdfilter/filter.c

index 1501c98..cf73765 100644 (file)
@@ -2897,9 +2897,9 @@ int filter_setattr_internal(struct obd_export *exp, struct dentry *dentry,
         if (OBD_FAIL_CHECK(OBD_FAIL_OST_SETATTR_CREDITS))
                 fsfilt_extend(exp->exp_obd, inode, 0, handle);
 
-        /* The truncate might have used up our transaction credits.  Make
-         * sure we have one left for the last_rcvd update. */
-        err = fsfilt_extend(exp->exp_obd, inode, 1, handle);
+        /* The truncate might have used up our transaction credits.  Make sure
+         * we have two left for the last_rcvd and VBR inode version updates. */
+        err = fsfilt_extend(exp->exp_obd, inode, 2, handle);
         rc = filter_finish_transno(exp, inode, oti, rc, sync);
         if (sync) {
                 filter_cancel_cookies_cb(exp->exp_obd, 0, fcc, rc);