it will not be missed.


 fs/jbd/journal.c    |    1 -
 include/linux/jbd.h |   30 +++---------------------------
 2 files changed, 3 insertions(+), 28 deletions(-)

diff -puN fs/jbd/journal.c~jbd-440-remove-lock_journal fs/jbd/journal.c
--- 25/fs/jbd/journal.c~jbd-440-remove-lock_journal	2003-05-25 17:46:27.000000000 -0700
+++ 25-akpm/fs/jbd/journal.c	2003-05-25 17:46:27.000000000 -0700
@@ -630,7 +630,6 @@ static journal_t * journal_init_common (
 	init_waitqueue_head(&journal->j_wait_updates);
 	init_MUTEX(&journal->j_barrier);
 	init_MUTEX(&journal->j_checkpoint_sem);
-	init_MUTEX(&journal->j_sem);
 	spin_lock_init(&journal->j_revoke_lock);
 	spin_lock_init(&journal->j_list_lock);
 	spin_lock_init(&journal->j_state_lock);
diff -puN include/linux/jbd.h~jbd-440-remove-lock_journal include/linux/jbd.h
--- 25/include/linux/jbd.h~jbd-440-remove-lock_journal	2003-05-25 17:46:27.000000000 -0700
+++ 25-akpm/include/linux/jbd.h	2003-05-25 17:46:27.000000000 -0700
@@ -593,7 +593,6 @@ struct transaction_s 
  * @j_wait_commit: Wait queue to trigger commit
  * @j_wait_updates: Wait queue to wait for updates to complete
  * @j_checkpoint_sem: Semaphore for locking against concurrent checkpoints
- * @j_sem: The main journal lock, used by lock_journal() 
  * @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.
@@ -700,9 +699,6 @@ struct journal_s
 	/* Semaphore for locking against concurrent checkpoints */
 	struct semaphore 	j_checkpoint_sem;
 
-	/* The main journal lock, used by lock_journal() */
-	struct semaphore	j_sem;
-
 	/*
 	 * Journal head: identifies the first unused block in the journal.
 	 * [j_state_lock]
@@ -867,34 +863,14 @@ extern void		__wait_on_journal (journal_
 /*
  * Journal locking.
  *
- * We need to lock the journal during transaction state changes so that
- * nobody ever tries to take a handle on the running transaction while
- * we are in the middle of moving it to the commit phase.  
+ * We need to lock the journal during transaction state changes so that nobody
+ * ever tries to take a handle on the running transaction while we are in the
+ * middle of moving it to the commit phase.  j_state_lock does this.
  *
  * Note that the locking is completely interrupt unsafe.  We never touch
  * journal structures from interrupts.
- *
- * In 2.2, the BKL was required for lock_journal.  This is no longer
- * the case.
  */
 
-static inline void lock_journal(journal_t *journal)
-{
-	down(&journal->j_sem);
-}
-
-/* This returns zero if we acquired the semaphore */
-static inline int try_lock_journal(journal_t * journal)
-{
-	return down_trylock(&journal->j_sem);
-}
-
-static inline void unlock_journal(journal_t * journal)
-{
-	up(&journal->j_sem);
-}
-
-
 static inline handle_t *journal_current_handle(void)
 {
 	return current->journal_info;

_