Message ID | 1506574654-56699-9-git-send-email-xavier.huwei@huawei.com (mailing list archive) |
---|---|
State | Superseded |
Headers | show |
On Thu, Sep 28, 2017 at 12:57:33PM +0800, Wei Hu (Xavier) wrote: > From: Lijun Ou <oulijun@huawei.com> > > This patch mainly deletes some unused struct members for > hns_roce_ib_create_qp in order to match libhns, because > the num of struct members of hns_roce_ib_create_qp must > be the same with hns_roce_create_qp in libhns. > > Signed-off-by: Lijun Ou <oulijun@huawei.com> > Signed-off-by: Wei Hu (Xavier) <xavier.huwei@huawei.com> > Signed-off-by: Shaobo Xu <xushaobo2@huawei.com> > --- > include/uapi/rdma/hns-abi.h | 2 -- > 1 file changed, 2 deletions(-) > > diff --git a/include/uapi/rdma/hns-abi.h b/include/uapi/rdma/hns-abi.h > index 5d74019..79251b6 100644 > --- a/include/uapi/rdma/hns-abi.h > +++ b/include/uapi/rdma/hns-abi.h > @@ -41,10 +41,8 @@ struct hns_roce_ib_create_cq { > > struct hns_roce_ib_create_qp { > __u64 buf_addr; > - __u64 db_addr; > __u8 log_sq_bb_count; > __u8 log_sq_stride; > - __u8 sq_no_prefetch; > __u8 reserved[5]; > }; It is classical UAPI breakage which kernel tries to avoid. In RDMA, we do allow rename of fields from reserved to something, but don't allow binary layout change. NAK to this change. Thanks > > -- > 1.9.1 > > -- > To unsubscribe from this list: send the line "unsubscribe linux-rdma" in > the body of a message to majordomo@vger.kernel.org > More majordomo info at http://vger.kernel.org/majordomo-info.html
On 2017/9/28 17:02, Leon Romanovsky wrote: > On Thu, Sep 28, 2017 at 12:57:33PM +0800, Wei Hu (Xavier) wrote: >> From: Lijun Ou <oulijun@huawei.com> >> >> This patch mainly deletes some unused struct members for >> hns_roce_ib_create_qp in order to match libhns, because >> the num of struct members of hns_roce_ib_create_qp must >> be the same with hns_roce_create_qp in libhns. >> >> Signed-off-by: Lijun Ou <oulijun@huawei.com> >> Signed-off-by: Wei Hu (Xavier) <xavier.huwei@huawei.com> >> Signed-off-by: Shaobo Xu <xushaobo2@huawei.com> >> --- >> include/uapi/rdma/hns-abi.h | 2 -- >> 1 file changed, 2 deletions(-) >> >> diff --git a/include/uapi/rdma/hns-abi.h b/include/uapi/rdma/hns-abi.h >> index 5d74019..79251b6 100644 >> --- a/include/uapi/rdma/hns-abi.h >> +++ b/include/uapi/rdma/hns-abi.h >> @@ -41,10 +41,8 @@ struct hns_roce_ib_create_cq { >> >> struct hns_roce_ib_create_qp { >> __u64 buf_addr; >> - __u64 db_addr; >> __u8 log_sq_bb_count; >> __u8 log_sq_stride; >> - __u8 sq_no_prefetch; >> __u8 reserved[5]; >> }; > It is classical UAPI breakage which kernel tries to avoid. > > In RDMA, we do allow rename of fields from reserved to something, but > don't allow binary layout change. > > NAK to this change. > > Thanks Hi, Leon Now there is an inconsistency between hns_roce_ib_create_qp in kernel driver and hns_roce_create_qp in libhns as below: struct hns_roce_create_qp { struct ibv_create_qp ibv_cmd; __u64 buf_addr; __u8 log_sq_bb_count; __u8 log_sq_stride; __u8 reserved[5]; }; It is better to modify hns_roce_create_qp in libhns, right? Thanks Regards Wei Hu >> -- >> 1.9.1 >> >> -- >> To unsubscribe from this list: send the line "unsubscribe linux-rdma" in >> the body of a message to majordomo@vger.kernel.org >> More majordomo info at http://vger.kernel.org/majordomo-info.html -- To unsubscribe from this list: send the line "unsubscribe linux-rdma" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On Thu, Sep 28, 2017 at 07:56:40PM +0800, Wei Hu (Xavier) wrote: > > > On 2017/9/28 17:02, Leon Romanovsky wrote: > > On Thu, Sep 28, 2017 at 12:57:33PM +0800, Wei Hu (Xavier) wrote: > > > From: Lijun Ou <oulijun@huawei.com> > > > > > > This patch mainly deletes some unused struct members for > > > hns_roce_ib_create_qp in order to match libhns, because > > > the num of struct members of hns_roce_ib_create_qp must > > > be the same with hns_roce_create_qp in libhns. > > > > > > Signed-off-by: Lijun Ou <oulijun@huawei.com> > > > Signed-off-by: Wei Hu (Xavier) <xavier.huwei@huawei.com> > > > Signed-off-by: Shaobo Xu <xushaobo2@huawei.com> > > > --- > > > include/uapi/rdma/hns-abi.h | 2 -- > > > 1 file changed, 2 deletions(-) > > > > > > diff --git a/include/uapi/rdma/hns-abi.h b/include/uapi/rdma/hns-abi.h > > > index 5d74019..79251b6 100644 > > > --- a/include/uapi/rdma/hns-abi.h > > > +++ b/include/uapi/rdma/hns-abi.h > > > @@ -41,10 +41,8 @@ struct hns_roce_ib_create_cq { > > > > > > struct hns_roce_ib_create_qp { > > > __u64 buf_addr; > > > - __u64 db_addr; > > > __u8 log_sq_bb_count; > > > __u8 log_sq_stride; > > > - __u8 sq_no_prefetch; > > > __u8 reserved[5]; > > > }; > > It is classical UAPI breakage which kernel tries to avoid. > > > > In RDMA, we do allow rename of fields from reserved to something, but > > don't allow binary layout change. > > > > NAK to this change. > > > > Thanks > Hi, Leon > Now there is an inconsistency between hns_roce_ib_create_qp in kernel > driver and hns_roce_create_qp in libhns as below: > > struct hns_roce_create_qp { > struct ibv_create_qp ibv_cmd; > __u64 buf_addr; > __u8 log_sq_bb_count; > __u8 log_sq_stride; > __u8 reserved[5]; > }; > It is better to modify hns_roce_create_qp in libhns, right? Yes, it can work, because it is user space problem, where you used wrong structure. Thanks > Thanks > > Regards > Wei Hu > > > -- > > > 1.9.1 > > > > > > -- > > > To unsubscribe from this list: send the line "unsubscribe linux-rdma" in > > > the body of a message to majordomo@vger.kernel.org > > > More majordomo info at http://vger.kernel.org/majordomo-info.html > > > -- > To unsubscribe from this list: send the line "unsubscribe linux-rdma" in > the body of a message to majordomo@vger.kernel.org > More majordomo info at http://vger.kernel.org/majordomo-info.html
On 2017/9/28 21:04, Leon Romanovsky wrote: > On Thu, Sep 28, 2017 at 07:56:40PM +0800, Wei Hu (Xavier) wrote: >> >> On 2017/9/28 17:02, Leon Romanovsky wrote: >>> On Thu, Sep 28, 2017 at 12:57:33PM +0800, Wei Hu (Xavier) wrote: >>>> From: Lijun Ou <oulijun@huawei.com> >>>> >>>> This patch mainly deletes some unused struct members for >>>> hns_roce_ib_create_qp in order to match libhns, because >>>> the num of struct members of hns_roce_ib_create_qp must >>>> be the same with hns_roce_create_qp in libhns. >>>> >>>> Signed-off-by: Lijun Ou <oulijun@huawei.com> >>>> Signed-off-by: Wei Hu (Xavier) <xavier.huwei@huawei.com> >>>> Signed-off-by: Shaobo Xu <xushaobo2@huawei.com> >>>> --- >>>> include/uapi/rdma/hns-abi.h | 2 -- >>>> 1 file changed, 2 deletions(-) >>>> >>>> diff --git a/include/uapi/rdma/hns-abi.h b/include/uapi/rdma/hns-abi.h >>>> index 5d74019..79251b6 100644 >>>> --- a/include/uapi/rdma/hns-abi.h >>>> +++ b/include/uapi/rdma/hns-abi.h >>>> @@ -41,10 +41,8 @@ struct hns_roce_ib_create_cq { >>>> >>>> struct hns_roce_ib_create_qp { >>>> __u64 buf_addr; >>>> - __u64 db_addr; >>>> __u8 log_sq_bb_count; >>>> __u8 log_sq_stride; >>>> - __u8 sq_no_prefetch; >>>> __u8 reserved[5]; >>>> }; >>> It is classical UAPI breakage which kernel tries to avoid. >>> >>> In RDMA, we do allow rename of fields from reserved to something, but >>> don't allow binary layout change. >>> >>> NAK to this change. >>> >>> Thanks >> Hi, Leon >> Now there is an inconsistency between hns_roce_ib_create_qp in kernel >> driver and hns_roce_create_qp in libhns as below: >> >> struct hns_roce_create_qp { >> struct ibv_create_qp ibv_cmd; >> __u64 buf_addr; >> __u8 log_sq_bb_count; >> __u8 log_sq_stride; >> __u8 reserved[5]; >> }; >> It is better to modify hns_roce_create_qp in libhns, right? > Yes, it can work, because it is user space problem, where you used wrong > structure. > > Thanks Thanks, Leon I will pull it out off this series in patch v2. >> Thanks >> >> Regards >> Wei Hu >>>> -- >>>> 1.9.1 >>>> >>>> -- >>>> To unsubscribe from this list: send the line "unsubscribe linux-rdma" in >>>> the body of a message to majordomo@vger.kernel.org >>>> More majordomo info at http://vger.kernel.org/majordomo-info.html >> >> -- >> To unsubscribe from this list: send the line "unsubscribe linux-rdma" in >> the body of a message to majordomo@vger.kernel.org >> More majordomo info at http://vger.kernel.org/majordomo-info.html -- To unsubscribe from this list: send the line "unsubscribe linux-rdma" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
diff --git a/include/uapi/rdma/hns-abi.h b/include/uapi/rdma/hns-abi.h index 5d74019..79251b6 100644 --- a/include/uapi/rdma/hns-abi.h +++ b/include/uapi/rdma/hns-abi.h @@ -41,10 +41,8 @@ struct hns_roce_ib_create_cq { struct hns_roce_ib_create_qp { __u64 buf_addr; - __u64 db_addr; __u8 log_sq_bb_count; __u8 log_sq_stride; - __u8 sq_no_prefetch; __u8 reserved[5]; };