2018-08-25 01:34:18

by Vinson Lee

[permalink] [raw]
Subject: [PATCH] uapi: Fix linux/rds.h userspace compilation errors.

Include linux/in6.h for struct in6_addr.

/usr/include/linux/rds.h:156:18: error: field ‘laddr’ has incomplete type
struct in6_addr laddr;
^~~~~
/usr/include/linux/rds.h:157:18: error: field ‘faddr’ has incomplete type
struct in6_addr faddr;
^~~~~
/usr/include/linux/rds.h:178:18: error: field ‘laddr’ has incomplete type
struct in6_addr laddr;
^~~~~
/usr/include/linux/rds.h:179:18: error: field ‘faddr’ has incomplete type
struct in6_addr faddr;
^~~~~
/usr/include/linux/rds.h:198:18: error: field ‘bound_addr’ has incomplete type
struct in6_addr bound_addr;
^~~~~~~~~~
/usr/include/linux/rds.h:199:18: error: field ‘connected_addr’ has incomplete type
struct in6_addr connected_addr;
^~~~~~~~~~~~~~
/usr/include/linux/rds.h:219:18: error: field ‘local_addr’ has incomplete type
struct in6_addr local_addr;
^~~~~~~~~~
/usr/include/linux/rds.h:221:18: error: field ‘peer_addr’ has incomplete type
struct in6_addr peer_addr;
^~~~~~~~~
/usr/include/linux/rds.h:245:18: error: field ‘src_addr’ has incomplete type
struct in6_addr src_addr;
^~~~~~~~
/usr/include/linux/rds.h:246:18: error: field ‘dst_addr’ has incomplete type
struct in6_addr dst_addr;
^~~~~~~~

Fixes: b7ff8b1036f0 ("rds: Extend RDS API for IPv6 support")
Signed-off-by: Vinson Lee <[email protected]>
---
include/uapi/linux/rds.h | 1 +
1 file changed, 1 insertion(+)

diff --git a/include/uapi/linux/rds.h b/include/uapi/linux/rds.h
index dc520e1a4123..8b73cb603c5f 100644
--- a/include/uapi/linux/rds.h
+++ b/include/uapi/linux/rds.h
@@ -37,6 +37,7 @@

#include <linux/types.h>
#include <linux/socket.h> /* For __kernel_sockaddr_storage. */
+#include <linux/in6.h> /* For struct in6_addr. */

#define RDS_IB_ABI_VERSION 0x301

--
2.17.1



2018-08-25 03:05:35

by Santosh Shilimkar

[permalink] [raw]
Subject: Re: [PATCH] uapi: Fix linux/rds.h userspace compilation errors.

On 8/24/18 6:26 PM, Vinson Lee wrote:
> Include linux/in6.h for struct in6_addr.
>
> /usr/include/linux/rds.h:156:18: error: field ‘laddr’ has incomplete type
> struct in6_addr laddr;
> ^~~~~
> /usr/include/linux/rds.h:157:18: error: field ‘faddr’ has incomplete type
> struct in6_addr faddr;
> ^~~~~
> /usr/include/linux/rds.h:178:18: error: field ‘laddr’ has incomplete type
> struct in6_addr laddr;
> ^~~~~
> /usr/include/linux/rds.h:179:18: error: field ‘faddr’ has incomplete type
> struct in6_addr faddr;
> ^~~~~
> /usr/include/linux/rds.h:198:18: error: field ‘bound_addr’ has incomplete type
> struct in6_addr bound_addr;
> ^~~~~~~~~~
> /usr/include/linux/rds.h:199:18: error: field ‘connected_addr’ has incomplete type
> struct in6_addr connected_addr;
> ^~~~~~~~~~~~~~
> /usr/include/linux/rds.h:219:18: error: field ‘local_addr’ has incomplete type
> struct in6_addr local_addr;
> ^~~~~~~~~~
> /usr/include/linux/rds.h:221:18: error: field ‘peer_addr’ has incomplete type
> struct in6_addr peer_addr;
> ^~~~~~~~~
> /usr/include/linux/rds.h:245:18: error: field ‘src_addr’ has incomplete type
> struct in6_addr src_addr;
> ^~~~~~~~
> /usr/include/linux/rds.h:246:18: error: field ‘dst_addr’ has incomplete type
> struct in6_addr dst_addr;
> ^~~~~~~~
>
> Fixes: b7ff8b1036f0 ("rds: Extend RDS API for IPv6 support")
> Signed-off-by: Vinson Lee <[email protected]>
> ---
Acked-by: Santosh Shilimkar <[email protected]>