On Tue, Dec 06, 2005 at 01:10:06AM +0100, Jan Kasprzak wrote:
> Marcelo Tosatti wrote:
> : I wonder why prune_icache() does not move inodes with positive i_count
> : to inode_inuse list, letting iput() take care of moving to unused
> : once the count reaches zero.
> :
> : inode = list_entry(inode_unused.prev, struct inode, i_list);
> : if (inode->i_state || atomic_read(&inode->i_count)) {
> : list_move(&inode->i_list, &inode_unused);
> : continue;
> : }
> :
> : Couldnt it be
> : list_move(&inode->i_list, &inode_inuse);
> :
> : ?
>
> Hmm, this code is indeed strange. Why does it move the inode
> to the inode_unused list, when the inode has in fact been _found_ while
> scanning the inode_unused list?
It just moves to the head of the list, for later scanning.
> And how can an inode with positive ->i_count end up on the
> inode_unused list?
Such inodes only end up in the unused list during superblock
shutdown, so they should not be a problem actually (my bad).
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
[Index of Archives]
[Kernel Newbies]
[Netfilter]
[Bugtraq]
[Photo]
[Stuff]
[Gimp]
[Yosemite News]
[MIPS Linux]
[ARM Linux]
[Linux Security]
[Linux RAID]
[Video 4 Linux]
[Linux for the blind]
[Linux Resources]