File s390-tools-sles15sp2-47-include-boot-s390.h-add-guard-for-struct-__vector128.patch of Package s390-tools.18357
Subject: [PATCH] [FEAT VS1804] include/boot/s390.h: add guard for `struct __vector128`
From: Marc Hartmayer <mhartmay@linux.ibm.com>
Summary: genprotimg: Introduce new tool for the creation of PV images
Description: genprotimg takes a kernel, host-key documents, optionally an
initrd, optionally a file with the kernel command line, and it
generates a single, loadable image file. The image consists of a
concatenation of a plain text boot loader, the encrypted
components for kernel, initrd, and cmdline, and the
integrity-protected PV header, containing metadata necessary for
running the guest in PV mode. It's possible to use this image file
as a kernel for zIPL or for a direct kernel boot using QEMU.
Upstream-ID: 11bdab26297e508fdab29f9457094eedf681de53
Problem-ID: VS1804
Upstream-Description:
include/boot/s390.h: add guard for `struct __vector128`
`linux/asm/types.h` also defines the struct `__vector128` so in order
to avoid definition conflicts add the macro guard _S390_TYPES_H, which
is defined in `linux/asm/types`. `linux/asm/types.h` is included by
glib2, which is used by the PV tooling.
Reviewed-by: Jan Höppner <hoeppner@linux.ibm.com>
Signed-off-by: Marc Hartmayer <mhartmay@linux.ibm.com>
Signed-off-by: Jan Höppner <hoeppner@linux.ibm.com>
Signed-off-by: Marc Hartmayer <mhartmay@linux.ibm.com>
---
include/boot/s390.h | 5 +++++
1 file changed, 5 insertions(+)
--- a/include/boot/s390.h
+++ b/include/boot/s390.h
@@ -358,12 +358,17 @@ static __always_inline int is_zvm(void)
return cpuid.version == 0xff;
}
+/* To avoid conflicts add a macro guard since __vector128 is also
+ * defined in 'linux/asm/types.h'.
+ */
+#ifndef _S390_TYPES_H
/*
* Vector register definition
*/
typedef struct {
uint32_t u[4];
} __vector128;
+#endif
/*
* Save vector registers