On Tue, Oct 6, 2015 at 9:54 PM, Minchan Kim <minc...@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 <zhu...@xiaomi.com> > > With fixing the comment, > > Acked-by: Minchan Kim <minc...@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 majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/