linux-raid.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v7 00/10] raid5-cache: enabling cache features
@ 2016-11-17 23:24 Song Liu
  2016-11-17 23:24 ` [PATCH v7 01/10] md/r5cache: Check array size in r5l_init_log Song Liu
                   ` (10 more replies)
  0 siblings, 11 replies; 12+ messages in thread
From: Song Liu @ 2016-11-17 23:24 UTC (permalink / raw)
  To: linux-raid
  Cc: neilb, shli, kernel-team, dan.j.williams, hch, liuzhengyuang521,
	liuzhengyuan, Song Liu

These are the 7th version of patches to enable write cache part of
raid5-cache. The journal part was released with kernel 4.4.

The caching part uses same disk format of raid456 journal, and provides
acceleration to writes. Write operations are committed (bio_endio) once
the data is secured in journal. Reconstruct and RMW are postponed to
writing-out phase, which is usually not on the critical path.

The changes are organized in 10 patches (details below).

Patch for chunk_aligned_read in earlier RFC is not included yet
(http://marc.info/?l=linux-raid&m=146432700719277). But we may still need
some optimizations later, especially for SSD raid devices.

Changes between v7 and v6 (http://marc.info/?l=linux-raid&m=147881079931937):
 1. Incorprate feedbacks;
 2. Modify representation of write-back state machine to use STRIPE_R5C_CACHING
    instead of STRIPE_R5C_WRITE_OUT. This reduces state trasitions in
    write-through mode;
 3. For prexor, allocate extra orig_page instead of page;
 4. Rename and refactor of some functions and variables;
 5. Remove path 11 (handle alloc_page failure). I will propose a simpler retry
    patch later.

Song Liu (10):
  md/r5cache: Check array size in r5l_init_log
  md/r5cache: move some code to raid5.h
  md/r5cache: State machine for raid5-cache write back mode
  md/r5cache: caching phase of r5cache
  md/r5cache: write-out phase and reclaim support
  md/r5cache: sysfs entry journal_mode
  md/r5cache: refactoring journal recovery code
  md/r5cache: r5cache recovery: part 1
  md/r5cache: r5cache recovery: part 2
  md/r5cache: handle SYNC and FUA

 drivers/md/raid5-cache.c | 1798 ++++++++++++++++++++++++++++++++++++++++------
 drivers/md/raid5.c       |  301 +++++---
 drivers/md/raid5.h       |  166 ++++-
 3 files changed, 1935 insertions(+), 330 deletions(-)

--
2.9.3

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

end of thread, other threads:[~2016-11-18 21:22 UTC | newest]

Thread overview: 12+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-11-17 23:24 [PATCH v7 00/10] raid5-cache: enabling cache features Song Liu
2016-11-17 23:24 ` [PATCH v7 01/10] md/r5cache: Check array size in r5l_init_log Song Liu
2016-11-17 23:24 ` [PATCH v7 02/10] md/r5cache: move some code to raid5.h Song Liu
2016-11-17 23:24 ` [PATCH v7 03/10] md/r5cache: State machine for raid5-cache write back mode Song Liu
2016-11-17 23:24 ` [PATCH v7 04/10] md/r5cache: caching phase of r5cache Song Liu
2016-11-17 23:24 ` [PATCH v7 05/10] md/r5cache: write-out phase and reclaim support Song Liu
2016-11-17 23:24 ` [PATCH v7 06/10] md/r5cache: sysfs entry journal_mode Song Liu
2016-11-17 23:24 ` [PATCH v7 07/10] md/r5cache: refactoring journal recovery code Song Liu
2016-11-17 23:24 ` [PATCH v7 08/10] md/r5cache: r5cache recovery: part 1 Song Liu
2016-11-17 23:24 ` [PATCH v7 09/10] md/r5cache: r5cache recovery: part 2 Song Liu
2016-11-17 23:24 ` [PATCH v7 10/10] md/r5cache: handle SYNC and FUA Song Liu
2016-11-18 21:22 ` [PATCH v7 00/10] raid5-cache: enabling cache features Shaohua Li

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).