From: Andi Kleen on 24 Jun 2010 06:00 npiggin(a)suse.de writes: > Impelemnt lazy inode lru similarly to dcache. This will reduce lock > acquisition and will help to improve lock ordering subsequently. Or just drop inode LRU completely and only rely on the dcache for that? -Andi -- ak(a)linux.intel.com -- Speaking for myself only. -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo(a)vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
From: Nick Piggin on 24 Jun 2010 12:00 On Thu, Jun 24, 2010 at 11:52:58AM +0200, Andi Kleen wrote: > npiggin(a)suse.de writes: > > > Impelemnt lazy inode lru similarly to dcache. This will reduce lock > > acquisition and will help to improve lock ordering subsequently. > > Or just drop inode LRU completely and only rely on the dcache for that? Possible, yes. There was some talking about it. I prefer not to do anything too controversial yet if possible :) -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo(a)vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
From: Dave Chinner on 30 Jun 2010 04:40 On Thu, Jun 24, 2010 at 01:02:49PM +1000, npiggin(a)suse.de wrote: > Impelemnt lazy inode lru similarly to dcache. This will reduce lock > acquisition and will help to improve lock ordering subsequently. I'm not sure we want the I_REFERENCED reclaim free pass for a clean inode that has been put on the LRU directly. I can see exactly how it is benficial to delay reclaim of dirty inodes (XFS uses that trick), but in terms of aging the cache we've already done this free pass trick at the dentry level. Hence I think the frequent separate access patterns tend to be filtered out at the dcache level and hence we don't need to handle that in the inode cache. Perhaps we only need the I_REFERENCED flag to give dirty inodes a chance to be flushed by other means before forcing reclaim to do inode writeback? Cheers, Dave. -- Dave Chinner david(a)fromorbit.com -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo(a)vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
From: Nick Piggin on 30 Jun 2010 10:40 On Wed, Jun 30, 2010 at 06:38:14PM +1000, Dave Chinner wrote: > On Thu, Jun 24, 2010 at 01:02:49PM +1000, npiggin(a)suse.de wrote: > > Impelemnt lazy inode lru similarly to dcache. This will reduce lock > > acquisition and will help to improve lock ordering subsequently. > > I'm not sure we want the I_REFERENCED reclaim free pass for a clean > inode that has been put on the LRU directly. I can see exactly how > it is benficial to delay reclaim of dirty inodes (XFS uses that > trick), but in terms of aging the cache we've already done this > free pass trick at the dentry level. Hence I think the frequent > separate access patterns tend to be filtered out at the dcache level > and hence we don't need to handle that in the inode cache. > > Perhaps we only need the I_REFERENCED flag to give dirty inodes a > chance to be flushed by other means before forcing reclaim to do > inode writeback? It doesn't force flush, but it force invalidates pagecache. -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo(a)vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
From: Dave Chinner on 30 Jun 2010 22:50 On Wed, Jun 30, 2010 at 10:06:31PM +1000, Nick Piggin wrote: > On Wed, Jun 30, 2010 at 06:38:14PM +1000, Dave Chinner wrote: > > On Thu, Jun 24, 2010 at 01:02:49PM +1000, npiggin(a)suse.de wrote: > > > Impelemnt lazy inode lru similarly to dcache. This will reduce lock > > > acquisition and will help to improve lock ordering subsequently. > > > > I'm not sure we want the I_REFERENCED reclaim free pass for a clean > > inode that has been put on the LRU directly. I can see exactly how > > it is benficial to delay reclaim of dirty inodes (XFS uses that > > trick), but in terms of aging the cache we've already done this > > free pass trick at the dentry level. Hence I think the frequent > > separate access patterns tend to be filtered out at the dcache level > > and hence we don't need to handle that in the inode cache. > > > > Perhaps we only need the I_REFERENCED flag to give dirty inodes a > > chance to be flushed by other means before forcing reclaim to do > > inode writeback? > > It doesn't force flush, but it force invalidates pagecache. Sorry, bad choice of words - I should have said "forcing reclaim to wait on inode writeback". That is what will happen in the case of delayed allocation - the page cache will be clean, but the inode can be dirty, so reclaiming such an inode would cause the shrinker to block in clear_inode() waiting for inode writeback to complete. However, that is mostly irrelevant - you haven't comented at all on whether the I_REFERENCED flag is too broad or even needed which is what really needs to be discussed about this patch.... Cheers, Dave. -- Dave Chinner david(a)fromorbit.com -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo(a)vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
|
Next
|
Last
Pages: 1 2 Prev: [PATCH] gainfar.c : skb_over_panic (kernel-2.6.32.15) Next: mm: implement per-zone shrinker |