[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20101008101819.GC19804@ZenIV.linux.org.uk>
Date: Fri, 8 Oct 2010 11:18:19 +0100
From: Al Viro <viro@...IV.linux.org.uk>
To: Dave Chinner <david@...morbit.com>
Cc: linux-fsdevel@...r.kernel.org, linux-kernel@...r.kernel.org
Subject: Re: [PATCH 18/18] fs: Reduce inode I_FREEING and factor inode
disposal
On Fri, Oct 08, 2010 at 04:21:32PM +1100, Dave Chinner wrote:
> + spin_unlock(&sb->s_inodes_lock);
>
> - spin_lock(&inode_lru_lock);
> - list_move(&inode->i_lru, dispose);
> - spin_unlock(&inode_lru_lock);
> + dispose_one_inode(inode);
>
> - percpu_counter_dec(&nr_inodes_unused);
> + spin_lock(&sb->s_inodes_lock);
And now you've unlocked the list and even blocked. What's going to
keep next valid through that fun?
> + spin_unlock(&inode_lru_lock);
> +
> + dispose_one_inode(inode);
> + cond_resched();
> +
> + spin_lock(&inode_lru_lock);
Same, only worse - in the previous you might hope for lack of activity
on fs, in this one you really can't.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists