From: Kirti Wankhede <kwankhede@nvidia.com>
To: <alex.williamson@redhat.com>, <cjia@nvidia.com>
Cc: Kirti Wankhede <kwankhede@nvidia.com>,
qemu-devel@nongnu.org, kvm@vger.kernel.org
Subject: [RFC PATCH v1 0/4] Add migration support for VFIO device
Date: Tue, 16 Oct 2018 23:42:34 +0530 [thread overview]
Message-ID: <1539713558-2453-1-git-send-email-kwankhede@nvidia.com> (raw)
Add migration support for VFIO device
This Patch set include patches as below:
- Define KABI for VFIO device for migration support.
- Generic migration functionality for VFIO device.
* This patch set adds functionality only for PCI devices, but can be
extended to other VFIO devices.
* Added all the basic functions required for pre-copy, stop-and-copy and
resume phases of migration.
* Added state change notifier and from that notifier function, VFIO
device's state changed is conveyed to VFIO vendor driver.
* During save setup phase and resume/load setup phase, migration region
is queried from vendor driver and is mmaped by QEMU. This region is
used to read/write data from and to vendor driver.
* .save_live_pending, .save_live_iterate and .is_active_iterate are
implemented to use QEMU's functionality of iteration during pre-copy
phase.
* In .save_live_complete_precopy, that is in stop-and-copy phase,
iteration to read data from vendor driver is implemented till pending
bytes returned by vendor driver are not zero.
* .save_cleanup and .load_cleanup are implemented to unmap migration
region that was setup duing setup phase.
* Added function to get dirty pages bitmap from vendor driver.
- Add vfio_listerner_log_sync to mark dirty pages.
- Make VFIO PCI device migration capable.
Thanks,
Kirti
Kirti Wankhede (4):
VFIO KABI for migration interface
Add migration functions for VFIO devices
Add vfio_listerner_log_sync to mark dirty pages
Make vfio-pci device migration capable.
hw/vfio/Makefile.objs | 2 +-
hw/vfio/common.c | 32 ++
hw/vfio/migration.c | 716 ++++++++++++++++++++++++++++++++++++++++++
hw/vfio/pci.c | 13 +-
include/hw/vfio/vfio-common.h | 23 ++
linux-headers/linux/vfio.h | 91 ++++++
6 files changed, 869 insertions(+), 8 deletions(-)
create mode 100644 hw/vfio/migration.c
--
2.7.0
next reply other threads:[~2018-10-16 18:12 UTC|newest]
Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-10-16 18:12 Kirti Wankhede [this message]
2018-10-16 18:12 ` [RFC PATCH v1 1/4] VFIO KABI for migration interface Kirti Wankhede
2018-10-16 22:34 ` Alex Williamson
2018-10-17 20:47 ` Kirti Wankhede
2018-10-17 23:14 ` Alex Williamson
2018-10-18 1:49 ` Gonglei (Arei)
2018-10-17 9:06 ` Christoph Hellwig
2018-10-17 10:09 ` Dr. David Alan Gilbert
2018-10-17 21:17 ` Kirti Wankhede
2018-10-18 9:23 ` Dr. David Alan Gilbert
2018-10-16 18:12 ` [RFC PATCH v1 2/4] Add migration functions for VFIO devices Kirti Wankhede
2018-10-17 9:00 ` Cornelia Huck
2018-10-17 21:03 ` Kirti Wankhede
2018-10-16 18:12 ` [RFC PATCH v1 3/4] Add vfio_listerner_log_sync to mark dirty pages Kirti Wankhede
2018-10-16 18:12 ` [RFC PATCH v1 4/4] Make vfio-pci device migration capable Kirti Wankhede
2018-10-17 8:49 ` [RFC PATCH v1 0/4] Add migration support for VFIO device Cornelia Huck
2018-10-17 20:59 ` Kirti Wankhede
2018-10-18 2:41 ` Tian, Kevin
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=1539713558-2453-1-git-send-email-kwankhede@nvidia.com \
--to=kwankhede@nvidia.com \
--cc=alex.williamson@redhat.com \
--cc=cjia@nvidia.com \
--cc=kvm@vger.kernel.org \
--cc=qemu-devel@nongnu.org \
/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