uapi: fix linux/rds.h userspace compilation errors
Subsystems (2)
PATCH 1/2 uapi: fix linux/rds.h userspace compilation errors
Consistently use types from linux/types.h to fix the following linux/rds.h userspace compilation errors:
/usr/include/linux/rds.h:106:2: error: unknown type name 'uint8_t'
uint8_t name[32];/usr/include/linux/rds.h:107:2: error: unknown type name 'uint64_t'
uint64_t value;/usr/include/linux/rds.h:117:2: error: unknown type name 'uint64_t'
uint64_t next_tx_seq;/usr/include/linux/rds.h:118:2: error: unknown type name 'uint64_t'
uint64_t next_rx_seq;/usr/include/linux/rds.h:121:2: error: unknown type name 'uint8_t'
uint8_t transport[TRANSNAMSIZ]; /* null term ascii *//usr/include/linux/rds.h:122:2: error: unknown type name 'uint8_t'
uint8_t flags;/usr/include/linux/rds.h:129:2: error: unknown type name 'uint64_t'
uint64_t seq;/usr/include/linux/rds.h:130:2: error: unknown type name 'uint32_t'
uint32_t len;/usr/include/linux/rds.h:135:2: error: unknown type name 'uint8_t'
uint8_t flags;/usr/include/linux/rds.h:139:2: error: unknown type name 'uint32_t'
uint32_t sndbuf;/usr/include/linux/rds.h:144:2: error: unknown type name 'uint32_t'
uint32_t rcvbuf;/usr/include/linux/rds.h:145:2: error: unknown type name 'uint64_t'
uint64_t inum;/usr/include/linux/rds.h:153:2: error: unknown type name 'uint64_t'
uint64_t hdr_rem;/usr/include/linux/rds.h:154:2: error: unknown type name 'uint64_t'
uint64_t data_rem;/usr/include/linux/rds.h:155:2: error: unknown type name 'uint32_t'
uint32_t last_sent_nxt;/usr/include/linux/rds.h:156:2: error: unknown type name 'uint32_t'
uint32_t last_expected_una;/usr/include/linux/rds.h:157:2: error: unknown type name 'uint32_t'
uint32_t last_seen_una;/usr/include/linux/rds.h:164:2: error: unknown type name 'uint8_t'
uint8_t src_gid[RDS_IB_GID_LEN];/usr/include/linux/rds.h:165:2: error: unknown type name 'uint8_t'
uint8_t dst_gid[RDS_IB_GID_LEN];/usr/include/linux/rds.h:167:2: error: unknown type name 'uint32_t'
uint32_t max_send_wr;/usr/include/linux/rds.h:168:2: error: unknown type name 'uint32_t'
uint32_t max_recv_wr;/usr/include/linux/rds.h:169:2: error: unknown type name 'uint32_t'
uint32_t max_send_sge;/usr/include/linux/rds.h:170:2: error: unknown type name 'uint32_t'
uint32_t rdma_mr_max;/usr/include/linux/rds.h:171:2: error: unknown type name 'uint32_t'
uint32_t rdma_mr_size;/usr/include/linux/rds.h:212:9: error: unknown type name 'uint64_t'
typedef uint64_t rds_rdma_cookie_t;/usr/include/linux/rds.h:215:2: error: unknown type name 'uint64_t'
uint64_t addr;/usr/include/linux/rds.h:216:2: error: unknown type name 'uint64_t'
uint64_t bytes;/usr/include/linux/rds.h:221:2: error: unknown type name 'uint64_t'
uint64_t cookie_addr;/usr/include/linux/rds.h:222:2: error: unknown type name 'uint64_t'
uint64_t flags;/usr/include/linux/rds.h:228:2: error: unknown type name 'uint64_t'
uint64_t cookie_addr;/usr/include/linux/rds.h:229:2: error: unknown type name 'uint64_t'
uint64_t flags;/usr/include/linux/rds.h:234:2: error: unknown type name 'uint64_t'
uint64_t flags;/usr/include/linux/rds.h:240:2: error: unknown type name 'uint64_t'
uint64_t local_vec_addr;/usr/include/linux/rds.h:241:2: error: unknown type name 'uint64_t'
uint64_t nr_local;/usr/include/linux/rds.h:242:2: error: unknown type name 'uint64_t'
uint64_t flags;/usr/include/linux/rds.h:243:2: error: unknown type name 'uint64_t'
uint64_t user_token;/usr/include/linux/rds.h:248:2: error: unknown type name 'uint64_t'
uint64_t local_addr;/usr/include/linux/rds.h:249:2: error: unknown type name 'uint64_t'
uint64_t remote_addr;/usr/include/linux/rds.h:252:4: error: unknown type name 'uint64_t'
uint64_t compare;
/usr/include/linux/rds.h:253:4: error: unknown type name 'uint64_t'
uint64_t swap;
/usr/include/linux/rds.h:256:4: error: unknown type name 'uint64_t'
uint64_t add;
/usr/include/linux/rds.h:259:4: error: unknown type name 'uint64_t'
uint64_t compare;
/usr/include/linux/rds.h:260:4: error: unknown type name 'uint64_t'
uint64_t swap;
/usr/include/linux/rds.h:261:4: error: unknown type name 'uint64_t'
uint64_t compare_mask;
/usr/include/linux/rds.h:262:4: error: unknown type name 'uint64_t'
uint64_t swap_mask;
/usr/include/linux/rds.h:265:4: error: unknown type name 'uint64_t'
uint64_t add;
/usr/include/linux/rds.h:266:4: error: unknown type name 'uint64_t'
uint64_t nocarry_mask;/usr/include/linux/rds.h:269:2: error: unknown type name 'uint64_t'
uint64_t flags;/usr/include/linux/rds.h:270:2: error: unknown type name 'uint64_t'
uint64_t user_token;/usr/include/linux/rds.h:274:2: error: unknown type name 'uint64_t'
uint64_t user_token;/usr/include/linux/rds.h:275:2: error: unknown type name 'int32_t'
int32_t status;
--- include/uapi/linux/rds.h | 102 +++++++++++++++++++++++------------------------ 1 file changed, 51 insertions(+), 51 deletions(-)
include/uapi/linux/rds.h +51 -51
@@ -103,8 +103,8 @@#define RDS_INFO_LAST 10010struct rds_info_counter { -uint8_t name[32 ]; -uint64_t value; +__u8 name[32 ]; +__u64 value; } __attribute__((packed));#define RDS_INFO_CONNECTION_FLAG_SENDING 0x01
@@ -114,35 +114,35 @@ struct rds_info_counter {#define TRANSNAMSIZ 16struct rds_info_connection { -uint64_t next_tx_seq; -uint64_t next_rx_seq; +__u64 next_tx_seq; +__u64 next_rx_seq;__be32 laddr;__be32 faddr; -uint8_t transport[TRANSNAMSIZ ];/* null term ascii */ -uint8_t flags; +__u8 transport[TRANSNAMSIZ ];/* null term ascii */ +__u8 flags; } __attribute__((packed));#define RDS_INFO_MESSAGE_FLAG_ACK 0x01#define RDS_INFO_MESSAGE_FLAG_FAST_ACK 0x02struct rds_info_message { -uint64_t seq; -uint32_t len; +__u64 seq; +__u32 len;__be32 laddr;__be32 faddr;__be16 lport;__be16 fport; -uint8_t flags; +__u8 flags; } __attribute__((packed));struct rds_info_socket { -uint32_t sndbuf; +__u32 sndbuf;__be32 bound_addr;__be32 connected_addr;__be16 bound_port;__be16 connected_port; -uint32_t rcvbuf; -uint64_t inum; +__u32 rcvbuf; +__u64 inum; } __attribute__((packed));struct rds_info_tcp_socket {
@@ -150,25 +150,25 @@ struct rds_info_tcp_socket {__be16 local_port;__be32 peer_addr;__be16 peer_port; -uint64_t hdr_rem; -uint64_t data_rem; -uint32_t last_sent_nxt; -uint32_t last_expected_una; -uint32_t last_seen_una; +__u64 hdr_rem; +__u64 data_rem; +__u32 last_sent_nxt; +__u32 last_expected_una; +__u32 last_seen_una; } __attribute__((packed));#define RDS_IB_GID_LEN 16struct rds_info_rdma_connection {__be32 src_addr;__be32 dst_addr; -uint8_t src_gid[RDS_IB_GID_LEN ]; -uint8_t dst_gid[RDS_IB_GID_LEN ]; +__u8 src_gid[RDS_IB_GID_LEN ]; +__u8 dst_gid[RDS_IB_GID_LEN ]; -uint32_t max_send_wr; -uint32_t max_recv_wr; -uint32_t max_send_sge; -uint32_t rdma_mr_max; -uint32_t rdma_mr_size; +__u32 max_send_wr; +__u32 max_recv_wr; +__u32 max_send_sge; +__u32 rdma_mr_max; +__u32 rdma_mr_size; };/*
@@ -209,70 +209,70 @@ struct rds_info_rdma_connection {* (so that the application does not have to worry about * alignment). */ -typedef uint64_t rds_rdma_cookie_t ; +typedef __u64 rds_rdma_cookie_t ;struct rds_iovec { -uint64_t addr; -uint64_t bytes; +__u64 addr; +__u64 bytes; };struct rds_get_mr_args {struct rds_iovec vec; -uint64_t cookie_addr; -uint64_t flags; +__u64 cookie_addr; +__u64 flags; };struct rds_get_mr_for_dest_args {struct sockaddr_storage dest_addr;struct rds_iovec vec; -uint64_t cookie_addr; -uint64_t flags; +__u64 cookie_addr; +__u64 flags; };struct rds_free_mr_args {rds_rdma_cookie_t cookie; -uint64_t flags; +__u64 flags; };struct rds_rdma_args {rds_rdma_cookie_t cookie;struct rds_iovec remote_vec; -uint64_t local_vec_addr; -uint64_t nr_local; -uint64_t flags; -uint64_t user_token; +__u64 local_vec_addr; +__u64 nr_local; +__u64 flags; +__u64 user_token; };struct rds_atomic_args {rds_rdma_cookie_t cookie; -uint64_t local_addr; -uint64_t remote_addr; +__u64 local_addr; +__u64 remote_addr;union {struct { -uint64_t compare; -uint64_t swap; +__u64 compare; +__u64 swap; } cswp;struct { -uint64_t add; +__u64 add; } fadd;struct { -uint64_t compare; -uint64_t swap; -uint64_t compare_mask; -uint64_t swap_mask; +__u64 compare; +__u64 swap; +__u64 compare_mask; +__u64 swap_mask; } m_cswp;struct { -uint64_t add; -uint64_t nocarry_mask; +__u64 add; +__u64 nocarry_mask; } m_fadd; }; -uint64_t flags; -uint64_t user_token; +__u64 flags; +__u64 user_token; };struct rds_rdma_notify { -uint64_t user_token; -int32_t status; +__u64 user_token; +__s32 status; };#define RDS_RDMA_SUCCESS 0
Signature · 1 line
ldv
PATCH v2 1/2 uapi: fix linux/rds.h userspace compilation errors
Consistently use types from linux/types.h to fix the following linux/rds.h userspace compilation errors:
/usr/include/linux/rds.h:106:2: error: unknown type name 'uint8_t'
uint8_t name[32];/usr/include/linux/rds.h:107:2: error: unknown type name 'uint64_t'
uint64_t value;/usr/include/linux/rds.h:117:2: error: unknown type name 'uint64_t'
uint64_t next_tx_seq;/usr/include/linux/rds.h:118:2: error: unknown type name 'uint64_t'
uint64_t next_rx_seq;/usr/include/linux/rds.h:121:2: error: unknown type name 'uint8_t'
uint8_t transport[TRANSNAMSIZ]; /* null term ascii *//usr/include/linux/rds.h:122:2: error: unknown type name 'uint8_t'
uint8_t flags;/usr/include/linux/rds.h:129:2: error: unknown type name 'uint64_t'
uint64_t seq;/usr/include/linux/rds.h:130:2: error: unknown type name 'uint32_t'
uint32_t len;/usr/include/linux/rds.h:135:2: error: unknown type name 'uint8_t'
uint8_t flags;/usr/include/linux/rds.h:139:2: error: unknown type name 'uint32_t'
uint32_t sndbuf;/usr/include/linux/rds.h:144:2: error: unknown type name 'uint32_t'
uint32_t rcvbuf;/usr/include/linux/rds.h:145:2: error: unknown type name 'uint64_t'
uint64_t inum;/usr/include/linux/rds.h:153:2: error: unknown type name 'uint64_t'
uint64_t hdr_rem;/usr/include/linux/rds.h:154:2: error: unknown type name 'uint64_t'
uint64_t data_rem;/usr/include/linux/rds.h:155:2: error: unknown type name 'uint32_t'
uint32_t last_sent_nxt;/usr/include/linux/rds.h:156:2: error: unknown type name 'uint32_t'
uint32_t last_expected_una;/usr/include/linux/rds.h:157:2: error: unknown type name 'uint32_t'
uint32_t last_seen_una;/usr/include/linux/rds.h:164:2: error: unknown type name 'uint8_t'
uint8_t src_gid[RDS_IB_GID_LEN];/usr/include/linux/rds.h:165:2: error: unknown type name 'uint8_t'
uint8_t dst_gid[RDS_IB_GID_LEN];/usr/include/linux/rds.h:167:2: error: unknown type name 'uint32_t'
uint32_t max_send_wr;/usr/include/linux/rds.h:168:2: error: unknown type name 'uint32_t'
uint32_t max_recv_wr;/usr/include/linux/rds.h:169:2: error: unknown type name 'uint32_t'
uint32_t max_send_sge;/usr/include/linux/rds.h:170:2: error: unknown type name 'uint32_t'
uint32_t rdma_mr_max;/usr/include/linux/rds.h:171:2: error: unknown type name 'uint32_t'
uint32_t rdma_mr_size;/usr/include/linux/rds.h:212:9: error: unknown type name 'uint64_t'
typedef uint64_t rds_rdma_cookie_t;/usr/include/linux/rds.h:215:2: error: unknown type name 'uint64_t'
uint64_t addr;/usr/include/linux/rds.h:216:2: error: unknown type name 'uint64_t'
uint64_t bytes;/usr/include/linux/rds.h:221:2: error: unknown type name 'uint64_t'
uint64_t cookie_addr;/usr/include/linux/rds.h:222:2: error: unknown type name 'uint64_t'
uint64_t flags;/usr/include/linux/rds.h:228:2: error: unknown type name 'uint64_t'
uint64_t cookie_addr;/usr/include/linux/rds.h:229:2: error: unknown type name 'uint64_t'
uint64_t flags;/usr/include/linux/rds.h:234:2: error: unknown type name 'uint64_t'
uint64_t flags;/usr/include/linux/rds.h:240:2: error: unknown type name 'uint64_t'
uint64_t local_vec_addr;/usr/include/linux/rds.h:241:2: error: unknown type name 'uint64_t'
uint64_t nr_local;/usr/include/linux/rds.h:242:2: error: unknown type name 'uint64_t'
uint64_t flags;/usr/include/linux/rds.h:243:2: error: unknown type name 'uint64_t'
uint64_t user_token;/usr/include/linux/rds.h:248:2: error: unknown type name 'uint64_t'
uint64_t local_addr;/usr/include/linux/rds.h:249:2: error: unknown type name 'uint64_t'
uint64_t remote_addr;/usr/include/linux/rds.h:252:4: error: unknown type name 'uint64_t'
uint64_t compare;
/usr/include/linux/rds.h:253:4: error: unknown type name 'uint64_t'
uint64_t swap;
/usr/include/linux/rds.h:256:4: error: unknown type name 'uint64_t'
uint64_t add;
/usr/include/linux/rds.h:259:4: error: unknown type name 'uint64_t'
uint64_t compare;
/usr/include/linux/rds.h:260:4: error: unknown type name 'uint64_t'
uint64_t swap;
/usr/include/linux/rds.h:261:4: error: unknown type name 'uint64_t'
uint64_t compare_mask;
/usr/include/linux/rds.h:262:4: error: unknown type name 'uint64_t'
uint64_t swap_mask;
/usr/include/linux/rds.h:265:4: error: unknown type name 'uint64_t'
uint64_t add;
/usr/include/linux/rds.h:266:4: error: unknown type name 'uint64_t'
uint64_t nocarry_mask;/usr/include/linux/rds.h:269:2: error: unknown type name 'uint64_t'
uint64_t flags;/usr/include/linux/rds.h:270:2: error: unknown type name 'uint64_t'
uint64_t user_token;/usr/include/linux/rds.h:274:2: error: unknown type name 'uint64_t'
uint64_t user_token;/usr/include/linux/rds.h:275:2: error: unknown type name 'int32_t'
int32_t status;
---
v2: Cc'ed netdev
include/uapi/linux/rds.h | 102 +++++++++++++++++++++++------------------------ 1 file changed, 51 insertions(+), 51 deletions(-)
include/uapi/linux/rds.h +51 -51
@@ -103,8 +103,8 @@#define RDS_INFO_LAST 10010struct rds_info_counter { -uint8_t name[32 ]; -uint64_t value; +__u8 name[32 ]; +__u64 value; } __attribute__((packed));#define RDS_INFO_CONNECTION_FLAG_SENDING 0x01
@@ -114,35 +114,35 @@ struct rds_info_counter {#define TRANSNAMSIZ 16struct rds_info_connection { -uint64_t next_tx_seq; -uint64_t next_rx_seq; +__u64 next_tx_seq; +__u64 next_rx_seq;__be32 laddr;__be32 faddr; -uint8_t transport[TRANSNAMSIZ ];/* null term ascii */ -uint8_t flags; +__u8 transport[TRANSNAMSIZ ];/* null term ascii */ +__u8 flags; } __attribute__((packed));#define RDS_INFO_MESSAGE_FLAG_ACK 0x01#define RDS_INFO_MESSAGE_FLAG_FAST_ACK 0x02struct rds_info_message { -uint64_t seq; -uint32_t len; +__u64 seq; +__u32 len;__be32 laddr;__be32 faddr;__be16 lport;__be16 fport; -uint8_t flags; +__u8 flags; } __attribute__((packed));struct rds_info_socket { -uint32_t sndbuf; +__u32 sndbuf;__be32 bound_addr;__be32 connected_addr;__be16 bound_port;__be16 connected_port; -uint32_t rcvbuf; -uint64_t inum; +__u32 rcvbuf; +__u64 inum; } __attribute__((packed));struct rds_info_tcp_socket {
@@ -150,25 +150,25 @@ struct rds_info_tcp_socket {__be16 local_port;__be32 peer_addr;__be16 peer_port; -uint64_t hdr_rem; -uint64_t data_rem; -uint32_t last_sent_nxt; -uint32_t last_expected_una; -uint32_t last_seen_una; +__u64 hdr_rem; +__u64 data_rem; +__u32 last_sent_nxt; +__u32 last_expected_una; +__u32 last_seen_una; } __attribute__((packed));#define RDS_IB_GID_LEN 16struct rds_info_rdma_connection {__be32 src_addr;__be32 dst_addr; -uint8_t src_gid[RDS_IB_GID_LEN ]; -uint8_t dst_gid[RDS_IB_GID_LEN ]; +__u8 src_gid[RDS_IB_GID_LEN ]; +__u8 dst_gid[RDS_IB_GID_LEN ]; -uint32_t max_send_wr; -uint32_t max_recv_wr; -uint32_t max_send_sge; -uint32_t rdma_mr_max; -uint32_t rdma_mr_size; +__u32 max_send_wr; +__u32 max_recv_wr; +__u32 max_send_sge; +__u32 rdma_mr_max; +__u32 rdma_mr_size; };/*
@@ -209,70 +209,70 @@ struct rds_info_rdma_connection {* (so that the application does not have to worry about * alignment). */ -typedef uint64_t rds_rdma_cookie_t ; +typedef __u64 rds_rdma_cookie_t ;struct rds_iovec { -uint64_t addr; -uint64_t bytes; +__u64 addr; +__u64 bytes; };struct rds_get_mr_args {struct rds_iovec vec; -uint64_t cookie_addr; -uint64_t flags; +__u64 cookie_addr; +__u64 flags; };struct rds_get_mr_for_dest_args {struct sockaddr_storage dest_addr;struct rds_iovec vec; -uint64_t cookie_addr; -uint64_t flags; +__u64 cookie_addr; +__u64 flags; };struct rds_free_mr_args {rds_rdma_cookie_t cookie; -uint64_t flags; +__u64 flags; };struct rds_rdma_args {rds_rdma_cookie_t cookie;struct rds_iovec remote_vec; -uint64_t local_vec_addr; -uint64_t nr_local; -uint64_t flags; -uint64_t user_token; +__u64 local_vec_addr; +__u64 nr_local; +__u64 flags; +__u64 user_token; };struct rds_atomic_args {rds_rdma_cookie_t cookie; -uint64_t local_addr; -uint64_t remote_addr; +__u64 local_addr; +__u64 remote_addr;union {struct { -uint64_t compare; -uint64_t swap; +__u64 compare; +__u64 swap; } cswp;struct { -uint64_t add; +__u64 add; } fadd;struct { -uint64_t compare; -uint64_t swap; -uint64_t compare_mask; -uint64_t swap_mask; +__u64 compare; +__u64 swap; +__u64 compare_mask; +__u64 swap_mask; } m_cswp;struct { -uint64_t add; -uint64_t nocarry_mask; +__u64 add; +__u64 nocarry_mask; } m_fadd; }; -uint64_t flags; -uint64_t user_token; +__u64 flags; +__u64 user_token; };struct rds_rdma_notify { -uint64_t user_token; -int32_t status; +__u64 user_token; +__s32 status; };#define RDS_RDMA_SUCCESS 0
Signature · 1 line
ldv
From: "Dmitry V. Levin" <[email protected]>
Date: Thu, 16 Feb 2017 18:05:13 +0300
Quoted 2 lines
Consistently use types from
linux/types.hto fix the followinglinux/rds.huserspace compilation errors:
...
Quoted 1 line
Signed-off-by Dmitry V. Levin <[email protected]>
Applied.