From: Fam Zheng <famz@redhat.com>
To: qemu-devel@nongnu.org
Cc: Paolo Bonzini <pbonzini@redhat.com>,
Keith Busch <keith.busch@intel.com>,
qemu-block@nongnu.org, Fam Zheng <famz@redhat.com>,
Kevin Wolf <kwolf@redhat.com>, Max Reitz <mreitz@redhat.com>,
Eric Blake <eblake@redhat.com>,
Markus Armbruster <armbru@redhat.com>,
Stefan Hajnoczi <stefanha@redhat.com>,
Karl Rister <krister@redhat.com>
Subject: [Qemu-devel] [PATCH v4 0/9] block: Add VFIO based driver for NVMe device
Date: Wed, 10 Jan 2018 17:18:37 +0800 [thread overview]
Message-ID: <20180110091846.10699-1-famz@redhat.com> (raw)
v4: - Rebase, address Stefan's comments.
- Add QAPI and doc patches.
v3: Rebase, small tweaks/fixes and add locks to provide basic thread safety
(basic because it is not really tested).
v2:
- Implement "split vfio addr space" appraoch. [Paolo]
- Add back 'device reset' in nvme_close(). [Paolo]
- Better variable namings. [Stefan]
- "Reuse" macro definitions from NVMe emulation code.
- Rebase onto current master which has polling by default and update
performance results accordingly.
- Update MAINTAINERS.
- Specify namespace in URI.
- The sporadical I/O error from v1 "disappeared" in this version.
- Tests one: qemu-img bench, fio, bonnie++ and installation of
ubuntu/fedora/rhel on QEMU emulated nvme and a Intel P3700 card.
Fam Zheng (9):
stubs: Add stubs for ram block API
util: Introduce vfio helpers
block: Add VFIO based NVMe driver
block: Introduce buf register API
block/nvme: Implement .bdrv_(un)register_buf
qemu-img: Map bench buffer
block: Move NVMe constants to a separate header
docs: Add section for NVMe VFIO driver
qapi: Add NVMe driver options to the schema
MAINTAINERS | 6 +
block/Makefile.objs | 1 +
block/block-backend.c | 10 +
block/io.c | 24 +
block/nvme.c | 1143 ++++++++++++++++++++++++++++++++++++++++
block/trace-events | 21 +
docs/qemu-block-drivers.texi | 32 ++
hw/block/nvme.h | 698 +-----------------------
include/block/block.h | 11 +-
include/block/block_int.h | 9 +
include/block/nvme.h | 700 ++++++++++++++++++++++++
include/qemu/vfio-helpers.h | 30 ++
include/sysemu/block-backend.h | 3 +
qapi/block-core.json | 16 +-
qemu-img.c | 9 +-
stubs/Makefile.objs | 1 +
stubs/ram-block.c | 16 +
util/Makefile.objs | 1 +
util/trace-events | 11 +
util/vfio-helpers.c | 723 +++++++++++++++++++++++++
20 files changed, 2765 insertions(+), 700 deletions(-)
create mode 100644 block/nvme.c
create mode 100644 include/block/nvme.h
create mode 100644 include/qemu/vfio-helpers.h
create mode 100644 stubs/ram-block.c
create mode 100644 util/vfio-helpers.c
--
2.14.3
next reply other threads:[~2018-01-10 9:19 UTC|newest]
Thread overview: 30+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-01-10 9:18 Fam Zheng [this message]
2018-01-10 9:18 ` [Qemu-devel] [PATCH v4 1/9] stubs: Add stubs for ram block API Fam Zheng
2018-01-10 16:52 ` Stefan Hajnoczi
2018-01-10 9:18 ` [Qemu-devel] [PATCH v4 2/9] util: Introduce vfio helpers Fam Zheng
2018-01-10 16:52 ` Stefan Hajnoczi
2018-01-12 1:28 ` Fam Zheng
2018-01-10 20:09 ` Alex Williamson
2018-01-12 1:51 ` Fam Zheng
2018-01-10 9:18 ` [Qemu-devel] [PATCH v4 3/9] block: Add VFIO based NVMe driver Fam Zheng
2018-01-10 14:43 ` Eric Blake
2018-01-10 14:48 ` Paolo Bonzini
2018-01-10 14:44 ` Eric Blake
2018-01-12 3:11 ` Fam Zheng
2018-01-10 18:33 ` Stefan Hajnoczi
2018-01-11 13:48 ` Paolo Bonzini
2018-01-12 3:09 ` Fam Zheng
2018-01-10 9:18 ` [Qemu-devel] [PATCH v4 4/9] block: Introduce buf register API Fam Zheng
2018-01-10 18:55 ` Stefan Hajnoczi
2018-01-10 9:18 ` [Qemu-devel] [PATCH v4 5/9] block/nvme: Implement .bdrv_(un)register_buf Fam Zheng
2018-01-10 18:56 ` Stefan Hajnoczi
2018-01-10 9:18 ` [Qemu-devel] [PATCH v4 6/9] qemu-img: Map bench buffer Fam Zheng
2018-01-10 18:56 ` Stefan Hajnoczi
2018-01-10 9:18 ` [Qemu-devel] [PATCH v4 7/9] block: Move NVMe constants to a separate header Fam Zheng
2018-01-10 18:57 ` Stefan Hajnoczi
2018-01-10 9:18 ` [Qemu-devel] [PATCH v4 8/9] docs: Add section for NVMe VFIO driver Fam Zheng
2018-01-10 19:05 ` Stefan Hajnoczi
2018-01-10 9:18 ` [Qemu-devel] [PATCH v4 9/9] qapi: Add NVMe driver options to the schema Fam Zheng
2018-01-10 14:41 ` Eric Blake
2018-01-12 3:12 ` Fam Zheng
2018-01-10 19:06 ` Stefan Hajnoczi
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=20180110091846.10699-1-famz@redhat.com \
--to=famz@redhat.com \
--cc=armbru@redhat.com \
--cc=eblake@redhat.com \
--cc=keith.busch@intel.com \
--cc=krister@redhat.com \
--cc=kwolf@redhat.com \
--cc=mreitz@redhat.com \
--cc=pbonzini@redhat.com \
--cc=qemu-block@nongnu.org \
--cc=qemu-devel@nongnu.org \
--cc=stefanha@redhat.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 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).