lkml.org 
[lkml]   [2015]   [Mar]   [25]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH] zsmalloc: remove unnecessary insertion/removal of zspage in compaction
I was missing mailing lists.
Ping again with correction.

On Mon, Mar 09, 2015 at 09:10:40AM +0900, Minchan Kim wrote:
> In putback_zspage, we don't need to insert a zspage into list of zspage
> in size_class again to just fix fullness group. We could do directly
> without reinsertion so we could save some instuctions.
>
> Reported-by: Heesub Shin <heesub.shin@samsung.com>
> Signed-off-by: Minchan Kim <minchan@kernel.org>
> ---
> mm/zsmalloc.c | 6 +++---
> 1 file changed, 3 insertions(+), 3 deletions(-)
>
> diff --git a/mm/zsmalloc.c b/mm/zsmalloc.c
> index 71e4ef496918..e73a78cd340a 100644
> --- a/mm/zsmalloc.c
> +++ b/mm/zsmalloc.c
> @@ -1707,14 +1707,14 @@ static struct page *alloc_target_page(struct size_class *class)
> static void putback_zspage(struct zs_pool *pool, struct size_class *class,
> struct page *first_page)
> {
> - int class_idx;
> enum fullness_group fullness;
>
> BUG_ON(!is_first_page(first_page));
>
> - get_zspage_mapping(first_page, &class_idx, &fullness);
> + fullness = get_fullness_group(first_page);
> insert_zspage(first_page, class, fullness);
> - fullness = fix_fullness_group(class, first_page);
> + set_zspage_mapping(first_page, class->index, fullness);
> +
> if (fullness == ZS_EMPTY) {
> zs_stat_dec(class, OBJ_ALLOCATED, get_maxobj_per_zspage(
> class->size, class->pages_per_zspage));
> --
> 1.9.1
>

--
Kind regards,
Minchan Kim


\
 
 \ /
  Last update: 2015-03-25 16:21    [W:0.021 / U:3.876 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site