Re: [PATCH 16/21] fs: Protect inode->i_state with the inode->i_lock

Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]
From: Al Viro
Date: Saturday, October 23, 2010 - 2:37 pm

On Fri, Oct 22, 2010 at 11:37:05AM +0100, Al Viro wrote:


OK, the current (partial) set is in

git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6.git/ #merge-stem

What remains to be done (I'm about to fall down right now, so that'll have
to wait until tomorrow):

	* writeback_sb_inode() told to ignore I_FREEING ones in addition to
I_NEW and I_WILL_FREE ones it ignores now.  Currently I_FREEING can't be
found there at all, so that'll change nothing.
	* invalidate_inodes() - collect I_FREEING/I_WILL_FREE on a separate
list, then (after we'd evicted the stuff we'd decided to evict) wait until
they get freed by whatever's freeing them already.
	* remove_dquot_ref() - looks like we might be OK with that one being
as it is - it walks sb list of inodes and for things like prune_icache()
the inodes stay on said list all the way through evict(), so it either
doesn't care or it's already broken.  And no, I'm not discounting either
possibility - it needs further analysis.

That's it - after that we'll be OK with dropping and regaining inode_lock
between the moment when we set I_FREEING and removals from the lists.
--
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]

Messages in current thread:
Inode Lock Scalability V6, Dave Chinner, (Wed Oct 20, 5:49 pm)
[PATCH 04/21] fs: Implement lazy LRU updates for inodes, Dave Chinner, (Wed Oct 20, 5:49 pm)
[PATCH 05/21] fs: inode split IO and LRU lists, Dave Chinner, (Wed Oct 20, 5:49 pm)
[PATCH 06/21] fs: Clean up inode reference counting, Dave Chinner, (Wed Oct 20, 5:49 pm)
[PATCH 08/21] fs: rework icount to be a locked variable, Dave Chinner, (Wed Oct 20, 5:49 pm)
[PATCH 13/21] fs: Introduce per-bucket inode hash locks, Dave Chinner, (Wed Oct 20, 5:49 pm)
[PATCH 19/21] fs: icache remove inode_lock, Dave Chinner, (Wed Oct 20, 5:49 pm)
Re: [PATCH 06/21] fs: Clean up inode reference counting, Christoph Hellwig, (Wed Oct 20, 6:41 pm)
Re: Inode Lock Scalability V7 (was V6), Dave Chinner, (Wed Oct 20, 10:04 pm)
Re: [PATCH 04/21] fs: Implement lazy LRU updates for inodes, Christoph Hellwig, (Thu Oct 21, 5:22 am)
Re: Inode Lock Scalability V7 (was V6), Nick Piggin, (Thu Oct 21, 6:20 am)
Re: Inode Lock Scalability V7 (was V6), Dave Chinner, (Thu Oct 21, 4:52 pm)
Re: Inode Lock Scalability V7 (was V6), Nick Piggin, (Thu Oct 21, 5:45 pm)
Re: Inode Lock Scalability V7 (was V6), Al Viro, (Thu Oct 21, 7:20 pm)
Re: Inode Lock Scalability V7 (was V6), Nick Piggin, (Thu Oct 21, 7:41 pm)
Re: Inode Lock Scalability V7 (was V6), Nick Piggin, (Thu Oct 21, 7:48 pm)
Re: Inode Lock Scalability V7 (was V6), Al Viro, (Thu Oct 21, 8:07 pm)
Re: Inode Lock Scalability V7 (was V6), Al Viro, (Thu Oct 21, 8:12 pm)
Re: Inode Lock Scalability V7 (was V6), Nick Piggin, (Thu Oct 21, 9:46 pm)
Re: Inode Lock Scalability V7 (was V6), Nick Piggin, (Thu Oct 21, 9:48 pm)
Re: Inode Lock Scalability V7 (was V6), Nick Piggin, (Thu Oct 21, 10:01 pm)
Re: [PATCH 16/21] fs: Protect inode->i_state with the inod ..., Al Viro, (Sat Oct 23, 2:37 pm)