Linux-bcache Archive on lore.kernel.org
 help / color / Atom feed
* [PATCH 00/20] bcache patches for Linux v5.12
@ 2021-02-10  5:07 Coly Li
  2021-02-10  5:07 ` [PATCH 01/20] bcache: consider the fragmentation when update the writeback rate Coly Li
                   ` (20 more replies)
  0 siblings, 21 replies; 26+ messages in thread
From: Coly Li @ 2021-02-10  5:07 UTC (permalink / raw)
  To: axboe
  Cc: linux-bcache, linux-block, Coly Li, Jianpeng Ma, Qiaowei Ren, Kai Krakow

Hi Jens,

This is the first wave bcache patches for Linux v5.12.

It is nice to see in this round we have 3 new patch contributors:
Jianpeng Ma, Qiaowei Ren and Kai Krakow.

In this series, the EXPERIMENTAL patches from Jianpeng Ma, Qiaowei Ren
and me are initial effort to store bcache meta-data on NVDIMM namespace.
The NVDIMM space is managed and mapped via DAX interface, and accessed
by linear address. In this submission we store bcache journal on NVDIMM,
in future bcache btree nodes and other meta data will be added in too,
before we remove the EXPERIMENTAL statues.

Dongdong Tao contributes a performance optimization when
bcache cache buckets are highly fregmented, Dongdong's patch makes the
dirty data writeback faster and from his benchmark reprots such changes
have recognized improvement for randome write I/O thoughput and latency
for highly fregmented buckets, and no regression for regular I/O
observed.

Kai Krakow contributes 4 patches to offload system_wq usage to separated
btree_io_wq and bch_flush_wq. In his environment the daily backup job
throughput increases from 60.2MB/s to 419MB/s and accomplished time
reduced from 14h29m to 2h13m.

Joe Perches also contributes a fine code stype fix which I pick for this
submission.

Please take them for Linux v5.12 merge window.

Thank you in advance.

Coly Li
---

Coly Li (8):
  bcache: add initial data structures for nvm pages
  bcache: use bucket index for SET_GC_MARK() in bch_btree_gc_finish()
  bcache: add BCH_FEATURE_INCOMPAT_NVDIMM_META into incompat feature set
  bcache: initialize bcache journal for NVDIMM meta device
  bcache: support storing bcache journal into NVDIMM meta device
  bcache: read jset from NVDIMM pages for journal replay
  bcache: add sysfs interface register_nvdimm_meta to register NVDIMM
    meta device
  bcache: only initialize nvm-pages allocator when
    CONFIG_BCACHE_NVM_PAGES configured

Jianpeng Ma (6):
  bcache: initialize the nvm pages allocator
  bcache: initialization of the buddy
  bcache: bch_nvm_alloc_pages() of the buddy
  bcache: bch_nvm_free_pages() of the buddy
  bcache: get allocated pages from specific owner
  bcache: persist owner info when alloc/free pages.

Joe Perches (1):
  bcache: Avoid comma separated statements

Kai Krakow (4):
  bcache: Fix register_device_aync typo
  Revert "bcache: Kill btree_io_wq"
  bcache: Give btree_io_wq correct semantics again
  bcache: Move journal work to new flush wq

dongdong tao (1):
  bcache: consider the fragmentation when update the writeback rate

 drivers/md/bcache/Kconfig       |   6 +
 drivers/md/bcache/Makefile      |   2 +-
 drivers/md/bcache/bcache.h      |   7 +
 drivers/md/bcache/bset.c        |  12 +-
 drivers/md/bcache/btree.c       |  27 +-
 drivers/md/bcache/features.h    |   9 +
 drivers/md/bcache/journal.c     | 293 ++++++++---
 drivers/md/bcache/journal.h     |   2 +-
 drivers/md/bcache/nvm-pages.c   | 853 ++++++++++++++++++++++++++++++++
 drivers/md/bcache/nvm-pages.h   | 112 +++++
 drivers/md/bcache/super.c       |  76 ++-
 drivers/md/bcache/sysfs.c       |  29 +-
 drivers/md/bcache/writeback.c   |  42 ++
 drivers/md/bcache/writeback.h   |   4 +
 include/uapi/linux/bcache-nvm.h | 188 +++++++
 15 files changed, 1579 insertions(+), 83 deletions(-)
 create mode 100644 drivers/md/bcache/nvm-pages.c
 create mode 100644 drivers/md/bcache/nvm-pages.h
 create mode 100644 include/uapi/linux/bcache-nvm.h

-- 
2.26.2


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

end of thread, back to index

Thread overview: 26+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-02-10  5:07 [PATCH 00/20] bcache patches for Linux v5.12 Coly Li
2021-02-10  5:07 ` [PATCH 01/20] bcache: consider the fragmentation when update the writeback rate Coly Li
2021-02-10  5:07 ` [PATCH 02/20] bcache: Fix register_device_aync typo Coly Li
2021-02-10  5:07 ` [PATCH 03/20] Revert "bcache: Kill btree_io_wq" Coly Li
2021-02-10  5:07 ` [PATCH 04/20] bcache: Give btree_io_wq correct semantics again Coly Li
2021-02-10  5:07 ` [PATCH 05/20] bcache: Move journal work to new flush wq Coly Li
2021-02-10  5:07 ` [PATCH 06/20] bcache: Avoid comma separated statements Coly Li
2021-02-10  5:07 ` [PATCH 07/20] bcache: add initial data structures for nvm pages Coly Li
2021-02-10 15:09   ` Jens Axboe
2021-02-11  3:58     ` Coly Li
2021-02-10  5:07 ` [PATCH 08/20] bcache: initialize the nvm pages allocator Coly Li
2021-02-10  5:07 ` [PATCH 09/20] bcache: initialization of the buddy Coly Li
2021-02-10  5:07 ` [PATCH 10/20] bcache: bch_nvm_alloc_pages() " Coly Li
2021-02-10  5:07 ` [PATCH 11/20] bcache: bch_nvm_free_pages() " Coly Li
2021-02-10  5:07 ` [PATCH 12/20] bcache: get allocated pages from specific owner Coly Li
2021-02-10  5:07 ` [PATCH 13/20] bcache: persist owner info when alloc/free pages Coly Li
2021-02-10  5:07 ` [PATCH 14/20] bcache: use bucket index for SET_GC_MARK() in bch_btree_gc_finish() Coly Li
2021-02-10  5:07 ` [PATCH 15/20] bcache: add BCH_FEATURE_INCOMPAT_NVDIMM_META into incompat feature set Coly Li
2021-02-10  5:07 ` [PATCH 16/20] bcache: initialize bcache journal for NVDIMM meta device Coly Li
2021-02-10  5:07 ` [PATCH 17/20] bcache: support storing bcache journal into " Coly Li
2021-02-18 21:21   ` Nix
2021-02-10  5:07 ` [PATCH 18/20] bcache: read jset from NVDIMM pages for journal replay Coly Li
2021-02-10  5:07 ` [PATCH 19/20] bcache: add sysfs interface register_nvdimm_meta to register NVDIMM meta device Coly Li
2021-02-10  5:07 ` [PATCH 20/20] bcache: only initialize nvm-pages allocator when CONFIG_BCACHE_NVM_PAGES configured Coly Li
2021-02-10 15:11 ` [PATCH 00/20] bcache patches for Linux v5.12 Jens Axboe
2021-02-12 16:09   ` Coly Li

Linux-bcache Archive on lore.kernel.org

Archives are clonable:
	git clone --mirror https://lore.kernel.org/linux-bcache/0 linux-bcache/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 linux-bcache linux-bcache/ https://lore.kernel.org/linux-bcache \
		linux-bcache@vger.kernel.org
	public-inbox-index linux-bcache

Example config snippet for mirrors

Newsgroup available over NNTP:
	nntp://nntp.lore.kernel.org/org.kernel.vger.linux-bcache


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git