Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

zsmalloc: cosmetic compaction code adjustments

Change zs_object_copy() argument order to be (DST, SRC) rather than
(SRC, DST). copy/move functions usually have (to, from) arguments
order.

Rename alloc_target_page() to isolate_target_page(). This function
doesn't allocate anything, it isolates target page, pretty much like
isolate_source_page().

Tweak __zs_compact() comment.

Signed-off-by: Sergey Senozhatsky <sergey.senozhatsky@gmail.com>
Acked-by: Minchan Kim <minchan@kernel.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>

authored by

Sergey Senozhatsky and committed by
Linus Torvalds
0dc63d48 04f05909

+6 -6
+6 -6
mm/zsmalloc.c
··· 1471 1471 } 1472 1472 EXPORT_SYMBOL_GPL(zs_free); 1473 1473 1474 - static void zs_object_copy(unsigned long src, unsigned long dst, 1474 + static void zs_object_copy(unsigned long dst, unsigned long src, 1475 1475 struct size_class *class) 1476 1476 { 1477 1477 struct page *s_page, *d_page; ··· 1612 1612 1613 1613 used_obj = handle_to_obj(handle); 1614 1614 free_obj = obj_malloc(d_page, class, handle); 1615 - zs_object_copy(used_obj, free_obj, class); 1615 + zs_object_copy(free_obj, used_obj, class); 1616 1616 index++; 1617 1617 record_obj(handle, free_obj); 1618 1618 unpin_tag(handle); ··· 1628 1628 return ret; 1629 1629 } 1630 1630 1631 - static struct page *alloc_target_page(struct size_class *class) 1631 + static struct page *isolate_target_page(struct size_class *class) 1632 1632 { 1633 1633 int i; 1634 1634 struct page *page; ··· 1718 1718 cc.index = 0; 1719 1719 cc.s_page = src_page; 1720 1720 1721 - while ((dst_page = alloc_target_page(class))) { 1721 + while ((dst_page = isolate_target_page(class))) { 1722 1722 cc.d_page = dst_page; 1723 1723 /* 1724 - * If there is no more space in dst_page, try to 1725 - * allocate another zspage. 1724 + * If there is no more space in dst_page, resched 1725 + * and see if anyone had allocated another zspage. 1726 1726 */ 1727 1727 if (!migrate_zspage(pool, class, &cc)) 1728 1728 break;