Files
kernel-tenderloin-3.0/include/linux
Dave Chinner 250df6ed27 fs: protect inode->i_state with inode->i_lock
Protect inode state transitions and validity checks with the
inode->i_lock. This enables us to make inode state transitions
independently of the inode_lock and is the first step to peeling
away the inode_lock from the code.

This requires that __iget() is done atomically with i_state checks
during list traversals so that we don't race with another thread
marking the inode I_FREEING between the state check and grabbing the
reference.

Also remove the unlock_new_inode() memory barrier optimisation
required to avoid taking the inode_lock when clearing I_NEW.
Simplify the code by simply taking the inode->i_lock around the
state change and wakeup. Because the wakeup is no longer tricky,
remove the wake_up_inode() function and open code the wakeup where
necessary.

Signed-off-by: Dave Chinner <dchinner@redhat.com>
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
2011-03-24 21:16:31 -04:00
..
2011-03-18 23:38:50 -07:00
2011-01-31 14:03:00 -08:00
2011-03-22 17:43:59 -07:00
2011-02-16 13:30:48 +01:00
2011-02-16 13:30:48 +01:00
2011-03-22 17:44:15 -07:00
2011-02-03 15:39:16 -08:00
2011-03-23 19:46:17 -07:00
2011-03-14 19:12:20 -04:00
2011-03-22 17:44:05 -07:00
2011-03-05 10:56:00 +01:00
2011-02-23 00:53:26 +00:00
2011-03-20 14:50:53 +01:00
2011-02-27 16:11:51 -08:00
2011-03-11 14:15:35 +01:00
2011-01-31 14:03:00 -08:00
2011-02-17 11:12:40 -08:00
2011-02-13 16:54:24 -08:00
2011-01-24 14:45:11 +10:30
2011-03-22 17:43:59 -07:00
2011-02-15 10:24:31 +01:00
2011-03-11 15:38:44 -05:00
2011-03-14 18:25:53 -04:00
2011-03-11 15:13:26 -05:00
2011-03-15 00:43:16 +01:00
2011-03-23 19:46:43 -07:00
2011-03-22 17:44:03 -07:00
2011-03-23 07:48:42 -07:00
2011-02-28 18:00:31 -08:00
2011-02-21 12:53:08 -08:00
2011-02-02 15:28:18 +01:00
2011-01-24 14:45:11 +10:30
2011-03-22 17:44:05 -07:00