Re: 【Rdma-core and kernel compatibility issues】

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Sat, Jan 19, 2019 at 04:00:40PM +0800, oulijun wrote:
> Hi, Jason & leon
>    I noticed that the 2 new changes in IB/core in 5.0 caused the rdma-core-v17 to be incompatible.
>    The patch-set as follows:
> 	3c2c209 RDMA/uverbs: Use uverbs_request() for request copying
> 	29a29d1 RDMA/uverbs: Use uverbs_request() and core for write_ex handlers

I don't understand your comments, the above should not change the
driver udata flow at all.

What are you seeing exactly?

>    The 2 changes for resolve the following question?  for exmaple, the kernel define a struct:
>    struct hns_roce_ib_create_qp {
>         __aligned_u64 buf_addr;
>         __aligned_u64 db_addr;
>         __u8    log_sq_bb_count;
>         __u8    log_sq_stride;
>         __u8    sq_no_prefetch;
>         __u8    reserved[5];
>        // __aligned_u64 sdb_addr;
> };
> 
> the size is 24 bytes
> 
> if the user define a struct:
>  struct hns_roce_create_qp {
> 	struct ibv_create_qp		ibv_cmd;
> 	__u64				buf_addr;
> 	__u64				db_addr;
> 	__u8				log_sq_bb_count;
> 	__u8				log_sq_stride;
> 	__u8				sq_no_prefetch;
> 	__u8				reserved[5];
> 	__u64				sdb_addr;
> };
> 
> the size is 32 bytes

The user and kernel structs are not permitted to be different.

Jason



[Index of Archives]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Photo]     [Yosemite News]     [Yosemite Photos]     [Linux Kernel]     [Linux SCSI]     [XFree86]

  Powered by Linux