All of lore.kernel.org
 help / color / mirror / Atom feed
From: Arun Sharma <asharma@fb.com>
To: Andrea Righi <andrea@betterlinux.com>
Cc: "Andrew Morton" <akpm@linux-foundation.org>,
	"Minchan Kim" <minchan.kim@gmail.com>,
	"Peter Zijlstra" <a.p.zijlstra@chello.nl>,
	"Johannes Weiner" <jweiner@redhat.com>,
	"KAMEZAWA Hiroyuki" <kamezawa.hiroyu@jp.fujitsu.com>,
	"KOSAKI Motohiro" <kosaki.motohiro@jp.fujitsu.com>,
	"Rik van Riel" <riel@redhat.com>,
	"Hugh Dickins" <hughd@google.com>,
	"Alexander Viro" <viro@zeniv.linux.org.uk>,
	"Shaohua Li" <shaohua.li@intel.com>,
	"Pádraig Brady" <P@draigBrady.com>,
	"John Stultz" <john.stultz@linaro.org>,
	"Jerry James" <jamesjer@betterlinux.com>,
	"Julius Plenz" <julius@plenz.com>, linux-mm <linux-mm@kvack.org>,
	linux-fsdevel@vger.kernel.org,
	LKML <linux-kernel@vger.kernel.org>
Subject: Re: [PATCH v5 3/3] fadvise: implement POSIX_FADV_NOREUSE
Date: Wed, 15 Feb 2012 18:10:28 -0800	[thread overview]
Message-ID: <4F3C6594.3030709@fb.com> (raw)
In-Reply-To: <20120216005608.GC21685@thinkpad>

On 2/15/12 4:56 PM, Andrea Righi wrote:

> Oh sorry, you're right! nocache_tree is not a pointer inside
> address_space, so the compiler must know the size.
>
> mmh... move the definition of the rb_root struct in linux/types.h? or
> simply use a rb_root pointer. The (void *) looks a bit scary and too bug
> prone.

Either way is fine. I did some black box testing of the patch (comparing 
noreuse vs dontneed) and it behaves as expected.

On a file copy, neither one pollutes the page cache. But if I run a 
random read benchmark on the source file right before and afterwards, 
page cache is warm with noreuse, but cold with dontneed. Copy 
performance was unaffected.

I can't really comment on the implementation details since I haven't 
reviewed it, but the functionality sounds useful.

  -Arun

--
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 internet charges in Canada: sign http://stopthemeter.ca/
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>

WARNING: multiple messages have this Message-ID (diff)
From: Arun Sharma <asharma@fb.com>
To: Andrea Righi <andrea@betterlinux.com>
Cc: "Andrew Morton" <akpm@linux-foundation.org>,
	"Minchan Kim" <minchan.kim@gmail.com>,
	"Peter Zijlstra" <a.p.zijlstra@chello.nl>,
	"Johannes Weiner" <jweiner@redhat.com>,
	"KAMEZAWA Hiroyuki" <kamezawa.hiroyu@jp.fujitsu.com>,
	"KOSAKI Motohiro" <kosaki.motohiro@jp.fujitsu.com>,
	"Rik van Riel" <riel@redhat.com>,
	"Hugh Dickins" <hughd@google.com>,
	"Alexander Viro" <viro@zeniv.linux.org.uk>,
	"Shaohua Li" <shaohua.li@intel.com>,
	"Pádraig Brady" <P@draigBrady.com>,
	"John Stultz" <john.stultz@linaro.org>,
	"Jerry James" <jamesjer@betterlinux.com>,
	"Julius Plenz" <julius@plenz.com>, linux-mm <linux-mm@kvack.org>,
	linux-fsdevel@vger.kernel.org,
	LKML <linux-kernel@vger.kernel.org>
Subject: Re: [PATCH v5 3/3] fadvise: implement POSIX_FADV_NOREUSE
Date: Wed, 15 Feb 2012 18:10:28 -0800	[thread overview]
Message-ID: <4F3C6594.3030709@fb.com> (raw)
In-Reply-To: <20120216005608.GC21685@thinkpad>

On 2/15/12 4:56 PM, Andrea Righi wrote:

> Oh sorry, you're right! nocache_tree is not a pointer inside
> address_space, so the compiler must know the size.
>
> mmh... move the definition of the rb_root struct in linux/types.h? or
> simply use a rb_root pointer. The (void *) looks a bit scary and too bug
> prone.

Either way is fine. I did some black box testing of the patch (comparing 
noreuse vs dontneed) and it behaves as expected.

On a file copy, neither one pollutes the page cache. But if I run a 
random read benchmark on the source file right before and afterwards, 
page cache is warm with noreuse, but cold with dontneed. Copy 
performance was unaffected.

I can't really comment on the implementation details since I haven't 
reviewed it, but the functionality sounds useful.

  -Arun


  reply	other threads:[~2012-02-16  2:10 UTC|newest]

Thread overview: 61+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-02-12  0:21 [RFC] [PATCH v5 0/3] fadvise: support POSIX_FADV_NOREUSE Andrea Righi
2012-02-12  0:21 ` Andrea Righi
2012-02-12  0:21 ` [PATCH v5 1/3] kinterval: routines to manipulate generic intervals Andrea Righi
2012-02-12  0:21   ` Andrea Righi
2012-02-13  0:48   ` Andrea Righi
2012-02-13  0:48     ` Andrea Righi
2012-02-12  0:21 ` [PATCH v5 2/3] mm: filemap: introduce mark_page_usedonce Andrea Righi
2012-02-12  0:21   ` Andrea Righi
2012-02-12  0:21 ` [PATCH v5 3/3] fadvise: implement POSIX_FADV_NOREUSE Andrea Righi
2012-02-12  0:21   ` Andrea Righi
2012-02-13 16:22   ` KOSAKI Motohiro
2012-02-13 16:22     ` KOSAKI Motohiro
2012-02-13 18:00     ` Andrea Righi
2012-02-13 18:00       ` Andrea Righi
2012-02-13 18:00       ` Andrea Righi
2012-02-13 16:22   ` KOSAKI Motohiro
2012-02-13 16:22   ` KOSAKI Motohiro
2012-02-15 23:35   ` Arun Sharma
2012-02-15 23:35     ` Arun Sharma
2012-02-15 23:47     ` Andrea Righi
2012-02-15 23:47       ` Andrea Righi
2012-02-15 23:57       ` Arun Sharma
2012-02-15 23:57         ` Arun Sharma
2012-02-15 23:57         ` Arun Sharma
2012-02-16  0:56         ` Andrea Righi
2012-02-16  0:56           ` Andrea Righi
2012-02-16  0:56           ` Andrea Righi
2012-02-16  2:10           ` Arun Sharma [this message]
2012-02-16  2:10             ` Arun Sharma
2012-02-16 10:39             ` Andrea Righi
2012-02-16 10:39               ` Andrea Righi
2012-02-16 18:43               ` Arun Sharma
2012-02-16 18:43                 ` Arun Sharma
2012-02-16 18:57                 ` Andrea Righi
2012-02-16 18:57                   ` Andrea Righi
2012-02-16 19:07                   ` Arun Sharma
2012-02-16 19:07                     ` Arun Sharma
2012-02-27  2:33   ` KAMEZAWA Hiroyuki
2012-02-27  2:33     ` KAMEZAWA Hiroyuki
2012-02-27 10:46     ` Andrea Righi
2012-02-27 10:46       ` Andrea Righi
2012-02-12  7:16 ` [RFC] [PATCH v5 0/3] fadvise: support POSIX_FADV_NOREUSE Hillf Danton
2012-02-12 11:58   ` Andrea Righi
2012-02-12 17:54     ` Aneesh Kumar K.V
2012-02-13  1:13       ` Andrea Righi
2012-02-14 21:33 ` Andrew Morton
2012-02-14 21:33   ` Andrew Morton
2012-02-14 22:06   ` John Stultz
2012-02-14 22:06     ` John Stultz
2012-02-14 22:59   ` Andrea Righi
2012-02-14 22:59     ` Andrea Righi
2012-02-14 23:22     ` Andrew Morton
2012-02-14 23:22       ` Andrew Morton
2012-02-15  1:35       ` Andrea Righi
2012-02-15  1:35         ` Andrea Righi
2012-02-15 23:48         ` KAMEZAWA Hiroyuki
2012-02-15 23:48           ` KAMEZAWA Hiroyuki
2012-02-16  0:43           ` Andrea Righi
2012-02-16  0:43             ` Andrea Righi
2014-01-02 21:25             ` Phillip Susi
2014-01-02 21:25               ` Phillip Susi

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=4F3C6594.3030709@fb.com \
    --to=asharma@fb.com \
    --cc=P@draigBrady.com \
    --cc=a.p.zijlstra@chello.nl \
    --cc=akpm@linux-foundation.org \
    --cc=andrea@betterlinux.com \
    --cc=hughd@google.com \
    --cc=jamesjer@betterlinux.com \
    --cc=john.stultz@linaro.org \
    --cc=julius@plenz.com \
    --cc=jweiner@redhat.com \
    --cc=kamezawa.hiroyu@jp.fujitsu.com \
    --cc=kosaki.motohiro@jp.fujitsu.com \
    --cc=linux-fsdevel@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    --cc=minchan.kim@gmail.com \
    --cc=riel@redhat.com \
    --cc=shaohua.li@intel.com \
    --cc=viro@zeniv.linux.org.uk \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.