Re: [PATCH rebase to for-next 2/2] rdma/cxgb4: Add support for kernel mode srqs

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

 



On Thu, May 17, 2018 at 11:18:28AM +0530, Raju Rangoju wrote:
>  
> +	/* The support for new kernel mode SRQ extends the t4_cqe struct
> +	 * size to 64 Bytes from existing 32 Bytes. But, this change brings
> +	 * in the library/kernel ABI and 32/64 Byte CQE compatibility issues.
> +	 *
> +	 * To address these issues, the user <-> kernel response message
> +	 * c4iw_create_cq_resp's 'reserved' field has been renamed to 'flags'.
> +	 *
> +	 * Newer version of libcxgb4 can pre-initialize the 'flags' field in
> +	 * the request struct with the flag C4IW_64B_CQE. And a new iw_cxgb4
> +	 * can detect the new libcxgb4 by checking for the C4IW_64B_CQE flag
> +	 * in the structure c4iw_create_cq received from userspace.
> +	 * New kernel driver can not work with older userspace library,
> +	 * c4iw_create_cq() will log a warning message to upgrade libcxgb4 and
> +	 * aborts the cq creation in this case.
> +	 *
> +	 * Likewise, new iw_cxgb4 which supports 64B CQE will set the flag
> +	 * C4IW_64B_CQE in c4iw_create_cq_resp struct. So, if the response
> +	 * from the create_cq verb results in the flags field still being zero,
> +	 * libcxgb4 can destroy the cq and print a warning and fail the user
> +	 * create cq verb.
> +	 */
> +
> +	if (ib_context && udata->inlen < sizeof(ucmd)) {
> +		pr_err_once("WARNING: Downlevel libcxgb4. RDMA cannot be supported with this driver/lib combination. Please update libcxgb4.\n");
> +		return ERR_PTR(-EINVAL);
> +	}

Nope, hard NAK on this idea.

The driver must continue to support current user space with full
compatibility.

And user space must generally support all past kernels as well.

Jason
--
To unsubscribe from this list: send the line "unsubscribe linux-rdma" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[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