linux 2.6.16.38 w/ vs2.0.3-rc1
[linux-2.6.git] / include / linux / jbd.h
index 6a425e3..41ee799 100644 (file)
@@ -28,9 +28,6 @@
 #include <linux/journal-head.h>
 #include <linux/stddef.h>
 #include <linux/bit_spinlock.h>
-#include <linux/mutex.h>
-#include <linux/timer.h>
-
 #include <asm/semaphore.h>
 #endif
 
@@ -578,7 +575,7 @@ struct transaction_s
  * @j_wait_checkpoint:  Wait queue to trigger checkpointing
  * @j_wait_commit: Wait queue to trigger commit
  * @j_wait_updates: Wait queue to wait for updates to complete
- * @j_checkpoint_mutex: Mutex for locking against concurrent checkpoints
+ * @j_checkpoint_sem: Semaphore for locking against concurrent checkpoints
  * @j_head: Journal head - identifies the first unused block in the journal
  * @j_tail: Journal tail - identifies the oldest still-used block in the
  *  journal.
@@ -648,7 +645,7 @@ struct journal_s
        int                     j_barrier_count;
 
        /* The barrier lock itself */
-       struct mutex            j_barrier;
+       struct semaphore        j_barrier;
 
        /*
         * Transactions: The current running transaction...
@@ -690,7 +687,7 @@ struct journal_s
        wait_queue_head_t       j_wait_updates;
 
        /* Semaphore for locking against concurrent checkpoints */
-       struct mutex            j_checkpoint_mutex;
+       struct semaphore        j_checkpoint_sem;
 
        /*
         * Journal head: identifies the first unused block in the journal.
@@ -789,7 +786,7 @@ struct journal_s
        unsigned long           j_commit_interval;
 
        /* The timer used to wakeup the commit thread: */
-       struct timer_list       j_commit_timer;
+       struct timer_list       *j_commit_timer;
 
        /*
         * The revoke table: maintains the list of revoked blocks in the
@@ -895,7 +892,7 @@ extern int   journal_dirty_metadata (handle_t *, struct buffer_head *);
 extern void     journal_release_buffer (handle_t *, struct buffer_head *);
 extern int      journal_forget (handle_t *, struct buffer_head *);
 extern void     journal_sync_buffer (struct buffer_head *);
-extern void     journal_invalidatepage(journal_t *,
+extern int      journal_invalidatepage(journal_t *,
                                struct page *, unsigned long);
 extern int      journal_try_to_free_buffers(journal_t *, struct page *, gfp_t);
 extern int      journal_stop(handle_t *);