Messages in this thread | | | Date | Thu, 8 Sep 2022 21:48:35 -0700 | Subject | Re: [PATCH v7 00/14] KVM: mm: fd-based approach for supporting KVM guest private memory | From | Andy Lutomirski <> |
| |
On 8/19/22 17:27, Kirill A. Shutemov wrote: > On Thu, Aug 18, 2022 at 08:00:41PM -0700, Hugh Dickins wrote: >> On Thu, 18 Aug 2022, Kirill A . Shutemov wrote: >>> On Wed, Aug 17, 2022 at 10:40:12PM -0700, Hugh Dickins wrote: >>>> >>>> If your memory could be swapped, that would be enough of a good reason >>>> to make use of shmem.c: but it cannot be swapped; and although there >>>> are some references in the mailthreads to it perhaps being swappable >>>> in future, I get the impression that will not happen soon if ever. >>>> >>>> If your memory could be migrated, that would be some reason to use >>>> filesystem page cache (because page migration happens to understand >>>> that type of memory): but it cannot be migrated. >>> >>> Migration support is in pipeline. It is part of TDX 1.5 [1]. And swapping >>> theoretically possible, but I'm not aware of any plans as of now. >>> >>> [1] https://www.intel.com/content/www/us/en/developer/articles/technical/intel-trust-domain-extensions.html >> >> I always forget, migration means different things to different audiences. >> As an mm person, I was meaning page migration, whereas a virtualization >> person thinks VM live migration (which that reference appears to be about), >> a scheduler person task migration, an ornithologist bird migration, etc. >> >> But you're an mm person too: you may have cited that reference in the >> knowledge that TDX 1.5 Live Migration will entail page migration of the >> kind I'm thinking of. (Anyway, it's not important to clarify that here.) > > TDX 1.5 brings both. > > In TDX speak, mm migration called relocation. See TDH.MEM.PAGE.RELOCATE. >
This seems to be a pretty bad fit for the way that the core mm migrates pages. The core mm unmaps the page, then moves (in software) the contents to a new address, then faults it in. TDH.MEM.PAGE.RELOCATE doesn't fit into that workflow very well. I'm not saying it can't be done, but it won't just work.
| |