|
@@ -683,6 +683,16 @@ static int mlx5_ib_query_device(struct ib_device *ibdev,
|
|
if (field_avail(typeof(resp), reserved, uhw->outlen))
|
|
if (field_avail(typeof(resp), reserved, uhw->outlen))
|
|
resp.response_length += sizeof(resp.reserved);
|
|
resp.response_length += sizeof(resp.reserved);
|
|
|
|
|
|
|
|
+ if (field_avail(typeof(resp), cqe_comp_caps, uhw->outlen)) {
|
|
|
|
+ resp.cqe_comp_caps.max_num =
|
|
|
|
+ MLX5_CAP_GEN(dev->mdev, cqe_compression) ?
|
|
|
|
+ MLX5_CAP_GEN(dev->mdev, cqe_compression_max_num) : 0;
|
|
|
|
+ resp.cqe_comp_caps.supported_format =
|
|
|
|
+ MLX5_IB_CQE_RES_FORMAT_HASH |
|
|
|
|
+ MLX5_IB_CQE_RES_FORMAT_CSUM;
|
|
|
|
+ resp.response_length += sizeof(resp.cqe_comp_caps);
|
|
|
|
+ }
|
|
|
|
+
|
|
if (uhw->outlen) {
|
|
if (uhw->outlen) {
|
|
err = ib_copy_to_udata(uhw, &resp, resp.response_length);
|
|
err = ib_copy_to_udata(uhw, &resp, resp.response_length);
|
|
|
|
|