mbox series

[0/6] bcache-tools: store meta data on NVDIMM

Message ID 20210206072005.24811-1-colyli@suse.de (mailing list archive)
Headers show
Series bcache-tools: store meta data on NVDIMM | expand

Message

Coly Li Feb. 6, 2021, 7:19 a.m. UTC
This series is the first effort to support NVDIMM for bcache: store
journal meta data on nvdimm namespace.

With this series, a NVDIMM namespace can be formatted as a bcache
meta device with '-M' option. This meta device can be shared among
multiple cache sets.

Except for adding BCH_FEATURE_INCOMPAT_NVDIMM_META to incompatible
feature set, there is no on-disk layout change for supporting NVDIMM.

A new super block format struct bch_nvm_pages_sb is introduced for
the NVDIMM meta-data device, it might be changed time-to-time before
the EXPERIMENTAL removed from Linux kernel code.

This series is just enough to make things work, more changes will
follow up to make more improvement later.

Coly Li
---

Coly Li (6):
  bcache-tools: add initial data structures for nvm_pages
  bcache-tools: reduce parameters of write_sb()
  bcache-tools: add BCH_FEATURE_INCOMPAT_NVDIMM_META to incompatible
    feature set
  bcache-tools: move super block info display routines into show.c
  bcache-tools: write nvm namespace super block on nvdimm
  bcache-tools: support "bcache show -d" for nvdimm-meta device

 Makefile            |   2 +-
 bcache-super-show.c |  24 ----
 bcache.c            | 289 +--------------------------------------
 bcache.h            |   7 +-
 features.c          |   2 +
 lib.c               | 158 +++++++++++++++++++---
 lib.h               |  28 +++-
 make.c              | 244 +++++++++++++++++++++++++++++----
 nvm_pages.h         | 187 ++++++++++++++++++++++++++
 show.c              | 321 ++++++++++++++++++++++++++++++++++++++++++++
 show.h              |  10 ++
 11 files changed, 917 insertions(+), 355 deletions(-)
 create mode 100644 nvm_pages.h
 create mode 100644 show.c
 create mode 100644 show.h