Whamcloud - gitweb
Branch HEAD
[fs/lustre-release.git] / lustre / kernel_patches / patches / jbd-stats-2.6-rhel5.patch
index 50fb6f5..c770722 100644 (file)
@@ -269,7 +269,7 @@ Index: linux-2.6.18-8.1.8/fs/jbd/journal.c
 +              return -EIO;
 +      size = sizeof(struct transaction_stats_s) * journal->j_history_max;
 +      s->stats = kmalloc(size, GFP_KERNEL);
-+      if (s == NULL) {
++      if (s->stats == NULL) {
 +              kfree(s);
 +              return -EIO;
 +      }
@@ -369,7 +369,7 @@ Index: linux-2.6.18-8.1.8/fs/jbd/journal.c
 +              return -EIO;
 +      size = sizeof(struct transaction_stats_s);
 +      s->stats = kmalloc(size, GFP_KERNEL);
-+      if (s == NULL) {
++      if (s->stats == NULL) {
 +              kfree(s);
 +              return -EIO;
 +      }
@@ -588,9 +588,9 @@ Index: linux-2.6.18-8.1.8/fs/jbd/checkpoint.c
 -                      retry = __process_buffer(journal, jh, bhs,&batch_count);
 +                      retry = __process_buffer(journal, jh, bhs,&batch_count,
 +                                               transaction);
-                       if (!retry && lock_need_resched(&journal->j_list_lock)){
-                               spin_unlock(&journal->j_list_lock);
-                               retry = 1;
+                       if (retry < 0 && !result)
+                               result = retry;
+                       if (!retry && lock_need_resched(&journal->j_list_lock)){
 @@ -667,6 +672,8 @@ void __journal_insert_checkpoint(struct 
  
  void __journal_drop_transaction(journal_t *journal, transaction_t *transaction)