Skip to content

Commit

Permalink
vfs: fix spinning prevention in prune_icache_sb
Browse files Browse the repository at this point in the history
We need to move the inode to the end of the list to actually make the
spinning prevention explained in the comment above it work.  With a
plain list_move it will simply stay in place as we're always reclaiming
from the head of the list.

Signed-off-by: Christoph Hellwig <hch@lst.de>
  • Loading branch information
Christoph Hellwig authored and root committed Oct 28, 2011
1 parent 948409c commit 62a3dde
Showing 1 changed file with 1 addition and 1 deletion.
2 changes: 1 addition & 1 deletion fs/inode.c
Original file line number Diff line number Diff line change
@@ -634,7 +634,7 @@ void prune_icache_sb(struct super_block *sb, int nr_to_scan)
* inode to the back of the list so we don't spin on it.
*/
if (!spin_trylock(&inode->i_lock)) {
list_move(&inode->i_lru, &sb->s_inode_lru);
list_move_tail(&inode->i_lru, &sb->s_inode_lru);
continue;
}

0 comments on commit 62a3dde

Please sign in to comment.