LWN.net Logo

KVM: introduce readonly memslot

From:  Xiao Guangrong <xiaoguangrong@linux.vnet.ibm.com>
To:  Avi Kivity <avi@redhat.com>
Subject:  [PATCH v6 00/12] KVM: introduce readonly memslot
Date:  Tue, 21 Aug 2012 10:57:01 +0800
Message-ID:  <5032F8FD.2020306@linux.vnet.ibm.com>
Cc:  Marcelo Tosatti <mtosatti@redhat.com>, LKML <linux-kernel@vger.kernel.org>, KVM <kvm@vger.kernel.org>
Archive-link:  Article, Thread

Changelog:
- fix endless retrying for unhandleable instruction which accesses on readonly
  host memory
- divide slot->flags by 16:16, the lower part is visible for userspace, the
  reset is internally used in kvm, and document this in the code
- check slot->flags for gfn_to_hva_memslot

The test case can be found at:
http://lkml.indiana.edu/hypermail/linux/kernel/1207.2/008...

In current code, if we map a readonly memory space from host to guest
and the page is not currently mapped in the host, we will get a fault-pfn
and async is not allowed, then the vm will crash.

As Avi's suggestion, We introduce readonly memory region to map ROM/ROMD
to the guest, read access is happy for readonly memslot, write access on
readonly memslot will cause KVM_EXIT_MMIO exit.

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Copyright © 2012, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds