Re: [PATCH 3/3] zsmalloc: add page table mapping method

From: Minchan Kim
Date: Sun Jul 22 2012 - 20:46:42 EST


Hi Seth,

On Sun, Jul 22, 2012 at 07:33:40PM -0500, Seth Jennings wrote:
> On 07/22/2012 07:26 PM, Minchan Kim wrote:
> > On Wed, Jul 18, 2012 at 11:55:56AM -0500, Seth Jennings wrote:
> >> This patchset provides page mapping via the page table.
> >> On some archs, most notably ARM, this method has been
> >> demonstrated to be faster than copying.
> >>
> >> The logic controlling the method selection (copy vs page table)
> >> is controlled by the definition of USE_PGTABLE_MAPPING which
> >> is/can be defined for any arch that performs better with page
> >> table mapping.
> >>
> >> Signed-off-by: Seth Jennings <sjenning@xxxxxxxxxxxxxxxxxx>
> >> ---
> >> drivers/staging/zsmalloc/zsmalloc-main.c | 182 ++++++++++++++++++++++--------
> >> drivers/staging/zsmalloc/zsmalloc_int.h | 6 -
> >> 2 files changed, 134 insertions(+), 54 deletions(-)
> >>
> >> diff --git a/drivers/staging/zsmalloc/zsmalloc-main.c b/drivers/staging/zsmalloc/zsmalloc-main.c
> >> index b86133f..defe350 100644
> >> --- a/drivers/staging/zsmalloc/zsmalloc-main.c
> >> +++ b/drivers/staging/zsmalloc/zsmalloc-main.c
> >> @@ -89,6 +89,30 @@
> >> #define CLASS_IDX_MASK ((1 << CLASS_IDX_BITS) - 1)
> >> #define FULLNESS_MASK ((1 << FULLNESS_BITS) - 1)
> >>
> >> +/*
> >> + * By default, zsmalloc uses a copy-based object mapping method to access
> >> + * allocations that span two pages. However, if a particular architecture
> >> + * 1) Implements local_flush_tlb_kernel_range() and 2) Performs VM mapping
> >> + * faster than copying, then it should be added here so that
> >
> > How about adding your benchmark url?
> >
> >> + * USE_PGTABLE_MAPPING is defined. This causes zsmalloc to use page table
> >> + * mapping rather than copying
> >> + * for object mapping.
> >
> > unnecessary new line.
>
> Since these aren't functional issues with the code, if I
> _promise_ to send a follow-up patch to address these, can I
> get your Ack?

Sure!

Thanks for your effort!

--
Kind regards,
Minchan Kim
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/