public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH 0/6] zram: split page type read/write handling
@ 2024-12-10 10:53 Sergey Senozhatsky
  2024-12-10 10:53 ` [PATCH 1/6] zram: cond_resched() in writeback loop Sergey Senozhatsky
                   ` (5 more replies)
  0 siblings, 6 replies; 16+ messages in thread
From: Sergey Senozhatsky @ 2024-12-10 10:53 UTC (permalink / raw)
  To: Andrew Morton; +Cc: Minchan Kim, linux-kernel, Sergey Senozhatsky

This is a subset of [1] series which contains only fixes and
improvements (no new features, as ZRAM_HUGE split is still
under consideration).

The motivation for factoring out is that zram_write_page()
gets more and more complex all the time, because it tries
to handle too many scenarios: ZRAM_SAME store, ZRAM_HUGE
store, compress page store with zs_malloc allocation slowpath
and conditional recompression, etc.  Factor those out and
make things easier to handle.

Addition of cond_resched() is simply a fix, I can trigger
watchdog from zram writeback().  And early slot free is
just a reasonable thing to do.

[1] https://lore.kernel.org/linux-kernel/20241119072057.3440039-1-senozhatsky@chromium.org

Sergey Senozhatsky (6):
  zram: cond_resched() in writeback loop
  zram: free slot memory early during write
  zram: remove entry element member
  zram: factor out ZRAM_SAME write
  zram: factor out ZRAM_HUGE write
  zram: factor out different page types read

 drivers/block/zram/zram_drv.c | 293 +++++++++++++++++++---------------
 drivers/block/zram/zram_drv.h |   5 +-
 2 files changed, 167 insertions(+), 131 deletions(-)

-- 
2.47.1.613.gc27f4b7a9f-goog


^ permalink raw reply	[flat|nested] 16+ messages in thread

end of thread, other threads:[~2024-12-12  3:45 UTC | newest]

Thread overview: 16+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-12-10 10:53 [PATCH 0/6] zram: split page type read/write handling Sergey Senozhatsky
2024-12-10 10:53 ` [PATCH 1/6] zram: cond_resched() in writeback loop Sergey Senozhatsky
2024-12-11  0:54   ` Andrew Morton
2024-12-11  3:43     ` Sergey Senozhatsky
2024-12-11  3:59       ` Sergey Senozhatsky
2024-12-11  4:11     ` Sergey Senozhatsky
2024-12-11  7:49       ` Sergey Senozhatsky
2024-12-10 10:53 ` [PATCH 2/6] zram: free slot memory early during write Sergey Senozhatsky
2024-12-10 10:53 ` [PATCH 3/6] zram: remove entry element member Sergey Senozhatsky
2024-12-10 10:53 ` [PATCH 4/6] zram: factor out ZRAM_SAME write Sergey Senozhatsky
2024-12-10 10:53 ` [PATCH 5/6] zram: factor out ZRAM_HUGE write Sergey Senozhatsky
2024-12-10 11:31   ` Sergey Senozhatsky
2024-12-11 10:06   ` Sergey Senozhatsky
2024-12-11 23:51     ` Andrew Morton
2024-12-12  3:45       ` Sergey Senozhatsky
2024-12-10 10:54 ` [PATCH 6/6] zram: factor out different page types read Sergey Senozhatsky

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox