From: Joonsoo Kim <iamjoonsoo.kim@lge.com>
To: Andrew Morton <akpm@linux-foundation.org>
Cc: Mel Gorman <mgorman@suse.de>, Hugh Dickins <hughd@google.com>,
Rik van Riel <riel@redhat.com>, Ingo Molnar <mingo@kernel.org>,
Naoya Horiguchi <n-horiguchi@ah.jp.nec.com>,
Hillf Danton <dhillf@gmail.com>,
linux-kernel@vger.kernel.org, linux-mm@kvack.org
Subject: Re: [PATCH 6/9] mm/rmap: use rmap_walk() in try_to_unmap()
Date: Tue, 3 Dec 2013 11:08:32 +0900 [thread overview]
Message-ID: <20131203020832.GD31168@lge.com> (raw)
In-Reply-To: <20131202150107.7a814d0753356afc47b58b09@linux-foundation.org>
On Mon, Dec 02, 2013 at 03:01:07PM -0800, Andrew Morton wrote:
> On Thu, 28 Nov 2013 16:48:43 +0900 Joonsoo Kim <iamjoonsoo.kim@lge.com> wrote:
>
> > Now, we have an infrastructure in rmap_walk() to handle difference
> > from variants of rmap traversing functions.
> >
> > So, just use it in try_to_unmap().
> >
> > In this patch, I change following things.
> >
> > 1. enable rmap_walk() if !CONFIG_MIGRATION.
> > 2. mechanical change to use rmap_walk() in try_to_unmap().
> >
> > ...
> >
> > --- a/include/linux/rmap.h
> > +++ b/include/linux/rmap.h
> > @@ -190,7 +190,7 @@ int page_referenced_one(struct page *, struct vm_area_struct *,
> >
> > int try_to_unmap(struct page *, enum ttu_flags flags);
> > int try_to_unmap_one(struct page *, struct vm_area_struct *,
> > - unsigned long address, enum ttu_flags flags);
> > + unsigned long address, void *arg);
>
> This change is ugly and unchangelogged.
>
> Also, "enum ttu_flags flags" was nice and meaningful, but "void *arg"
> conveys far less information. A suitable way to address this
> shortcoming is to document `arg' at the try_to_unmap_one() definition
> site. try_to_unmap_one() doesn't actually have any documentation at
> this stage - let's please fix that?
Okay. I will add some comments.
> >
> > ...
> >
> > @@ -1509,6 +1510,11 @@ bool is_vma_temporary_stack(struct vm_area_struct *vma)
> > return false;
> > }
> >
> > +static int skip_vma_temporary_stack(struct vm_area_struct *vma, void *arg)
> > +{
> > + return (int)is_vma_temporary_stack(vma);
> > +}
>
> The (int) cast is unneeded - the compiler will turn a bool into an int.
>
> Should this function (and rmap_walk_control.skip()) really be returning
> a bool?
Okay. Will do.
>
> The name of this function is poor: "skip_foo" implies that the function
> will skip over a foo. But that isn't what this function does. Please
> choose something which accurately reflects the function's behavior.
Okay.
Thanks.
--
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/ .
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>
WARNING: multiple messages have this Message-ID (diff)
From: Joonsoo Kim <iamjoonsoo.kim@lge.com>
To: Andrew Morton <akpm@linux-foundation.org>
Cc: Mel Gorman <mgorman@suse.de>, Hugh Dickins <hughd@google.com>,
Rik van Riel <riel@redhat.com>, Ingo Molnar <mingo@kernel.org>,
Naoya Horiguchi <n-horiguchi@ah.jp.nec.com>,
Hillf Danton <dhillf@gmail.com>,
linux-kernel@vger.kernel.org, linux-mm@kvack.org
Subject: Re: [PATCH 6/9] mm/rmap: use rmap_walk() in try_to_unmap()
Date: Tue, 3 Dec 2013 11:08:32 +0900 [thread overview]
Message-ID: <20131203020832.GD31168@lge.com> (raw)
In-Reply-To: <20131202150107.7a814d0753356afc47b58b09@linux-foundation.org>
On Mon, Dec 02, 2013 at 03:01:07PM -0800, Andrew Morton wrote:
> On Thu, 28 Nov 2013 16:48:43 +0900 Joonsoo Kim <iamjoonsoo.kim@lge.com> wrote:
>
> > Now, we have an infrastructure in rmap_walk() to handle difference
> > from variants of rmap traversing functions.
> >
> > So, just use it in try_to_unmap().
> >
> > In this patch, I change following things.
> >
> > 1. enable rmap_walk() if !CONFIG_MIGRATION.
> > 2. mechanical change to use rmap_walk() in try_to_unmap().
> >
> > ...
> >
> > --- a/include/linux/rmap.h
> > +++ b/include/linux/rmap.h
> > @@ -190,7 +190,7 @@ int page_referenced_one(struct page *, struct vm_area_struct *,
> >
> > int try_to_unmap(struct page *, enum ttu_flags flags);
> > int try_to_unmap_one(struct page *, struct vm_area_struct *,
> > - unsigned long address, enum ttu_flags flags);
> > + unsigned long address, void *arg);
>
> This change is ugly and unchangelogged.
>
> Also, "enum ttu_flags flags" was nice and meaningful, but "void *arg"
> conveys far less information. A suitable way to address this
> shortcoming is to document `arg' at the try_to_unmap_one() definition
> site. try_to_unmap_one() doesn't actually have any documentation at
> this stage - let's please fix that?
Okay. I will add some comments.
> >
> > ...
> >
> > @@ -1509,6 +1510,11 @@ bool is_vma_temporary_stack(struct vm_area_struct *vma)
> > return false;
> > }
> >
> > +static int skip_vma_temporary_stack(struct vm_area_struct *vma, void *arg)
> > +{
> > + return (int)is_vma_temporary_stack(vma);
> > +}
>
> The (int) cast is unneeded - the compiler will turn a bool into an int.
>
> Should this function (and rmap_walk_control.skip()) really be returning
> a bool?
Okay. Will do.
>
> The name of this function is poor: "skip_foo" implies that the function
> will skip over a foo. But that isn't what this function does. Please
> choose something which accurately reflects the function's behavior.
Okay.
Thanks.
next prev parent reply other threads:[~2013-12-03 2:06 UTC|newest]
Thread overview: 54+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-11-28 7:48 [PATCH 0/9] mm/rmap: unify rmap traversing functions through rmap_walk Joonsoo Kim
2013-11-28 7:48 ` Joonsoo Kim
2013-11-28 7:48 ` [PATCH 1/9] mm/rmap: recompute pgoff for huge page Joonsoo Kim
2013-11-28 7:48 ` Joonsoo Kim
2013-12-02 20:09 ` Naoya Horiguchi
2013-12-02 20:09 ` Naoya Horiguchi
2013-12-02 22:44 ` Andrew Morton
2013-12-02 22:44 ` Andrew Morton
2013-12-03 2:01 ` Joonsoo Kim
2013-12-03 2:01 ` Joonsoo Kim
2013-11-28 7:48 ` [PATCH 2/9] mm/rmap: factor nonlinear handling out of try_to_unmap_file() Joonsoo Kim
2013-11-28 7:48 ` Joonsoo Kim
2013-12-02 20:09 ` Naoya Horiguchi
2013-12-02 20:09 ` Naoya Horiguchi
2013-11-28 7:48 ` [PATCH 3/9] mm/rmap: factor lock function out of rmap_walk_anon() Joonsoo Kim
2013-11-28 7:48 ` Joonsoo Kim
2013-12-02 20:09 ` Naoya Horiguchi
2013-12-02 20:09 ` Naoya Horiguchi
2013-11-28 7:48 ` [PATCH 4/9] mm/rmap: make rmap_walk to get the rmap_walk_control argument Joonsoo Kim
2013-11-28 7:48 ` Joonsoo Kim
2013-12-02 20:09 ` Naoya Horiguchi
2013-12-02 20:09 ` Naoya Horiguchi
2013-12-02 22:51 ` Andrew Morton
2013-12-02 22:51 ` Andrew Morton
2013-12-03 2:03 ` Joonsoo Kim
2013-12-03 2:03 ` Joonsoo Kim
2013-12-02 22:52 ` Andrew Morton
2013-12-02 22:52 ` Andrew Morton
2013-11-28 7:48 ` [PATCH 5/9] mm/rmap: extend rmap_walk_xxx() to cope with different cases Joonsoo Kim
2013-11-28 7:48 ` Joonsoo Kim
2013-12-02 20:09 ` Naoya Horiguchi
2013-12-02 20:09 ` Naoya Horiguchi
2013-12-03 2:05 ` Joonsoo Kim
2013-12-03 2:05 ` Joonsoo Kim
2013-11-28 7:48 ` [PATCH 6/9] mm/rmap: use rmap_walk() in try_to_unmap() Joonsoo Kim
2013-11-28 7:48 ` Joonsoo Kim
2013-12-02 20:09 ` Naoya Horiguchi
2013-12-02 20:09 ` Naoya Horiguchi
2013-12-02 23:01 ` Andrew Morton
2013-12-02 23:01 ` Andrew Morton
2013-12-03 2:08 ` Joonsoo Kim [this message]
2013-12-03 2:08 ` Joonsoo Kim
2013-11-28 7:48 ` [PATCH 7/9] mm/rmap: use rmap_walk() in try_to_munlock() Joonsoo Kim
2013-11-28 7:48 ` Joonsoo Kim
2013-12-02 20:09 ` Naoya Horiguchi
2013-12-02 20:09 ` Naoya Horiguchi
2013-11-28 7:48 ` [PATCH 8/9] mm/rmap: use rmap_walk() in page_referenced() Joonsoo Kim
2013-11-28 7:48 ` Joonsoo Kim
2013-12-02 20:10 ` Naoya Horiguchi
2013-12-02 20:10 ` Naoya Horiguchi
2013-11-28 7:48 ` [PATCH 9/9] mm/rmap: use rmap_walk() in page_mkclean() Joonsoo Kim
2013-11-28 7:48 ` Joonsoo Kim
2013-12-02 20:10 ` Naoya Horiguchi
2013-12-02 20:10 ` Naoya Horiguchi
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=20131203020832.GD31168@lge.com \
--to=iamjoonsoo.kim@lge.com \
--cc=akpm@linux-foundation.org \
--cc=dhillf@gmail.com \
--cc=hughd@google.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=mgorman@suse.de \
--cc=mingo@kernel.org \
--cc=n-horiguchi@ah.jp.nec.com \
--cc=riel@redhat.com \
/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.