lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:	Thu, 1 Jul 2010 17:57:30 +1000
From:	Nick Piggin <npiggin@...e.de>
To:	Dave Chinner <david@...morbit.com>
Cc:	linux-fsdevel@...r.kernel.org, linux-kernel@...r.kernel.org,
	John Stultz <johnstul@...ibm.com>,
	Frank Mayhar <fmayhar@...gle.com>
Subject: Re: [patch 37/52] fs: icache lazy lru

On Thu, Jul 01, 2010 at 12:46:33PM +1000, Dave Chinner wrote:
> 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@...e.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.

OK.

 
> 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....

Well when moving from non-lazy to lazy, I think I_REFERENCED makes
sense, and matched what dcache did when it went to lazy LRU.
Otherwise inodes on the LRU list stay basically in the order that
they were added to the list, and have no relation to when they
were last used, I don't think that's a good idea.

--
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

Powered by Openwall GNU/*/Linux Powered by OpenVZ