On 04/02/2015 12:27, Christian Borntraeger wrote:
> We never had a 31bit QEMU/kuli running. We would need to review several
> ioctls to check if this creates holes, bugs or whatever to make it work.
> Lets just disable compat support for KVM on s390.
> 
> Signed-off-by: Christian Borntraeger <[email protected]>
> ---
>  virt/kvm/Kconfig    |  4 ++++
>  virt/kvm/kvm_main.c | 12 ++++++------
>  2 files changed, 10 insertions(+), 6 deletions(-)
> 
> diff --git a/virt/kvm/Kconfig b/virt/kvm/Kconfig
> index fc0c5e6..e84d87c 100644
> --- a/virt/kvm/Kconfig
> +++ b/virt/kvm/Kconfig
> @@ -37,3 +37,7 @@ config HAVE_KVM_CPU_RELAX_INTERCEPT
>  
>  config KVM_VFIO
>         bool
> +
> +config KVM_COMPAT
> +       def_bool y
> +       depends on COMPAT && !S390
> diff --git a/virt/kvm/kvm_main.c b/virt/kvm/kvm_main.c
> index 67252e4..5894bf9 100644
> --- a/virt/kvm/kvm_main.c
> +++ b/virt/kvm/kvm_main.c
> @@ -89,7 +89,7 @@ struct dentry *kvm_debugfs_dir;
>  
>  static long kvm_vcpu_ioctl(struct file *file, unsigned int ioctl,
>                          unsigned long arg);
> -#ifdef CONFIG_COMPAT
> +#ifdef CONFIG_KVM_COMPAT
>  static long kvm_vcpu_compat_ioctl(struct file *file, unsigned int ioctl,
>                                 unsigned long arg);
>  #endif
> @@ -1944,7 +1944,7 @@ static int kvm_vcpu_release(struct inode *inode, struct 
> file *filp)
>  static struct file_operations kvm_vcpu_fops = {
>       .release        = kvm_vcpu_release,
>       .unlocked_ioctl = kvm_vcpu_ioctl,
> -#ifdef CONFIG_COMPAT
> +#ifdef CONFIG_KVM_COMPAT
>       .compat_ioctl   = kvm_vcpu_compat_ioctl,
>  #endif
>       .mmap           = kvm_vcpu_mmap,
> @@ -2225,7 +2225,7 @@ out:
>       return r;
>  }
>  
> -#ifdef CONFIG_COMPAT
> +#ifdef CONFIG_KVM_COMPAT
>  static long kvm_vcpu_compat_ioctl(struct file *filp,
>                                 unsigned int ioctl, unsigned long arg)
>  {
> @@ -2317,7 +2317,7 @@ static int kvm_device_release(struct inode *inode, 
> struct file *filp)
>  
>  static const struct file_operations kvm_device_fops = {
>       .unlocked_ioctl = kvm_device_ioctl,
> -#ifdef CONFIG_COMPAT
> +#ifdef CONFIG_KVM_COMPAT
>       .compat_ioctl = kvm_device_ioctl,
>  #endif
>       .release = kvm_device_release,
> @@ -2606,7 +2606,7 @@ out:
>       return r;
>  }
>  
> -#ifdef CONFIG_COMPAT
> +#ifdef CONFIG_KVM_COMPAT
>  struct compat_kvm_dirty_log {
>       __u32 slot;
>       __u32 padding1;
> @@ -2653,7 +2653,7 @@ out:
>  static struct file_operations kvm_vm_fops = {
>       .release        = kvm_vm_release,
>       .unlocked_ioctl = kvm_vm_ioctl,
> -#ifdef CONFIG_COMPAT
> +#ifdef CONFIG_KVM_COMPAT
>       .compat_ioctl   = kvm_vm_compat_ioctl,
>  #endif
>       .llseek         = noop_llseek,
> 

Looks good.

Acked-by: Paolo Bonzini <[email protected]>
--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to