Thread (58 messages) 58 messages, 10 authors, 2022-08-25

Re: [PATCH v6 6/8] KVM: Handle page fault for private memory

From: Chao Peng <hidden>
Date: 2022-07-21 09:50:31
Also in: kvm, linux-doc, linux-fsdevel, linux-mm, lkml, qemu-devel

On Wed, Jul 20, 2022 at 04:08:10PM -0700, Vishal Annapurve wrote:
quoted
quoted
Hmm, so a new slot->arch.page_attr array shouldn't be necessary, KVM can instead
update slot->arch.lpage_info on shared<->private conversions.  Detecting whether
a given range is partially mapped could get nasty if KVM defers tracking to the
backing store, but if KVM itself does the tracking as was previously suggested[*],
then updating lpage_info should be relatively straightfoward, e.g. use
xa_for_each_range() to see if a given 2mb/1gb range is completely covered (fully
shared) or not covered at all (fully private).

[*] https://lore.kernel.org/all/YofeZps9YXgtP3f1@google.com (local)
Yes, slot->arch.page_attr was introduced to help identify whether a page
is completely shared/private at given level. It seems XARRAY can serve
the same purpose, though I know nothing about it. Looking forward to
seeing the patch of using XARRAY.

yes, update slot->arch.lpage_info is good to utilize the existing logic
and Isaku has applied it to slot->arch.lpage_info for 2MB support patches.
Chao, are you planning to implement these changes to ensure proper
handling of hugepages partially mapped as private/shared in subsequent
versions of this series?
Or is this something left to be handled by the architecture specific code?
Ah, the topic gets moved to a different place. I should update here.
There were more discussions under TDX KVM patch series and I actually
just sent out the draft code for this:

https://lkml.org/lkml/2022/7/20/610

That patch is based on UPM v7 here. If I can get more feedbacks there
then I will include an udpated version in UPM v8.

If you have bandwdith, you can also play with that patch, any feedback
is welcome.

Chao
Regards,
Vishal
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help