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

Subsystems: the rest

STALE3683d

3 messages, 3 authors, 2016-08-05 · open the first message on its own page

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

From: Philippe Bergheaud <hidden>
Date: 2016-08-04 13:56:15

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).

It also makes the definition of cxl_event_afu_driver_reserved
more consistent with the other definitions in the header file.

Signed-off-by: Philippe Bergheaud <redacted>
---
 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 {
-- 
2.8.0

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

From: David Laight <hidden>
Date: 2016-08-04 14:29:11

From: Philippe Bergheaud
Sent: 04 August 2016 14:56
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).
=20
It also makes the definition of cxl_event_afu_driver_reserved
more consistent with the other definitions in the header file.
...
quoted hunk
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[];
 };
You've just changed 'data_size' from 64bit to 32bit (on 64bit systems).
This isn't mentioned in the commit message and changes the API.

I've NFI what it need to be...

	David

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

From: Michael Ellerman <mpe@ellerman.id.au>
Date: 2016-08-05 07:09:17

David Laight [off-list ref] writes:
From: Philippe Bergheaud
quoted
Sent: 04 August 2016 14:56
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).

It also makes the definition of cxl_event_afu_driver_reserved
more consistent with the other definitions in the header file.
...
quoted
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[];
 };
You've just changed 'data_size' from 64bit to 32bit (on 64bit systems).
This isn't mentioned in the commit message and changes the API.
Yeah that's pretty fishy.

In practice I suspect there aren't thousands of users of that API, the
commit is only a month old, so we can probably still change it. But
please call it out in the change log.

cheers
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help