Re: [RFC v4 10/14] target/s390x: use kvm_enabled() to wrap call to kvm_s390_get_hpage_1m

2021-06-02 Thread Cornelia Huck
On Mon, May 24 2021, "Cho, Yu-Chen"  wrote:

> this will allow to remove the kvm stubs.
>
> Signed-off-by: Claudio Fontana 
> Signed-off-by: Cho, Yu-Chen 
> ---
>  target/s390x/diag.c | 3 ++-
>  1 file changed, 2 insertions(+), 1 deletion(-)
>
> diff --git a/target/s390x/diag.c b/target/s390x/diag.c
> index c17a2498a7..8405f69df0 100644
> --- a/target/s390x/diag.c
> +++ b/target/s390x/diag.c
> @@ -20,6 +20,7 @@
>  #include "hw/s390x/ipl.h"
>  #include "hw/s390x/s390-virtio-ccw.h"
>  #include "hw/s390x/pv.h"
> +#include "sysemu/kvm.h"
>  #include "kvm_s390x.h"
>  
>  int handle_diag_288(CPUS390XState *env, uint64_t r1, uint64_t r3)
> @@ -168,7 +169,7 @@ out:
>  return;
>  }
>  
> -if (kvm_s390_get_hpage_1m()) {
> +if (kvm_enabled() && kvm_s390_get_hpage_1m()) {

I was wondering whether a better option would be to create some kind of
has_huge_page_backing() function that uses kvm_enabled(), but this seems
to be the only call site for kvm_s390_get_hpage_1m(), so I'm not sure
whether it would be worth it.

>  error_report("Protected VMs can currently not be backed with "
>   "huge pages");
>  env->regs[r1 + 1] = DIAG_308_RC_INVAL_FOR_PV;




[RFC v4 10/14] target/s390x: use kvm_enabled() to wrap call to kvm_s390_get_hpage_1m

2021-05-23 Thread Cho, Yu-Chen
this will allow to remove the kvm stubs.

Signed-off-by: Claudio Fontana 
Signed-off-by: Cho, Yu-Chen 
---
 target/s390x/diag.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/target/s390x/diag.c b/target/s390x/diag.c
index c17a2498a7..8405f69df0 100644
--- a/target/s390x/diag.c
+++ b/target/s390x/diag.c
@@ -20,6 +20,7 @@
 #include "hw/s390x/ipl.h"
 #include "hw/s390x/s390-virtio-ccw.h"
 #include "hw/s390x/pv.h"
+#include "sysemu/kvm.h"
 #include "kvm_s390x.h"
 
 int handle_diag_288(CPUS390XState *env, uint64_t r1, uint64_t r3)
@@ -168,7 +169,7 @@ out:
 return;
 }
 
-if (kvm_s390_get_hpage_1m()) {
+if (kvm_enabled() && kvm_s390_get_hpage_1m()) {
 error_report("Protected VMs can currently not be backed with "
  "huge pages");
 env->regs[r1 + 1] = DIAG_308_RC_INVAL_FOR_PV;
-- 
2.31.1