linux-mm.kvack.org archive mirror
 help / color / mirror / Atom feed
From: Minchan Kim <minchan.kim@gmail.com>
To: Rik van Riel <riel@redhat.com>
Cc: Peter Zijlstra <peterz@infradead.org>,
	KOSAKI Motohiro <kosaki.motohiro@jp.fujitsu.com>,
	Ben Gamari <bgamari.foss@gmail.com>,
	linux-kernel@vger.kernel.org, rsync@lists.samba.org,
	linux-mm@kvack.org, Wu Fengguang <fengguang.wu@intel.com>
Subject: Re: fadvise DONTNEED implementation (or lack thereof)
Date: Thu, 18 Nov 2010 11:47:17 +0900	[thread overview]
Message-ID: <AANLkTin2fXGOAdGNegDhijjo_kV7nOBJP_hagjgoYdtX@mail.gmail.com> (raw)
In-Reply-To: <4CE40129.9060103@redhat.com>

On Thu, Nov 18, 2010 at 1:22 AM, Rik van Riel <riel@redhat.com> wrote:
> On 11/17/2010 05:16 AM, Minchan Kim wrote:
>
>> Absolutely. But how about rsync's two touch?
>> It can evict working set.
>>
>> I need the time for investigation.
>> Thanks for the comment.
>
> Maybe we could exempt MADV_SEQUENTIAL and FADV_SEQUENTIAL
> touches from promoting the page to the active list?
>

The problem is non-mapped file page.
non-mapped file page promotion happens by only mark_page_accessed.
But it doesn't enough information to prevent promotion(ex, vma or file)
Hmm.. Do other guys have any idea?

Here is another idea.
Current problem is following as.
User can use fadivse with FADV_DONTNEED.
But problem is that it can't affect when it meet dirty pages.
So user have to sync dirty page before calling fadvise with FADV_DONTNEED.
It would lose performance.

Let's add some semantic of FADV_DONTNEED.
It invalidates only pages which are not dirty.
If it meets dirty page, let's move the page into inactive's tail or head.
If we move the page into tail, shrinker can move it into head again
for deferred write if it isn't written the backed device.


> Then we just need to make sure rsync uses fadvise properly
> to keep the working set protected from rsync.
>
> --
> All rights reversed
>



-- 
Kind regards,
Minchan Kim

--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org.  For more info on Linux MM,
see: http://www.linux-mm.org/ .
Fight unfair telecom policy in Canada: sign http://dissolvethecrtc.ca/
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>

  reply	other threads:[~2010-11-18  2:47 UTC|newest]

Thread overview: 24+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-11-04  5:58 fadvise DONTNEED implementation (or lack thereof) Ben Gamari
2010-11-06 16:23 ` Wayne Davison
2010-11-09  7:28 ` KOSAKI Motohiro
2010-11-09  8:03   ` KOSAKI Motohiro
2010-11-09 12:54   ` Ben Gamari
2010-11-14  5:09     ` KOSAKI Motohiro
2010-11-14  5:20       ` Ben Gamari
2010-11-14 21:33         ` Brian K. White
2010-11-15  6:07       ` Minchan Kim
2010-11-15  7:09         ` KOSAKI Motohiro
2010-11-15  7:19           ` Minchan Kim
2010-11-15  7:28             ` KOSAKI Motohiro
2010-11-15  7:46               ` Minchan Kim
2010-11-15 12:46               ` Ben Gamari
2010-11-15  8:47         ` Peter Zijlstra
2010-11-15  9:05           ` Minchan Kim
2010-11-15 14:48             ` Rik van Riel
2010-11-17 10:16               ` Minchan Kim
2010-11-17 11:15                 ` Minchan Kim
2010-11-17 16:22                 ` Rik van Riel
2010-11-18  2:47                   ` Minchan Kim [this message]
2010-11-18  3:24                     ` Rik van Riel
2010-11-18  3:46                       ` Minchan Kim
2010-11-15  9:10           ` KOSAKI Motohiro

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=AANLkTin2fXGOAdGNegDhijjo_kV7nOBJP_hagjgoYdtX@mail.gmail.com \
    --to=minchan.kim@gmail.com \
    --cc=bgamari.foss@gmail.com \
    --cc=fengguang.wu@intel.com \
    --cc=kosaki.motohiro@jp.fujitsu.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    --cc=peterz@infradead.org \
    --cc=riel@redhat.com \
    --cc=rsync@lists.samba.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).