From: Mark Zhang Date: Thu, 2 Jul 2020 08:29:33 +0000 (+0300) Subject: RDMA/counter: Allow manually bind QPs with different pids to same counter X-Git-Tag: v5.9-rc1~117^2~62 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=cbeb7d896c0f296451ffa7b67e7706786b8364c8;p=thirdparty%2Flinux.git RDMA/counter: Allow manually bind QPs with different pids to same counter In manual mode allow bind user QPs with different pids to same counter, since this is allowed in auto mode. Bind kernel QPs and user QPs to the same counter are not allowed. Fixes: 1bd8e0a9d0fd ("RDMA/counter: Allow manual mode configuration support") Link: https://lore.kernel.org/r/20200702082933.424537-4-leon@kernel.org Signed-off-by: Mark Zhang Reviewed-by: Maor Gottlieb Signed-off-by: Leon Romanovsky Signed-off-by: Jason Gunthorpe --- diff --git a/drivers/infiniband/core/counters.c b/drivers/infiniband/core/counters.c index c88139fa859e2..edf77d061127e 100644 --- a/drivers/infiniband/core/counters.c +++ b/drivers/infiniband/core/counters.c @@ -471,7 +471,7 @@ int rdma_counter_bind_qpn(struct ib_device *dev, u8 port, goto err; } - if (counter->res.task != qp->res.task) { + if (rdma_is_kernel_res(&counter->res) != rdma_is_kernel_res(&qp->res)) { ret = -EINVAL; goto err_task; }