diff mbox series

x86/Xen: drop leftover VM-assist uses

Message ID 215515af-cfb9-3237-03ba-3312e3fa0d34@suse.com (mailing list archive)
State Accepted
Commit 20e7da1bbba8474839157fb28fb538d2c058128d
Headers show
Series x86/Xen: drop leftover VM-assist uses | expand

Commit Message

Jan Beulich Feb. 15, 2023, 11:27 a.m. UTC
Both the 4Gb-segments and the PAE-extended-CR3 one are applicable to
32-bit guests only. The PAE-extended-CR3 use, furthermore, was redundant
with the PAE_MODE ELF note anyway.

Signed-off-by: Jan Beulich <jbeulich@suse.com>

Comments

Juergen Gross Feb. 16, 2023, 7:26 a.m. UTC | #1
On 15.02.23 12:27, Jan Beulich wrote:
> Both the 4Gb-segments and the PAE-extended-CR3 one are applicable to
> 32-bit guests only. The PAE-extended-CR3 use, furthermore, was redundant
> with the PAE_MODE ELF note anyway.
> 
> Signed-off-by: Jan Beulich <jbeulich@suse.com>

Reviewed-by: Juergen Gross <jgross@suse.com>


Juergen
Andrew Cooper Feb. 16, 2023, 1:46 p.m. UTC | #2
On 15/02/2023 11:27 am, Jan Beulich wrote:
> Both the 4Gb-segments and the PAE-extended-CR3 one are applicable to
> 32-bit guests only. The PAE-extended-CR3 use, furthermore, was redundant
> with the PAE_MODE ELF note anyway.
>
> Signed-off-by: Jan Beulich <jbeulich@suse.com>
>
> --- a/arch/x86/xen/setup.c
> +++ b/arch/x86/xen/setup.c
> @@ -934,12 +934,8 @@ void xen_enable_syscall(void)
>  
>  static void __init xen_pvmmu_arch_setup(void)
>  {
> -	HYPERVISOR_vm_assist(VMASST_CMD_enable, VMASST_TYPE_4gb_segments);
>  	HYPERVISOR_vm_assist(VMASST_CMD_enable, VMASST_TYPE_writable_pagetables);

I find it disappointing that a PV guest which states a hard dependency
on writeable pagetables in its elfnotes doesn't have this activated
automatically.

The PV API/ABI truly is an undesigned mess.

~Andrew
diff mbox series

Patch

--- a/arch/x86/xen/setup.c
+++ b/arch/x86/xen/setup.c
@@ -934,12 +934,8 @@  void xen_enable_syscall(void)
 
 static void __init xen_pvmmu_arch_setup(void)
 {
-	HYPERVISOR_vm_assist(VMASST_CMD_enable, VMASST_TYPE_4gb_segments);
 	HYPERVISOR_vm_assist(VMASST_CMD_enable, VMASST_TYPE_writable_pagetables);
 
-	HYPERVISOR_vm_assist(VMASST_CMD_enable,
-			     VMASST_TYPE_pae_extended_cr3);
-
 	if (register_callback(CALLBACKTYPE_event,
 			      xen_asm_exc_xen_hypervisor_callback) ||
 	    register_callback(CALLBACKTYPE_failsafe, xen_failsafe_callback))