From: Linus Torvalds Date: Tue, 8 May 2007 18:32:30 +0000 (-0700) Subject: Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/shaggy... X-Git-Tag: v2.6.22-rc1~361 X-Git-Url: https://git.openpandora.org/cgi-bin/gitweb.cgi?p=pandora-kernel.git;a=commitdiff_plain;h=18062a91d2ddc40e19fc674afeb7cad58cfa23ab;hp=-c Merge branch 'for-linus' of git://git./linux/kernel/git/shaggy/jfs-2.6 * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/shaggy/jfs-2.6: JFS: Fix race waking up jfsIO kernel thread JFS: use __set_current_state() Copy i_flags to jfs inode flags on write JFS: document uid, gid, and umask mount options in jfs.txt --- 18062a91d2ddc40e19fc674afeb7cad58cfa23ab diff --combined fs/jfs/jfs_logmgr.c index 783e80b5a8e7,16c62680fcd6..6a3f00dc8c83 --- a/fs/jfs/jfs_logmgr.c +++ b/fs/jfs/jfs_logmgr.c @@@ -62,6 -62,7 +62,6 @@@ #include #include #include -#include #include #include #include /* for sync_blockdev() */ @@@ -1589,7 -1590,7 +1589,7 @@@ void jfs_flush_journal(struct jfs_log * set_current_state(TASK_UNINTERRUPTIBLE); LOGGC_UNLOCK(log); schedule(); - current->state = TASK_RUNNING; + __set_current_state(TASK_RUNNING); LOGGC_LOCK(log); remove_wait_queue(&target->gcwait, &__wait); } @@@ -2353,14 -2354,15 +2353,15 @@@ int jfsIOWait(void *arg lbmStartIO(bp); spin_lock_irq(&log_redrive_lock); } - spin_unlock_irq(&log_redrive_lock); if (freezing(current)) { + spin_unlock_irq(&log_redrive_lock); refrigerator(); } else { set_current_state(TASK_INTERRUPTIBLE); + spin_unlock_irq(&log_redrive_lock); schedule(); - current->state = TASK_RUNNING; + __set_current_state(TASK_RUNNING); } } while (!kthread_should_stop()); diff --combined fs/jfs/jfs_txnmgr.c index ce9ee6b4c0f6,9b3de0aaa034..25430d0b0d59 --- a/fs/jfs/jfs_txnmgr.c +++ b/fs/jfs/jfs_txnmgr.c @@@ -44,6 -44,7 +44,6 @@@ #include #include -#include #include #include #include @@@ -135,7 -136,7 +135,7 @@@ static inline void TXN_SLEEP_DROP_LOCK( set_current_state(TASK_UNINTERRUPTIBLE); TXN_UNLOCK(); io_schedule(); - current->state = TASK_RUNNING; + __set_current_state(TASK_RUNNING); remove_wait_queue(event, &wait); } @@@ -2797,7 -2798,7 +2797,7 @@@ int jfs_lazycommit(void *arg set_current_state(TASK_INTERRUPTIBLE); LAZY_UNLOCK(flags); schedule(); - current->state = TASK_RUNNING; + __set_current_state(TASK_RUNNING); remove_wait_queue(&jfs_commit_thread_wait, &wq); } } while (!kthread_should_stop()); @@@ -2989,7 -2990,7 +2989,7 @@@ int jfs_sync(void *arg set_current_state(TASK_INTERRUPTIBLE); TXN_UNLOCK(); schedule(); - current->state = TASK_RUNNING; + __set_current_state(TASK_RUNNING); } } while (!kthread_should_stop());