On Wed, 9 Oct 2019 at 19:21, Andrew Cooper <andrew.coop...@citrix.com> wrote:
>
> c/s c0902a9a143a refactored hvm_enable() a little, but dropped the logic which
> cleared hap_supported in the case that the user had asked for it off.
>
> This results in Xen booting up, claiming:
>
>   (XEN) HVM: Hardware Assisted Paging (HAP) detected but disabled
>
> but with HAP advertised via sysctl, and XEN_DOMCTL_CDF_hap being accepted in
> domain_create().
>
> Signed-off-by: Andrew Cooper <andrew.coop...@citrix.com>

That should have been largely code movement, so I don't know how I
managed to drop that.

Reviewed-by: Paul Durrant <p...@xen.org>

> ---
> CC: Jan Beulich <jbeul...@suse.com>
> CC: Wei Liu <w...@xen.org>
> CC: Roger Pau Monné <roger....@citrix.com>
> CC: Paul Durrant <p...@xen.org>
> CC: Juergen Gross <jgr...@suse.com>
>
> This is a regression from 4.12, so should be fixed before 4.13 ships.
> ---
>  xen/arch/x86/hvm/hvm.c | 5 +++--
>  1 file changed, 3 insertions(+), 2 deletions(-)
>
> diff --git a/xen/arch/x86/hvm/hvm.c b/xen/arch/x86/hvm/hvm.c
> index c22cb39cf3..9acd359c99 100644
> --- a/xen/arch/x86/hvm/hvm.c
> +++ b/xen/arch/x86/hvm/hvm.c
> @@ -142,7 +142,7 @@ static struct notifier_block cpu_nfb = {
>      .notifier_call = cpu_callback
>  };
>
> -static bool __init hap_supported(const struct hvm_function_table *fns)
> +static bool __init hap_supported(struct hvm_function_table *fns)
>  {
>      if ( !fns->hap_supported )
>      {
> @@ -152,6 +152,7 @@ static bool __init hap_supported(const struct 
> hvm_function_table *fns)
>
>      if ( !opt_hap_enabled )
>      {
> +        fns->hap_supported = 0;
>          printk("HVM: Hardware Assisted Paging (HAP) detected but 
> disabled\n");
>          return false;
>      }
> @@ -175,7 +176,7 @@ static int __init hvm_enable(void)
>      hvm_enabled = 1;
>
>      printk("HVM: %s enabled\n", fns->name);
> -    if ( !hap_supported(fns) )
> +    if ( !hap_supported(&hvm_funcs) )
>          clear_iommu_hap_pt_share();
>      else
>      {
> --
> 2.11.0
>

_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

Reply via email to