mbox series

[v2,00/14] x86/mm: large parts of P2M code and struct p2m_domain are HVM-only

Message ID f4e3bc16-2983-6f5b-37e8-26ac385d4d72@suse.com (mailing list archive)
Headers show
Series x86/mm: large parts of P2M code and struct p2m_domain are HVM-only | expand

Message

Jan Beulich Feb. 23, 2022, 3:55 p.m. UTC
The primary goal of this series is to leave p2m.c with, as its leading
comment suggests, just code for "physical-to-machine mappings for
automatically-translated domains". This requires splitting a few
functions, with their non-HVM parts moved elsewhere.

There aren't many changes in v2, mostly from re-basing. See individual
patches for details.

01: x86/P2M: rename p2m_remove_page()
02: x86/P2M: introduce p2m_{add,remove}_page()
03: x86/mm: move guest_physmap_{add,remove}_page()
04: x86/mm: split set_identity_p2m_entry() into PV and HVM parts
05: x86/P2M: p2m_{alloc,free}_ptp() and p2m_alloc_table() are HVM-only
06: x86/P2M: PoD, altp2m, and nested-p2m are HVM-only
07: x86/P2M: split out init/teardown functions
08: x86/P2M: p2m_get_page_from_gfn() is HVM-only
09: x86/P2M: derive a HVM-only variant from __get_gfn_type_access()
10: x86/p2m: re-arrange {,__}put_gfn()
11: shr_pages field is MEM_SHARING-only
12: paged_pages field is MEM_PAGING-only
13: x86/P2M: p2m.c is HVM-only
14: x86/P2M: the majority for struct p2m_domain's fields are HVM-only

Jan

Comments

George Dunlap April 1, 2022, 12:47 p.m. UTC | #1
> On Feb 23, 2022, at 3:55 PM, Jan Beulich <JBeulich@suse.com> wrote:
> 
> The primary goal of this series is to leave p2m.c with, as its leading
> comment suggests, just code for "physical-to-machine mappings for
> automatically-translated domains". This requires splitting a few
> functions, with their non-HVM parts moved elsewhere.
> 
> There aren't many changes in v2, mostly from re-basing. See individual
> patches for details.
> 
> 01: x86/P2M: rename p2m_remove_page()
> 02: x86/P2M: introduce p2m_{add,remove}_page()
> 03: x86/mm: move guest_physmap_{add,remove}_page()
> 04: x86/mm: split set_identity_p2m_entry() into PV and HVM parts
> 05: x86/P2M: p2m_{alloc,free}_ptp() and p2m_alloc_table() are HVM-only
> 06: x86/P2M: PoD, altp2m, and nested-p2m are HVM-only
> 07: x86/P2M: split out init/teardown functions
> 08: x86/P2M: p2m_get_page_from_gfn() is HVM-only
> 09: x86/P2M: derive a HVM-only variant from __get_gfn_type_access()
> 10: x86/p2m: re-arrange {,__}put_gfn()
> 11: shr_pages field is MEM_SHARING-only
> 12: paged_pages field is MEM_PAGING-only
> 13: x86/P2M: p2m.c is HVM-only
> 14: x86/P2M: the majority for struct p2m_domain's fields are HVM-only

OK, I think every patch has an R-b from me on it now — let me know if I missed anything.

 -George
Jan Beulich April 7, 2022, 7:45 a.m. UTC | #2
On 01.04.2022 14:47, George Dunlap wrote:
> 
> 
>> On Feb 23, 2022, at 3:55 PM, Jan Beulich <JBeulich@suse.com> wrote:
>>
>> The primary goal of this series is to leave p2m.c with, as its leading
>> comment suggests, just code for "physical-to-machine mappings for
>> automatically-translated domains". This requires splitting a few
>> functions, with their non-HVM parts moved elsewhere.
>>
>> There aren't many changes in v2, mostly from re-basing. See individual
>> patches for details.
>>
>> 01: x86/P2M: rename p2m_remove_page()
>> 02: x86/P2M: introduce p2m_{add,remove}_page()
>> 03: x86/mm: move guest_physmap_{add,remove}_page()
>> 04: x86/mm: split set_identity_p2m_entry() into PV and HVM parts
>> 05: x86/P2M: p2m_{alloc,free}_ptp() and p2m_alloc_table() are HVM-only
>> 06: x86/P2M: PoD, altp2m, and nested-p2m are HVM-only
>> 07: x86/P2M: split out init/teardown functions
>> 08: x86/P2M: p2m_get_page_from_gfn() is HVM-only
>> 09: x86/P2M: derive a HVM-only variant from __get_gfn_type_access()
>> 10: x86/p2m: re-arrange {,__}put_gfn()
>> 11: shr_pages field is MEM_SHARING-only
>> 12: paged_pages field is MEM_PAGING-only
>> 13: x86/P2M: p2m.c is HVM-only
>> 14: x86/P2M: the majority for struct p2m_domain's fields are HVM-only
> 
> OK, I think every patch has an R-b from me on it now — let me know if I missed anything.

Thanks a lot! I don't think there's anything missing; I've committed
the first few patches, until one where I still need an ack from Roger
for a vPCI change.

Jan