Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1241152

Re: [PATCH] zsmalloc: fix obj_to_head use page_private(page) as value but not pointer

From Hui Zhu <teawater@gmail.com>
Newsgroups linux.kernel
Subject Re: [PATCH] zsmalloc: fix obj_to_head use page_private(page) as value but not pointer
Date 2015-10-07 06:50 +0200
Message-ID <qgOPU-2Ls-5@gated-at.bofh.it> (permalink)
References <qg9jI-1RW-23@gated-at.bofh.it> <qgAWC-7WB-15@gated-at.bofh.it>
Organization linux.* mail to news gateway

Show all headers | View raw


On Tue, Oct 6, 2015 at 9:54 PM, Minchan Kim <minchan@kernel.org> wrote:
> Hello,
>
> On Mon, Oct 05, 2015 at 04:23:01PM +0800, Hui Zhu wrote:
>> In function obj_malloc:
>>       if (!class->huge)
>>               /* record handle in the header of allocated chunk */
>>               link->handle = handle;
>>       else
>>               /* record handle in first_page->private */
>>               set_page_private(first_page, handle);
>> The huge's page save handle to private directly.
>>
>> But in obj_to_head:
>>       if (class->huge) {
>>               VM_BUG_ON(!is_first_page(page));
>>               return page_private(page);
>
> Typo.
>                 return *(unsigned long*)page_private(page);
>
> Please fix the description.
>
>>       } else
>>               return *(unsigned long *)obj;
>> It is used as a pointer.
>>
>> So change obj_to_head use page_private(page) as value but not pointer
>> in obj_to_head.
>
> The reason why there is no problem until now is huge-class page is
> born with ZS_FULL so it couldn't be migrated.
> Therefore, it shouldn't be real bug in practice.
> However, we need this patch for future-work "VM-aware zsmalloced
> page migration" to reduce external fragmentation.
>
>>
>> Signed-off-by: Hui Zhu <zhuhui@xiaomi.com>
>
> With fixing the comment,
>
> Acked-by: Minchan Kim <minchan@kernel.org>
>
> Thanks for the fix, Hui.
>

Thanks!  I will post a new version.

Best,
Hui

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

Back to linux.kernel | Previous | NextPrevious in thread | Find similar | Unroll thread


Thread

Re: [PATCH] zsmalloc: fix obj_to_head use page_private(page) as  value but not pointer Minchan Kim <minchan@kernel.org> - 2015-10-06 16:00 +0200
  [PATCH v2] zsmalloc: fix obj_to_head use page_private(page) as value but not pointer Hui Zhu <zhuhui@xiaomi.com> - 2015-10-07 06:50 +0200
  Re: [PATCH] zsmalloc: fix obj_to_head use page_private(page) as value  but not pointer Hui Zhu <teawater@gmail.com> - 2015-10-07 06:50 +0200

csiph-web