* [PATCH rdma-next] RDMA/uapi: Fix and re-organize the usage of rdma_driver_id
@ 2019-10-10 12:05 Leon Romanovsky
2019-10-10 19:20 ` Jason Gunthorpe
0 siblings, 1 reply; 3+ messages in thread
From: Leon Romanovsky @ 2019-10-10 12:05 UTC (permalink / raw)
To: Doug Ledford, Jason Gunthorpe
Cc: Yishai Hadas, RDMA mailing list, Potnuri Bharat Teja, Leon Romanovsky
From: Yishai Hadas <yishaih@mellanox.com>
Fix 'enum rdma_driver_id' to preserve other driver values before that
RDMA_DRIVER_CXGB3 was deleted. As this value is UAPI we can't affect
other values as of a deletion of one driver id.
In addition,
- Expose 'enum rdma_driver_id' to user applications by moving it to
ib_user_ioctl_verbs.h which is exposed in rdma-core to applications.
- Drop the dependency of ib_user_ioctl_verbs.h on ib_user_verbs.h which
is not really required.
Fixes: 30e0f6cf5acb ("RDMA/iw_cxgb3: Remove the iw_cxgb3 module from kernel")
Signed-off-by: Yishai Hadas <yishaih@mellanox.com>
Signed-off-by: Leon Romanovsky <leonro@mellanox.com>
---
include/uapi/rdma/ib_user_ioctl_verbs.h | 47 +++++++++++++++++++++++-
include/uapi/rdma/ib_user_verbs.h | 25 -------------
include/uapi/rdma/rdma_user_ioctl_cmds.h | 21 -----------
3 files changed, 46 insertions(+), 47 deletions(-)
diff --git a/include/uapi/rdma/ib_user_ioctl_verbs.h b/include/uapi/rdma/ib_user_ioctl_verbs.h
index 72c7fc75f960..3d703be40012 100644
--- a/include/uapi/rdma/ib_user_ioctl_verbs.h
+++ b/include/uapi/rdma/ib_user_ioctl_verbs.h
@@ -35,7 +35,6 @@
#define IB_USER_IOCTL_VERBS_H
#include <linux/types.h>
-#include <rdma/ib_user_verbs.h>
#ifndef RDMA_UAPI_PTR
#define RDMA_UAPI_PTR(_type, _name) __aligned_u64 _name
@@ -167,10 +166,56 @@ enum ib_uverbs_advise_mr_flag {
IB_UVERBS_ADVISE_MR_FLAG_FLUSH = 1 << 0,
};
+struct ib_uverbs_query_port_resp {
+ __u32 port_cap_flags; /* see ib_uverbs_query_port_cap_flags */
+ __u32 max_msg_sz;
+ __u32 bad_pkey_cntr;
+ __u32 qkey_viol_cntr;
+ __u32 gid_tbl_len;
+ __u16 pkey_tbl_len;
+ __u16 lid;
+ __u16 sm_lid;
+ __u8 state;
+ __u8 max_mtu;
+ __u8 active_mtu;
+ __u8 lmc;
+ __u8 max_vl_num;
+ __u8 sm_sl;
+ __u8 subnet_timeout;
+ __u8 init_type_reply;
+ __u8 active_width;
+ __u8 active_speed;
+ __u8 phys_state;
+ __u8 link_layer;
+ __u8 flags; /* see ib_uverbs_query_port_flags */
+ __u8 reserved;
+};
+
struct ib_uverbs_query_port_resp_ex {
struct ib_uverbs_query_port_resp legacy_resp;
__u16 port_cap_flags2;
__u8 reserved[6];
};
+enum rdma_driver_id {
+ RDMA_DRIVER_UNKNOWN,
+ RDMA_DRIVER_MLX5,
+ RDMA_DRIVER_MLX4,
+ RDMA_DRIVER_CXGB4 = 4,
+ RDMA_DRIVER_MTHCA,
+ RDMA_DRIVER_BNXT_RE,
+ RDMA_DRIVER_OCRDMA,
+ RDMA_DRIVER_NES,
+ RDMA_DRIVER_I40IW,
+ RDMA_DRIVER_VMW_PVRDMA,
+ RDMA_DRIVER_QEDR,
+ RDMA_DRIVER_HNS,
+ RDMA_DRIVER_USNIC,
+ RDMA_DRIVER_RXE,
+ RDMA_DRIVER_HFI1,
+ RDMA_DRIVER_QIB,
+ RDMA_DRIVER_EFA,
+ RDMA_DRIVER_SIW,
+};
+
#endif
diff --git a/include/uapi/rdma/ib_user_verbs.h b/include/uapi/rdma/ib_user_verbs.h
index 0474c7400268..37450f133a07 100644
--- a/include/uapi/rdma/ib_user_verbs.h
+++ b/include/uapi/rdma/ib_user_verbs.h
@@ -281,31 +281,6 @@ struct ib_uverbs_query_port {
__aligned_u64 driver_data[0];
};
-struct ib_uverbs_query_port_resp {
- __u32 port_cap_flags; /* see ib_uverbs_query_port_cap_flags */
- __u32 max_msg_sz;
- __u32 bad_pkey_cntr;
- __u32 qkey_viol_cntr;
- __u32 gid_tbl_len;
- __u16 pkey_tbl_len;
- __u16 lid;
- __u16 sm_lid;
- __u8 state;
- __u8 max_mtu;
- __u8 active_mtu;
- __u8 lmc;
- __u8 max_vl_num;
- __u8 sm_sl;
- __u8 subnet_timeout;
- __u8 init_type_reply;
- __u8 active_width;
- __u8 active_speed;
- __u8 phys_state;
- __u8 link_layer;
- __u8 flags; /* see ib_uverbs_query_port_flags */
- __u8 reserved;
-};
-
struct ib_uverbs_alloc_pd {
__aligned_u64 response;
__aligned_u64 driver_data[0];
diff --git a/include/uapi/rdma/rdma_user_ioctl_cmds.h b/include/uapi/rdma/rdma_user_ioctl_cmds.h
index b2680051047a..7b1ec806f8f9 100644
--- a/include/uapi/rdma/rdma_user_ioctl_cmds.h
+++ b/include/uapi/rdma/rdma_user_ioctl_cmds.h
@@ -84,25 +84,4 @@ struct ib_uverbs_ioctl_hdr {
struct ib_uverbs_attr attrs[0];
};
-enum rdma_driver_id {
- RDMA_DRIVER_UNKNOWN,
- RDMA_DRIVER_MLX5,
- RDMA_DRIVER_MLX4,
- RDMA_DRIVER_CXGB4,
- RDMA_DRIVER_MTHCA,
- RDMA_DRIVER_BNXT_RE,
- RDMA_DRIVER_OCRDMA,
- RDMA_DRIVER_NES,
- RDMA_DRIVER_I40IW,
- RDMA_DRIVER_VMW_PVRDMA,
- RDMA_DRIVER_QEDR,
- RDMA_DRIVER_HNS,
- RDMA_DRIVER_USNIC,
- RDMA_DRIVER_RXE,
- RDMA_DRIVER_HFI1,
- RDMA_DRIVER_QIB,
- RDMA_DRIVER_EFA,
- RDMA_DRIVER_SIW,
-};
-
#endif
--
2.20.1
^ permalink raw reply related [flat|nested] 3+ messages in thread
* Re: [PATCH rdma-next] RDMA/uapi: Fix and re-organize the usage of rdma_driver_id
2019-10-10 12:05 [PATCH rdma-next] RDMA/uapi: Fix and re-organize the usage of rdma_driver_id Leon Romanovsky
@ 2019-10-10 19:20 ` Jason Gunthorpe
2019-10-15 7:49 ` Leon Romanovsky
0 siblings, 1 reply; 3+ messages in thread
From: Jason Gunthorpe @ 2019-10-10 19:20 UTC (permalink / raw)
To: Leon Romanovsky
Cc: Doug Ledford, Yishai Hadas, RDMA mailing list,
Potnuri Bharat Teja, Leon Romanovsky
On Thu, Oct 10, 2019 at 03:05:41PM +0300, Leon Romanovsky wrote:
> From: Yishai Hadas <yishaih@mellanox.com>
>
> Fix 'enum rdma_driver_id' to preserve other driver values before that
> RDMA_DRIVER_CXGB3 was deleted. As this value is UAPI we can't affect
> other values as of a deletion of one driver id.
>
> In addition,
> - Expose 'enum rdma_driver_id' to user applications by moving it to
> ib_user_ioctl_verbs.h which is exposed in rdma-core to applications.
>
> - Drop the dependency of ib_user_ioctl_verbs.h on ib_user_verbs.h which
> is not really required.
One change per patch when it is a fixes..
> Fixes: 30e0f6cf5acb ("RDMA/iw_cxgb3: Remove the iw_cxgb3 module from kernel")
> Signed-off-by: Yishai Hadas <yishaih@mellanox.com>
> Signed-off-by: Leon Romanovsky <leonro@mellanox.com>
> include/uapi/rdma/ib_user_ioctl_verbs.h | 47 +++++++++++++++++++++++-
> include/uapi/rdma/ib_user_verbs.h | 25 -------------
> include/uapi/rdma/rdma_user_ioctl_cmds.h | 21 -----------
> 3 files changed, 46 insertions(+), 47 deletions(-)
>
> diff --git a/include/uapi/rdma/ib_user_ioctl_verbs.h b/include/uapi/rdma/ib_user_ioctl_verbs.h
> index 72c7fc75f960..3d703be40012 100644
> +++ b/include/uapi/rdma/ib_user_ioctl_verbs.h
> @@ -35,7 +35,6 @@
> #define IB_USER_IOCTL_VERBS_H
>
> #include <linux/types.h>
> -#include <rdma/ib_user_verbs.h>
>
> #ifndef RDMA_UAPI_PTR
> #define RDMA_UAPI_PTR(_type, _name) __aligned_u64 _name
> @@ -167,10 +166,56 @@ enum ib_uverbs_advise_mr_flag {
> IB_UVERBS_ADVISE_MR_FLAG_FLUSH = 1 << 0,
> };
>
> +struct ib_uverbs_query_port_resp {
> + __u32 port_cap_flags; /* see ib_uverbs_query_port_cap_flags */
> + __u32 max_msg_sz;
> + __u32 bad_pkey_cntr;
> + __u32 qkey_viol_cntr;
> + __u32 gid_tbl_len;
> + __u16 pkey_tbl_len;
> + __u16 lid;
> + __u16 sm_lid;
> + __u8 state;
> + __u8 max_mtu;
> + __u8 active_mtu;
> + __u8 lmc;
> + __u8 max_vl_num;
> + __u8 sm_sl;
> + __u8 subnet_timeout;
> + __u8 init_type_reply;
> + __u8 active_width;
> + __u8 active_speed;
> + __u8 phys_state;
> + __u8 link_layer;
> + __u8 flags; /* see ib_uverbs_query_port_flags */
> + __u8 reserved;
> +};
Probably better to move ib_uverbs_query_port_resp_ex, since it is
really more of write() style interface
Jason
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [PATCH rdma-next] RDMA/uapi: Fix and re-organize the usage of rdma_driver_id
2019-10-10 19:20 ` Jason Gunthorpe
@ 2019-10-15 7:49 ` Leon Romanovsky
0 siblings, 0 replies; 3+ messages in thread
From: Leon Romanovsky @ 2019-10-15 7:49 UTC (permalink / raw)
To: Jason Gunthorpe
Cc: Doug Ledford, Yishai Hadas, RDMA mailing list, Potnuri Bharat Teja
On Thu, Oct 10, 2019 at 07:20:57PM +0000, Jason Gunthorpe wrote:
> On Thu, Oct 10, 2019 at 03:05:41PM +0300, Leon Romanovsky wrote:
> > From: Yishai Hadas <yishaih@mellanox.com>
> >
> > Fix 'enum rdma_driver_id' to preserve other driver values before that
> > RDMA_DRIVER_CXGB3 was deleted. As this value is UAPI we can't affect
> > other values as of a deletion of one driver id.
> >
> > In addition,
> > - Expose 'enum rdma_driver_id' to user applications by moving it to
> > ib_user_ioctl_verbs.h which is exposed in rdma-core to applications.
> >
> > - Drop the dependency of ib_user_ioctl_verbs.h on ib_user_verbs.h which
> > is not really required.
>
> One change per patch when it is a fixes..
>
> > Fixes: 30e0f6cf5acb ("RDMA/iw_cxgb3: Remove the iw_cxgb3 module from kernel")
> > Signed-off-by: Yishai Hadas <yishaih@mellanox.com>
> > Signed-off-by: Leon Romanovsky <leonro@mellanox.com>
> > include/uapi/rdma/ib_user_ioctl_verbs.h | 47 +++++++++++++++++++++++-
> > include/uapi/rdma/ib_user_verbs.h | 25 -------------
> > include/uapi/rdma/rdma_user_ioctl_cmds.h | 21 -----------
> > 3 files changed, 46 insertions(+), 47 deletions(-)
> >
> > diff --git a/include/uapi/rdma/ib_user_ioctl_verbs.h b/include/uapi/rdma/ib_user_ioctl_verbs.h
> > index 72c7fc75f960..3d703be40012 100644
> > +++ b/include/uapi/rdma/ib_user_ioctl_verbs.h
> > @@ -35,7 +35,6 @@
> > #define IB_USER_IOCTL_VERBS_H
> >
> > #include <linux/types.h>
> > -#include <rdma/ib_user_verbs.h>
> >
> > #ifndef RDMA_UAPI_PTR
> > #define RDMA_UAPI_PTR(_type, _name) __aligned_u64 _name
> > @@ -167,10 +166,56 @@ enum ib_uverbs_advise_mr_flag {
> > IB_UVERBS_ADVISE_MR_FLAG_FLUSH = 1 << 0,
> > };
> >
> > +struct ib_uverbs_query_port_resp {
> > + __u32 port_cap_flags; /* see ib_uverbs_query_port_cap_flags */
> > + __u32 max_msg_sz;
> > + __u32 bad_pkey_cntr;
> > + __u32 qkey_viol_cntr;
> > + __u32 gid_tbl_len;
> > + __u16 pkey_tbl_len;
> > + __u16 lid;
> > + __u16 sm_lid;
> > + __u8 state;
> > + __u8 max_mtu;
> > + __u8 active_mtu;
> > + __u8 lmc;
> > + __u8 max_vl_num;
> > + __u8 sm_sl;
> > + __u8 subnet_timeout;
> > + __u8 init_type_reply;
> > + __u8 active_width;
> > + __u8 active_speed;
> > + __u8 phys_state;
> > + __u8 link_layer;
> > + __u8 flags; /* see ib_uverbs_query_port_flags */
> > + __u8 reserved;
> > +};
>
> Probably better to move ib_uverbs_query_port_resp_ex, since it is
> really more of write() style interface
It is already in ib_user_ioctl_verbs.h.
Thanks
>
> Jason
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2019-10-15 7:49 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-10-10 12:05 [PATCH rdma-next] RDMA/uapi: Fix and re-organize the usage of rdma_driver_id Leon Romanovsky
2019-10-10 19:20 ` Jason Gunthorpe
2019-10-15 7:49 ` Leon Romanovsky
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).