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


Groups > linux.kernel > #1622683

[PATCH v2 0/6] zram clean up

From Minchan Kim <minchan@kernel.org>
Newsgroups linux.kernel
Subject [PATCH v2 0/6] zram clean up
Date 2017-04-13 05:10 +0200
Message-ID <tvD9f-4Zo-5@gated-at.bofh.it> (permalink)
Organization linux.* mail to news gateway

Show all headers | View raw


This patchset aims zram clean-up.

[1] clean up multiple pages's bvec handling.
[2] clean up partial IO handling
[3-6] clean up zram via using accessor and removing pointless structure.

With [2-6] applied, we can get a few hundred bytes as well as huge
readibility enhance.

This patchset is based on 2017-04-11-15-23 + recent ppc64 fixes[1]

[1] https://lkml.org/lkml/2017/4/12/924

* from v1
  * more clean up - Sergey
  * Fix zram_reset metadata overwrite - Sergey
  * Fix bvec handling in __zram_make_request
  * use zram_free_page in reset rather than zs_free

x86: 708 byte save

    add/remove: 1/1 grow/shrink: 0/11 up/down: 478/-1186 (-708)
    function                                     old     new   delta
    zram_special_page_read                         -     478    +478
    zram_reset_device                            317     314      -3
    mem_used_max_store                           131     128      -3
    compact_store                                 96      93      -3
    mm_stat_show                                 203     197      -6
    zram_add                                     719     712      -7
    zram_slot_free_notify                        229     214     -15
    zram_make_request                            819     803     -16
    zram_meta_free                               128     111     -17
    zram_free_page                               180     151     -29
    disksize_store                               432     361     -71
    zram_decompress_page.isra                    504       -    -504
    zram_bvec_rw                                2592    2080    -512
    Total: Before=25350773, After=25350065, chg -0.00%
    
ppc64: 231 byte save
    
    add/remove: 2/0 grow/shrink: 1/9 up/down: 681/-912 (-231)
    function                                     old     new   delta
    zram_special_page_read                         -     480    +480
    zram_slot_lock                                 -     200    +200
    vermagic                                      39      40      +1
    mm_stat_show                                 256     248      -8
    zram_meta_free                               200     184     -16
    zram_add                                     944     912     -32
    zram_free_page                               348     308     -40
    disksize_store                               572     492     -80
    zram_decompress_page                         664     564    -100
    zram_slot_free_notify                        292     160    -132
    zram_make_request                           1132    1000    -132
    zram_bvec_rw                                2768    2396    -372
    Total: Before=17565825, After=17565594, chg -0.00%

Minchan Kim (6):
  zram: handle multiple pages attached bio's bvec
  zram: partial IO refactoring
  zram: use zram_slot_lock instead of raw bit_spin_lock op
  zram: remove zram_meta structure
  zram: introduce zram data accessor
  zram: use zram_free_page instead of open-coded

 drivers/block/zram/zram_drv.c | 567 +++++++++++++++++++++---------------------
 drivers/block/zram/zram_drv.h |   6 +-
 2 files changed, 281 insertions(+), 292 deletions(-)

-- 
2.7.4

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


Thread

[PATCH v2 0/6] zram clean up Minchan Kim <minchan@kernel.org> - 2017-04-13 05:10 +0200
  [PATCH v2 4/6] zram: remove zram_meta structure Minchan Kim <minchan@kernel.org> - 2017-04-13 05:10 +0200
  [PATCH v2 5/6] zram: introduce zram data accessor Minchan Kim <minchan@kernel.org> - 2017-04-13 05:10 +0200

csiph-web