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:	Tue, 21 Jun 2011 16:59:05 -0700
From:	Andrew Morton <akpm@...ux-foundation.org>
To:	Wu Fengguang <fengguang.wu@...el.com>
Cc:	Christoph Hellwig <hch@...radead.org>,
	"linux-fsdevel@...r.kernel.org" <linux-fsdevel@...r.kernel.org>,
	Jan Kara <jack@...e.cz>, Dave Chinner <david@...morbit.com>,
	LKML <linux-kernel@...r.kernel.org>
Subject: Re: [PATCH 3/7] writeback: introduce smoothed global dirty limit

On Sun, 19 Jun 2011 23:55:47 +0800
Wu Fengguang <fengguang.wu@...el.com> wrote:

> On Sun, Jun 19, 2011 at 11:36:37PM +0800, Christoph Hellwig wrote:
> > On Sun, Jun 19, 2011 at 11:01:11PM +0800, Wu Fengguang wrote:
> > > The start of a heavy weight application (ie. KVM) may instantly knock
> > > down determine_dirtyable_memory() and hence the global/bdi dirty
> > > thresholds.
> > > 
> > > So introduce global_dirty_limit for tracking the global dirty threshold
> > > with policies
> > > 
> > > - follow downwards slowly
> > > - follow up in one shot
> > > 
> > > global_dirty_limit can effectively mask out the impact of sudden drop of
> > > dirtyable memory. It will be used in the next patch for two new type of
> > > dirty limits.
> > 
> > This needs to be explained in more detail in comments near the actual
> > code.
> 
> Good point! This is the added comment for the update_dirty_limit() function.
> 
> /*
>  * The global dirtyable memory and dirty threshold could be suddenly knocked
>  * down by a large amount (eg. on the startup of KVM). This may throw the
>  * system into deep dirty exceeded state and throttled to "death" for a couple
>  * of seconds. The solution is to maintain global_dirty_limit for tracking
>  * slowly down to the knocked down dirty threshold.
>  */
> static void update_dirty_limit(unsigned long thresh,
>                                unsigned long dirty)
> 

Neither this nor the changelog explain things well. 

Looking at the code, KVM starts, allocates memory,
global_page_state(NR_FREE_PAGES) decreases by N and
global_reclaimable_pages() increases by N.  Nothing changed.

So what's going on here?
--
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