Adding the migration maintainers to the cc list, because the real meat of this patchset is "how should the migration of MTE tags be integrated into the migration/ram.c code", which is pretty well out of my area of expertise...
thanks -- PMM On Mon, 8 Feb 2021 at 03:20, Haibo Xu <haibo...@linaro.org> wrote: > > This series add support for MTE(Memory Tagging Extension)[1] > in KVM guest. It's based on Steven Price's kernel KVM patches > V7[2], and has been tested to ensure that test case[3] can be > passed in a KVM guest. Basic pre-copy migration test also passed > between two MTE enabled kvm guest. > > This is a RFC patch series becuase: > (1) Need to add some arm MTE specific codes to the ram migration > loop. There may be better way to do that in a more abstract way. > (2) Only pre-copy migration is supported and tested currently, > post-copy as well as compress/zero page migration are still WIP. > > All kinds of feedbacks are very welcomed, especially for the migration > support. > > Note: > (1) To support MTE migration, tags for one page are appended to > the page data during ram save iteration which make it easier > to sync the page data and tags. > > [1] https://community.arm.com/developer/ip-products/processors/b/ > processors-ip-blog/posts/enhancing-memory-safety > [2] https://lwn.net/Articles/842827/ > [3] https://elixir.bootlin.com/linux/latest/source/Documentation/ > arm64/memory-tagging-extension.rst > > Haibo Xu (5): > Update Linux headers with new MTE support > Add basic MTE support to KVM guest > Add APIs to get/set MTE tags > Add migration support for KVM guest with MTE > Enable the MTE support for KVM guest > > hw/arm/virt.c | 44 +++++++++++++------- > include/hw/arm/virt.h | 2 + > include/migration/misc.h | 1 + > linux-headers/linux/kvm.h | 15 +++++++ > migration/ram.c | 86 ++++++++++++++++++++++++++++++++++++++- > target/arm/cpu.c | 2 +- > target/arm/kvm.c | 9 ++++ > target/arm/kvm64.c | 31 ++++++++++++++ > target/arm/kvm_arm.h | 2 + > 9 files changed, 176 insertions(+), 16 deletions(-)