From: Coly Li <colyli@suse.de>
To: linux-bcache@vger.kernel.org
Cc: linux-block@vger.kernel.org, jianpeng.ma@intel.com,
qiaowei.ren@intel.com, Coly Li <colyli@suse.de>
Subject: [PATCH 0/6] bcache: store bcache journal on NVDIMM pages
Date: Sun, 7 Feb 2021 23:24:17 +0800 [thread overview]
Message-ID: <20210207152423.70697-1-colyli@suse.de> (raw)
Hi folks,
This is the first effort to store bcache meta data on NVDIMM, now the
bcache journal can be stored on NVDIMM pages.
The bcache code does not directly support NVDIMM, the NVDIMM pages are
managed with a simple buddy-like pages alocator nvm-pages. The nvm-pages
allocator is developed by Jianpeng Ma and Qiaowei Ren from Intel. It
could be a separated kernel module to manage NVDIMM space in form of
pages and share them among multiple users (drivers). Now nvm-pages is
directly included in bcache kernel module as EXPERIMENTAL function.
This series is a just-enough code to work, we will continue to improve
both bcache and nvm-pages allocator before removing the EXPERIMENTAL tag
from Kconfig. In the very basic testing 30%+ IOPS increasing is observed
for 512Byte random writes when storing bcache journal jset on NVDIMM
namespace.
Thanks to Jianpeng Ma and Qiaowei Re fo their contribution to the mini
nvm-pages allocator, which helps a lot to allocate and release the pages
from NVDIMM nagespace much simpler for bcache journaling.
Coly Li
---
Coly Li (6):
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
bache: read jset from NVDIMM pages for journal replay
bcache: add sysfs interface register_nvdimm_meta to register NVDIMM
meta device
drivers/md/bcache/btree.c | 6 +-
drivers/md/bcache/features.h | 9 ++
drivers/md/bcache/journal.c | 288 +++++++++++++++++++++++++++--------
drivers/md/bcache/journal.h | 2 +-
drivers/md/bcache/super.c | 38 ++++-
5 files changed, 274 insertions(+), 69 deletions(-)
--
2.26.2
next reply other threads:[~2021-02-07 15:28 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-02-07 15:24 Coly Li [this message]
2021-02-07 15:24 ` [PATCH 1/6] bcache: use bucket index for SET_GC_MARK() in bch_btree_gc_finish() Coly Li
2021-02-07 15:24 ` [PATCH 2/6] bcache: add BCH_FEATURE_INCOMPAT_NVDIMM_META into incompat feature set Coly Li
2021-02-07 15:24 ` [PATCH 3/6] bcache: initialize bcache journal for NVDIMM meta device Coly Li
2021-02-07 15:24 ` [PATCH 4/6] bcache: support storing bcache journal into " Coly Li
2021-02-07 15:24 ` [PATCH 5/6] bache: read jset from NVDIMM pages for journal replay Coly Li
2021-02-07 15:24 ` [PATCH 6/6] bcache: add sysfs interface register_nvdimm_meta to register NVDIMM meta device Coly Li
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20210207152423.70697-1-colyli@suse.de \
--to=colyli@suse.de \
--cc=jianpeng.ma@intel.com \
--cc=linux-bcache@vger.kernel.org \
--cc=linux-block@vger.kernel.org \
--cc=qiaowei.ren@intel.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.