diff options
author | Jack Wang <jinpu.wang@ionos.com> | 2021-07-12 08:07:47 +0200 |
---|---|---|
committer | Jason Gunthorpe <jgg@nvidia.com> | 2021-07-15 14:24:14 -0300 |
commit | e2d98504c697f9c8e45b815062f8893b10808d8e (patch) | |
tree | cf1e8f39bcf296a8fb316fac7921bb40d6459aec /drivers/infiniband/ulp/rtrs/rtrs-pri.h | |
parent | a10431eff136ef15e1f9955efe369744b1294db1 (diff) |
RDMA/rtrs: Enable the same selective signal for heartbeat and IO
On idle session, because we do not do signal for heartbeat, it will
overflow the send queue after sometime.
To avoid that, we need to enable the signal for heartbeat. To do that, add
a new member signal_interval in rtrs_path, which will set min of
queue_depth and SERVICE_CON_QUEUE_DEPTH, and track it for both heartbeat
and IO, so the sq queue full accounting is correct.
Fixes: b38041d50add ("RDMA/rtrs: Do not signal for heatbeat")
Link: https://lore.kernel.org/r/20210712060750.16494-4-jinpu.wang@ionos.com
Signed-off-by: Jack Wang <jinpu.wang@ionos.com>
Reviewed-by: Aleksei Marov <aleksei.marov@ionos.com>
Reviewed-by: Gioh Kim <gi-oh.kim@ionos.com>
Reviewed-by: Md Haris Iqbal <haris.iqbal@ionos.com>
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com>
Diffstat (limited to 'drivers/infiniband/ulp/rtrs/rtrs-pri.h')
-rw-r--r-- | drivers/infiniband/ulp/rtrs/rtrs-pri.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/infiniband/ulp/rtrs/rtrs-pri.h b/drivers/infiniband/ulp/rtrs/rtrs-pri.h index a44a4fb1b515..b88a4944cb30 100644 --- a/drivers/infiniband/ulp/rtrs/rtrs-pri.h +++ b/drivers/infiniband/ulp/rtrs/rtrs-pri.h @@ -109,6 +109,7 @@ struct rtrs_sess { unsigned int con_num; unsigned int irq_con_num; unsigned int recon_cnt; + unsigned int signal_interval; struct rtrs_ib_dev *dev; int dev_ref; struct ib_cqe *hb_cqe; |