lkml.org 
[lkml]   [2020]   [Mar]   [1]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    From
    Date
    SubjectRe: [PATCHv5 3/3] mm/gup_benchemark: add LONGTERM_BENCHMARK test in gup fast path
    On Fri, Feb 28, 2020 at 11:43 PM Alexander Duyck
    <alexander.duyck@gmail.com> wrote:
    >
    > On Fri, Feb 28, 2020 at 3:35 AM Pingfan Liu <kernelfans@gmail.com> wrote:
    > >
    > > Introduce a GUP_LONGTERM_BENCHMARK ioctl to test longterm pin in gup fast
    > > path.
    >
    > The title of the patch has a typo in it. There is only one 'e' in "benchmark".
    Yes, it should be GUP_FAST_LONGTERM_BENCHMARK
    >
    > > Signed-off-by: Pingfan Liu <kernelfans@gmail.com>
    > > Cc: Ira Weiny <ira.weiny@intel.com>
    > > Cc: Andrew Morton <akpm@linux-foundation.org>
    > > Cc: Mike Rapoport <rppt@linux.ibm.com>
    > > Cc: Dan Williams <dan.j.williams@intel.com>
    > > Cc: Matthew Wilcox <willy@infradead.org>
    > > Cc: John Hubbard <jhubbard@nvidia.com>
    > > Cc: "Aneesh Kumar K.V" <aneesh.kumar@linux.ibm.com>
    > > Cc: Keith Busch <keith.busch@intel.com>
    > > Cc: Christoph Hellwig <hch@infradead.org>
    > > Cc: Shuah Khan <shuah@kernel.org>
    > > To: linux-mm@kvack.org
    > > Cc: linux-kernel@vger.kernel.org
    > > ---
    > > mm/gup_benchmark.c | 7 +++++++
    > > tools/testing/selftests/vm/gup_benchmark.c | 6 +++++-
    > > 2 files changed, 12 insertions(+), 1 deletion(-)
    > >
    > > diff --git a/mm/gup_benchmark.c b/mm/gup_benchmark.c
    > > index 8dba38e..bf61e7a 100644
    > > --- a/mm/gup_benchmark.c
    > > +++ b/mm/gup_benchmark.c
    > > @@ -8,6 +8,7 @@
    > > #define GUP_FAST_BENCHMARK _IOWR('g', 1, struct gup_benchmark)
    > > #define GUP_LONGTERM_BENCHMARK _IOWR('g', 2, struct gup_benchmark)
    > > #define GUP_BENCHMARK _IOWR('g', 3, struct gup_benchmark)
    > > +#define GUP_FAST_LONGTERM_BENCHMARK _IOWR('g', 4, struct gup_benchmark)
    > >
    > > struct gup_benchmark {
    > > __u64 get_delta_usec;
    > > @@ -57,6 +58,11 @@ static int __gup_benchmark_ioctl(unsigned int cmd,
    > > nr = get_user_pages_fast(addr, nr, gup->flags,
    > > pages + i);
    > > break;
    > > + case GUP_FAST_LONGTERM_BENCHMARK:
    > > + nr = get_user_pages_fast(addr, nr,
    > > + (gup->flags & 1) | FOLL_LONGTERM,
    > > + pages + i);
    > > + break;
    >
    > If I am not mistaken the mask of gup->flags is redundant. It is
    > already masked by FOLL_WRITE several lines before this switch
    > statement.
    Yes, you are right. Thanks for your kind review.

    Regards,
    Pingfan

    \
     
     \ /
      Last update: 2020-03-02 03:39    [W:5.574 / U:0.004 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site