[PATCH v2] cxl: Use fixed width predefined types in data structure.

Philippe Bergheaud felix at linux.vnet.ibm.com
Fri Aug 5 22:02:00 AEST 2016

This patch fixes a regression introduced by commit b810253.

It substitutes the type __u8 to u8 in the uapi header cxl.h,
because the latter is not always defined in userland build
environments, in particular when cross-compiling libcxl on
x86_64 linux machines (RHEL6.7 and Ubuntu 16.04).

This patch also changes the size of the field data_size, and
makes it constant, to support 32-bit userland applications
running on big-endian ppc64 kernels transparently.

This breaks the (young) API that has been merged in v4.8.

Signed-off-by: Philippe Bergheaud <felix at linux.vnet.ibm.com>
Changes since v1:
  Added an explanation for the proposed API change in the log.

As far as I know, cxlflash is the only known user of the API.

 include/uapi/misc/cxl.h | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/include/uapi/misc/cxl.h b/include/uapi/misc/cxl.h
index cbae529..180d526 100644
--- a/include/uapi/misc/cxl.h
+++ b/include/uapi/misc/cxl.h
@@ -136,8 +136,8 @@ struct cxl_event_afu_driver_reserved {
 	 * Of course the contents will be ABI, but that's up the AFU driver.
-	size_t data_size;
-	u8 data[];
+	__u32 data_size;
+	__u8 data[];
 struct cxl_event {

More information about the Linuxppc-dev mailing list