[PATCH 0/3] block: blk_interposer - Block Layer Interposer

From: Sergei Shtepa
Date: Wed Dec 09 2020 - 08:10:56 EST


Hi all.

I try to suggest the Block Layer Interposer (blk_interposer) again.
It`s allows to intercept bio requests, remap bio to another devices
or add new bios.

Initially, blk_interposer was designed to be compatible with
device mapper. Our (my and Hannes) previous attempt to offer
blk_interposer integrated with device mapper did not receive
any comments from the dm-devel team, and without their help
I will not be able to make a full implementation. I hope later
they will have time to support blk_interposer in device mapper.

And my blk-snap module requires an architecture change to
support blk_interposer.

This time I offer it along with a sample.
Despite the fact that blk_interposer is quite simple,
there are a few non-obvious points that I would like to clarify.

However, I suggest the blk_interposer now so that people
could discuss it and use it in their projects as soon as possible.

Sergei Shtepa (3):
block: blk_interposer - Block Layer Interposer
block: blk_interposer - sample
block: blk_interposer - sample config

block/blk-core.c | 32 +++
include/linux/blk_types.h | 6 +-
include/linux/genhd.h | 12 +-
samples/Kconfig | 7 +
samples/Makefile | 1 +
samples/blk_interposer/Makefile | 2 +
samples/blk_interposer/blk-interposer.c | 276 ++++++++++++++++++++++++
7 files changed, 333 insertions(+), 3 deletions(-)
create mode 100644 samples/blk_interposer/Makefile
create mode 100644 samples/blk_interposer/blk-interposer.c

--
2.20.1