[PATCH] KVM: s390: add explicit padding to struct kvm_s390_keyop

Arnd Bergmann posted 1 patch 1 day, 8 hours ago
include/uapi/linux/kvm.h | 1 +
1 file changed, 1 insertion(+)
[PATCH] KVM: s390: add explicit padding to struct kvm_s390_keyop
Posted by Arnd Bergmann 1 day, 8 hours ago
From: Arnd Bergmann <arnd@arndb.de>

The newly added structure causes a warning about implied padding:

./usr/include/linux/kvm.h:1247:1: error: padding struct size to alignment boundary with 6 bytes [-Werror=padded]

The padding can lead to leaking kernel data and ABI incompatibilies
when used on x86. Neither of these is a problem in this specific
patch, but it's best to avoid it and use explicit padding fields
in general.

Fixes: 0ee4ddc1647b ("KVM: s390: Storage key manipulation IOCTL")
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
---
I have a long series to add annotations to all existing structures,
but that will take a while. For now, I'm sending fixes when new
instances show up in linux-next.
---
 include/uapi/linux/kvm.h | 1 +
 1 file changed, 1 insertion(+)

diff --git a/include/uapi/linux/kvm.h b/include/uapi/linux/kvm.h
index a68b1741045c..1225fbd017e5 100644
--- a/include/uapi/linux/kvm.h
+++ b/include/uapi/linux/kvm.h
@@ -1255,6 +1255,7 @@ struct kvm_s390_keyop {
 	__u64 guest_addr;
 	__u8  key;
 	__u8  operation;
+	__u8  pad[6];
 };
 
 /*
-- 
2.39.5
Re: [PATCH] KVM: s390: add explicit padding to struct kvm_s390_keyop
Posted by Claudio Imbrenda 1 day, 7 hours ago
On Fri,  6 Feb 2026 10:17:30 +0100
Arnd Bergmann <arnd@kernel.org> wrote:

> From: Arnd Bergmann <arnd@arndb.de>
> 
> The newly added structure causes a warning about implied padding:
> 
> ./usr/include/linux/kvm.h:1247:1: error: padding struct size to alignment boundary with 6 bytes [-Werror=padded]
> 
> The padding can lead to leaking kernel data and ABI incompatibilies
> when used on x86. Neither of these is a problem in this specific
> patch, but it's best to avoid it and use explicit padding fields
> in general.
> 
> Fixes: 0ee4ddc1647b ("KVM: s390: Storage key manipulation IOCTL")
> Signed-off-by: Arnd Bergmann <arnd@arndb.de>

Reviewed-by: Claudio Imbrenda <imbrenda@linux.ibm.com>

> ---
> I have a long series to add annotations to all existing structures,
> but that will take a while. For now, I'm sending fixes when new
> instances show up in linux-next.
> ---
>  include/uapi/linux/kvm.h | 1 +
>  1 file changed, 1 insertion(+)
> 
> diff --git a/include/uapi/linux/kvm.h b/include/uapi/linux/kvm.h
> index a68b1741045c..1225fbd017e5 100644
> --- a/include/uapi/linux/kvm.h
> +++ b/include/uapi/linux/kvm.h
> @@ -1255,6 +1255,7 @@ struct kvm_s390_keyop {
>  	__u64 guest_addr;
>  	__u8  key;
>  	__u8  operation;
> +	__u8  pad[6];
>  };
>  
>  /*