Yixing Liu
782832f254
RDMA/hns: Simplify the function config_eqc()
...
Use "hr_reg_write" replace "roce_set_filed".
Link: https://lore.kernel.org/r/1617354454-47840-9-git-send-email-liweihang@huawei.com
Signed-off-by: Yixing Liu <liuyixing1@huawei.com >
Signed-off-by: Weihang Li <liweihang@huawei.com >
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com >
2021-04-08 16:08:22 -03:00
Wenpeng Liang
495c24808c
RDMA/hns: Add XRC subtype in QPC and XRC type in SRQC
...
A field to distuiguish basic SRQ from XRC SRQ in SRQC and a field in QPC
to determine whether a QP is XRC TGT QP or XRC INI QP are missing.
Fixes: 32548870d4 ("RDMA/hns: Add support for XRC on HIP09")
Link: https://lore.kernel.org/r/1617354454-47840-8-git-send-email-liweihang@huawei.com
Signed-off-by: Wenpeng Liang <liangwenpeng@huawei.com >
Signed-off-by: Weihang Li <liweihang@huawei.com >
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com >
2021-04-08 16:08:22 -03:00
Wenpeng Liang
537bc924f3
RDMA/hns: Remove unsupported QP types
...
The hns ROCEE does not support UC QP currently.
Link: https://lore.kernel.org/r/1617354454-47840-7-git-send-email-liweihang@huawei.com
Signed-off-by: Wenpeng Liang <liangwenpeng@huawei.com >
Signed-off-by: Weihang Li <liweihang@huawei.com >
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com >
2021-04-08 16:08:22 -03:00
Yangyang Li
7bd5d90d8f
RDMA/hns: Delete unused members in the structure hns_roce_hw
...
Some structure members in hns_roce_hw have never been used and need to be
deleted.
Fixes: 9a4435375c ("IB/hns: Add driver files for hns RoCE driver")
Fixes: b156269d88 ("RDMA/hns: Add modify CQ support for hip08")
Fixes: c7bcb13442 ("RDMA/hns: Add SRQ support for hip08 kernel mode")
Link: https://lore.kernel.org/r/1617354454-47840-6-git-send-email-liweihang@huawei.com
Signed-off-by: Yangyang Li <liyangyang20@huawei.com >
Signed-off-by: Weihang Li <liweihang@huawei.com >
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com >
2021-04-08 16:08:21 -03:00
Wenpeng Liang
2371efab97
RDMA/hns: Delete redundant abnormal interrupt status
...
The hardware supports only two types of abnormal interrupts.
Fixes: a5073d6054 ("RDMA/hns: Add eq support of hip08")
Link: https://lore.kernel.org/r/1617354454-47840-5-git-send-email-liweihang@huawei.com
Signed-off-by: Wenpeng Liang <liangwenpeng@huawei.com >
Signed-off-by: Weihang Li <liweihang@huawei.com >
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com >
2021-04-08 16:08:21 -03:00
Yangyang Li
714a597baa
RDMA/hns: Delete redundant condition judgment related to eq
...
The register value related to the eq interrupt depends only on
enable_flag, so the redundant condition judgment is deleted.
Fixes: a5073d6054 ("RDMA/hns: Add eq support of hip08")
Link: https://lore.kernel.org/r/1617354454-47840-4-git-send-email-liweihang@huawei.com
Signed-off-by: Yangyang Li <liyangyang20@huawei.com >
Signed-off-by: Weihang Li <liweihang@huawei.com >
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com >
2021-04-08 16:08:21 -03:00
Weihang Li
9eab614338
RDMA/hns: Fix missing assignment of max_inline_data
...
When querying QP, the ULPs should be informed of the max length of inline
data supported by the hardware.
Fixes: 30b707886a ("RDMA/hns: Support inline data in extented sge space for RC")
Link: https://lore.kernel.org/r/1617354454-47840-3-git-send-email-liweihang@huawei.com
Signed-off-by: Weihang Li <liweihang@huawei.com >
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com >
2021-04-08 16:08:21 -03:00
Weihang Li
24f3f1cd51
RDMA/hns: Avoid enabling RQ inline on UD
...
RQ inline is not supported on UD/GSI QP, it should be disabled in QPC.
Link: https://lore.kernel.org/r/1617354454-47840-2-git-send-email-liweihang@huawei.com
Signed-off-by: Weihang Li <liweihang@huawei.com >
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com >
2021-04-08 16:08:20 -03:00
Wenpeng Liang
8d78e7b478
RDMA/hns: Modify prints for mailbox and command queue
...
Use ratelimited print in mbox and cmq. And print mailbox operation if
mailbox fails because it's useful information for the user.
Link: https://lore.kernel.org/r/1617262341-37571-4-git-send-email-liweihang@huawei.com
Signed-off-by: Wenpeng Liang <liangwenpeng@huawei.com >
Signed-off-by: Lang Cheng <chenglang@huawei.com >
Signed-off-by: Weihang Li <liweihang@huawei.com >
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com >
2021-04-08 16:05:04 -03:00
Lang Cheng
0835cf5839
RDMA/hns: Support more return types of command queue
...
Add error code definition according to the return code from firmware to
help find out more detailed reasons why a command fails to be sent.
Link: https://lore.kernel.org/r/1617262341-37571-3-git-send-email-liweihang@huawei.com
Signed-off-by: Lang Cheng <chenglang@huawei.com >
Signed-off-by: Weihang Li <liweihang@huawei.com >
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com >
2021-04-08 16:05:03 -03:00
Lang Cheng
a389d016c0
RDMA/hns: Enable all CMDQ context
...
Fix error of cmd's context number calculation algorithm to enable all of
32 cmd entries and support 32 concurrent accesses.
Link: https://lore.kernel.org/r/1617262341-37571-2-git-send-email-liweihang@huawei.com
Signed-off-by: Lang Cheng <chenglang@huawei.com >
Signed-off-by: Weihang Li <liweihang@huawei.com >
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com >
2021-04-08 16:05:03 -03:00
Bob Pearson
ea49225189
RDMA/rxe: Fix missing acks from responder
...
All responder errors from request packets that do not consume a receive
WQE fail to generate acks for RC QPs. This patch corrects this behavior
by making the flow follow the same path as request packets that do consume
a WQE after the completion.
Link: https://lore.kernel.org/r/20210402001016.3210-1-rpearson@hpe.com
Link: https://lore.kernel.org/linux-rdma/1a7286ac-bcea-40fb-2267-480134dd301b@gmail.com/
Signed-off-by: Bob Pearson <rpearson@hpe.com >
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com >
2021-04-08 15:59:28 -03:00
Yixian Liu
7d8f346504
RDMA/core: Make the wc status prompt message clearer
...
Local invalidate is also a kind of memory management operation, not only
memory bind operation. Furthermore, as invalidate operations include local
and remote, add prefix to the prompt message to make it clearer.
Link: https://lore.kernel.org/r/1617698772-13871-1-git-send-email-liweihang@huawei.com
Signed-off-by: Yixian Liu <liuyixian@huawei.com >
Signed-off-by: Weihang Li <liweihang@huawei.com >
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com >
2021-04-07 20:27:03 -03:00
Wei Yongjun
2abb743173
RDMA/hns: Use GFP_ATOMIC under spin lock
...
A spin lock is taken here so we should use GFP_ATOMIC.
Fixes: f91696f2f0 ("RDMA/hns: Support congestion control type selection according to the FW")
Link: https://lore.kernel.org/r/20210407154900.3486268-1-weiyongjun1@huawei.com
Reported-by: Hulk Robot <hulkci@huawei.com >
Signed-off-by: Wei Yongjun <weiyongjun1@huawei.com >
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com >
2021-04-07 20:26:32 -03:00
Praveen Kumar Kannoju
7e111bbff9
IB/mlx5: Reduce max order of memory allocated for xlt update
...
To update xlt (during mlx5_ib_reg_user_mr()), the driver can request up to
1 MB (order-8) memory, depending on the size of the MR. This costly
allocation can sometimes take very long to return (a few seconds). This
causes the calling application to hang for a long time, especially when
the system is fragmented. To avoid these long latency spikes, the calls
the higher order allocations need to fail faster in case they are not
available.
In order to acheive this we need __GFP_NORETRY flag in the gfp_mask before
during fetching the free pages. Allow the algorithm to automatically fall
back to smaller page sizes.
Link: https://lore.kernel.org/r/1617425635-35631-1-git-send-email-praveen.kannoju@oracle.com
Signed-off-by: Praveen Kumar Kannoju <praveen.kannoju@oracle.com >
Acked-by: Leon Romanovsky <leonro@nvidia.com >
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com >
2021-04-07 20:25:17 -03:00
Kaike Wan
fdde1aa09a
IB/hfi1: Remove unused function
...
Remove the unused function sdma_iowait_schedule().
Fixes: 7724105686 ("IB/hfi1: add driver files")
Link: https://lore.kernel.org/r/1617026791-89997-1-git-send-email-dennis.dalessandro@cornelisnetworks.com
Reviewed-by: Mike Marciniszyn <mike.marciniszyn@cornelisnetworks.com >
Signed-off-by: Kaike Wan <kaike.wan@intel.com >
Signed-off-by: Dennis Dalessandro <dennis.dalessandro@cornelisnetworks.com >
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com >
2021-04-07 20:19:01 -03:00
Mike Marciniszyn
ca5f72568e
IB/hfi1: Use kzalloc() for mmu_rb_handler allocation
...
The code currently assumes that the mmu_notifier struct
embedded in mmu_rb_handler only contains two fields.
There are now extra fields:
struct mmu_notifier {
struct hlist_node hlist;
const struct mmu_notifier_ops *ops;
struct mm_struct *mm;
struct rcu_head rcu;
unsigned int users;
};
Given that there in no init for the mmu_notifier, a kzalloc() should
be used to insure that any newly added fields are given a predictable
initial value of zero.
Fixes: 06e0ffa693 ("IB/hfi1: Re-factor MMU notification code")
Link: https://lore.kernel.org/r/1617026056-50483-9-git-send-email-dennis.dalessandro@cornelisnetworks.com
Reviewed-by: Adam Goldman <adam.goldman@intel.com >
Signed-off-by: Mike Marciniszyn <mike.marciniszyn@cornelisnetworks.com >
Signed-off-by: Dennis Dalessandro <dennis.dalessandro@cornelisnetworks.com >
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com >
2021-04-07 20:19:01 -03:00
Mike Marciniszyn
6b13215df1
IB/hfi1: Add additional usdma traces
...
Add traces that were vital in isolating an issue with pq waitlist in
commit fa8dac3968 ("IB/hfi1: Fix another case where pq is left on
waitlist")
Link: https://lore.kernel.org/r/1617026056-50483-8-git-send-email-dennis.dalessandro@cornelisnetworks.com
Reviewed-by: Kaike Wan <kaike.wan@intel.com >
Signed-off-by: Mike Marciniszyn <mike.marciniszyn@cornelisnetworks.com >
Signed-off-by: Dennis Dalessandro <dennis.dalessandro@cornelisnetworks.com >
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com >
2021-04-07 20:19:01 -03:00
Mike Marciniszyn
326a239307
IB/hfi1: Remove indirect call to hfi1_ipoib_send_dma()
...
hfi1_ipoib_send() directly calls hfi1_ipoib_send_dma() with no value add.
Fix by renaming hfi1_ipoib_send_dma() to hfi1_ipoib_send().
Link: https://lore.kernel.org/r/1617026056-50483-6-git-send-email-dennis.dalessandro@cornelisnetworks.com
Reviewed-by: Kaike Wan <kaike.wan@intel.com >
Signed-off-by: Mike Marciniszyn <mike.marciniszyn@cornelisnetworks.com >
Signed-off-by: Dennis Dalessandro <dennis.dalessandro@cornelisnetworks.com >
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com >
2021-04-07 20:19:00 -03:00
Mike Marciniszyn
70d44c18a7
IB/hfi1: Use napi_schedule_irqoff() for tx napi
...
The call is from an ISR context and napi_schedule_irqoff() can be used.
Change the call to the more efficient type.
Link: https://lore.kernel.org/r/1617026056-50483-5-git-send-email-dennis.dalessandro@cornelisnetworks.com
Reviewed-by: Kaike Wan <kaike.wan@intel.com >
Signed-off-by: Mike Marciniszyn <mike.marciniszyn@cornelisnetworks.com >
Signed-off-by: Dennis Dalessandro <dennis.dalessandro@cornelisnetworks.com >
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com >
2021-04-07 20:19:00 -03:00
Mike Marciniszyn
b536d4b2a2
IB/hfi1: Correct oversized ring allocation
...
The completion ring for tx is using the wrong size to size the ring,
oversizing the ring by two orders of magniture.
Correct the allocation size and use kcalloc_node() to allocate the ring.
Fix mistaken GFP defines in similar allocations.
Link: https://lore.kernel.org/r/1617026056-50483-4-git-send-email-dennis.dalessandro@cornelisnetworks.com
Reviewed-by: Kaike Wan <kaike.wan@intel.com >
Signed-off-by: Mike Marciniszyn <mike.marciniszyn@cornelisnetworks.com >
Signed-off-by: Dennis Dalessandro <dennis.dalessandro@cornelisnetworks.com >
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com >
2021-04-07 20:19:00 -03:00
Mike Marciniszyn
042a00f93a
IB/{ipoib,hfi1}: Add a timeout handler for rdma_netdev
...
The current rdma_netdev handling in ipoib hooks the tx_timeout handler,
but prints out a totally useless message that prevents effective debugging
especially when multiple transmit queues are being used.
Add a tx_timeout rdma_netdev hook and implement the callback in the hfi1
to print additional information.
The existing non-helpful message is avoided when the driver has presented
a callback.
Link: https://lore.kernel.org/r/1617026056-50483-3-git-send-email-dennis.dalessandro@cornelisnetworks.com
Reviewed-by: Kaike Wan <kaike.wan@intel.com >
Signed-off-by: Dennis Dalessandro <dennis.dalessandro@cornelisnetworks.com >
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com >
2021-04-07 20:19:00 -03:00
Mike Marciniszyn
4bd00b55c9
IB/hfi1: Add AIP tx traces
...
Add traces to allow for debugging issues with AIP tx.
Link: https://lore.kernel.org/r/1617026056-50483-2-git-send-email-dennis.dalessandro@cornelisnetworks.com
Reviewed-by: Kaike Wan <kaike.wan@intel.com >
Signed-off-by: Mike Marciniszyn <mike.marciniszyn@cornelisnetworks.com >
Signed-off-by: Dennis Dalessandro <dennis.dalessandro@cornelisnetworks.com >
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com >
2021-04-07 20:19:00 -03:00
Yixian Liu
704d68f5f2
RDMA/hns: Reorganize doorbell update interfaces for all queues
...
The doorbell update interfaces are very similar for different queues, such
as SQ, RQ, SRQ, CQ and EQ. So reorganize these code and also fix some
inappropriate naming.
Link: https://lore.kernel.org/r/1616840738-7866-3-git-send-email-liweihang@huawei.com
Signed-off-by: Yixian Liu <liuyixian@huawei.com >
Signed-off-by: Weihang Li <liweihang@huawei.com >
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com >
2021-04-01 16:16:44 -03:00
Yixian Liu
cf8cd4ccb2
RDMA/hns: Support configuring doorbell mode of RQ and CQ
...
HIP08 supports both normal and record doorbell mode for RQ and CQ, SQ
record doorbell for userspace is also supported by the software for
flushing CQE process. As now the capability of HIP08 are exposed to the
user and are configurable, the support of normal doorbell should be added
back.
Note that, if switching to normal doorbell, the kernel will report "flush
cqe is unsupported" if modify qp to error status as the flush is based on
record doorbell.
Link: https://lore.kernel.org/r/1616840738-7866-2-git-send-email-liweihang@huawei.com
Signed-off-by: Yixian Liu <liuyixian@huawei.com >
Signed-off-by: Weihang Li <liweihang@huawei.com >
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com >
2021-04-01 16:16:13 -03:00
Xi Wang
8115f97445
RDMA/hns: Simplify command fields for HEM base address configuration
...
Use hr_reg_write() instead of roce_set_field() to simplify codes about
configuring HEM BA.
Link: https://lore.kernel.org/r/1616815294-13434-6-git-send-email-liweihang@huawei.com
Signed-off-by: Xi Wang <wangxi11@huawei.com >
Signed-off-by: Weihang Li <liweihang@huawei.com >
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com >
2021-04-01 16:12:45 -03:00
Xi Wang
c6f0411b96
RDMA/hns: Reorganize process of setting HEM
...
Encapsulate configuring GMV base address and other type of HEM table into
two separate functions to make process of setting HEM clearer.
Link: https://lore.kernel.org/r/1616815294-13434-5-git-send-email-liweihang@huawei.com
Signed-off-by: Xi Wang <wangxi11@huawei.com >
Signed-off-by: Weihang Li <liweihang@huawei.com >
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com >
2021-04-01 16:12:45 -03:00
Xi Wang
ee82e68850
RDMA/hns: Refactor reset state checking flow
...
The 'HNS_ROCE_OPC_QUERY_MB_ST' command will response the mailbox complete
status and hardware busy flag, and the complete status is only valid when
the busy flag is 0, so it's better to query these two fields at a time
rather than separately.
Link: https://lore.kernel.org/r/1616815294-13434-4-git-send-email-liweihang@huawei.com
Signed-off-by: Xi Wang <wangxi11@huawei.com >
Signed-off-by: Weihang Li <liweihang@huawei.com >
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com >
2021-04-01 16:12:45 -03:00
Yixing Liu
d102a6e374
RDMA/hns: Reorganize hns_roce_create_cq()
...
Encapsulate two subprocesses into functions.
Link: https://lore.kernel.org/r/1616815294-13434-3-git-send-email-liweihang@huawei.com
Signed-off-by: Yixing Liu <liuyixing1@huawei.com >
Signed-off-by: Weihang Li <liweihang@huawei.com >
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com >
2021-04-01 16:12:44 -03:00
Weihang Li
4940b0ab45
RDMA/hns: Refactor hns_roce_v2_poll_one()
...
Encapsulate the process of obtaining the current QP and filling WC as
functions, also merge some duplicate code.
Link: https://lore.kernel.org/r/1616815294-13434-2-git-send-email-liweihang@huawei.com
Signed-off-by: Weihang Li <liweihang@huawei.com >
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com >
2021-04-01 16:12:44 -03:00
Weihang Li
d907294b27
MAINTAINERS: remove Xavier as maintainer of HISILICON ROCE DRIVER
...
Wei Hu(Xavier) has left Hisilicon and his email address is invalid now.
I'd be glad to add him back with another address if he wants to continue
maintain this module.
Link: https://lore.kernel.org/r/1617007584-39842-1-git-send-email-liweihang@huawei.com
Signed-off-by: Weihang Li <liweihang@huawei.com >
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com >
2021-04-01 16:09:00 -03:00
Jack Wang
0633e23771
RDMA/rtrs-clt: Cap max_io_size
...
Max io size is limited by both remote buffer size and the max fr pages per
mr.
Link: https://lore.kernel.org/r/20210325153308.1214057-20-gi-oh.kim@ionos.com
Signed-off-by: Jack Wang <jinpu.wang@ionos.com >
Reviewed-by: Md Haris Iqbal <haris.iqbal@ionos.com >
Signed-off-by: Gioh Kim <gi-oh.kim@ionos.com >
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com >
2021-04-01 15:59:46 -03:00
Jack Wang
11b74cbf8e
RDMA/rtrs: Cleanup unused 's' variable in __alloc_sess
...
Link: https://lore.kernel.org/r/20210325153308.1214057-18-gi-oh.kim@ionos.com
Signed-off-by: Jack Wang <jinpu.wang@ionos.com >
Signed-off-by: Gioh Kim <gi-oh.kim@ionos.com >
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com >
2021-04-01 15:59:46 -03:00
Gioh Kim
88e2f10564
RDMA/rtrs-srv: Report temporary sessname for error message
...
Before receiving the session name, the error message cannot include any
information about which connection generates the error.
This patch stores the addresses of source and target in the sessname field
to show which generates the error. That field will be over-written
when receiving the session name from client.
Link: https://lore.kernel.org/r/20210325153308.1214057-17-gi-oh.kim@ionos.com
Signed-off-by: Gioh Kim <gi-oh.kim@ionos.com >
Signed-off-by: Jack Wang <jinpu.wang@ionos.com >
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com >
2021-04-01 15:59:46 -03:00
Gioh Kim
8e86499e6c
RDMA/rtrs: New function converting rtrs_addr to string
...
There is common code converting addresses of source machine and
destination machine to a string. We already have a struct rtrs_addr to
store two addresses. This patch introduces a new function that converts
two addresses into one string with struct rtrs_addr.
Link: https://lore.kernel.org/r/20210325153308.1214057-14-gi-oh.kim@ionos.com
Signed-off-by: Gioh Kim <gi-oh.kim@ionos.com >
Signed-off-by: Jack Wang <jinpu.wang@ionos.com >
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com >
2021-04-01 15:49:47 -03:00
Guoqing Jiang
57dae8baa6
RDMA/rtrs: Cleanup the code in rtrs_srv_rdma_cm_handler
...
Let these cases share the same path since all of them need to close
session.
Link: https://lore.kernel.org/r/20210325153308.1214057-11-gi-oh.kim@ionos.com
Signed-off-by: Guoqing Jiang <guoqing.jiang@ionos.com >
Reviewed-by: Danil Kipnis <danil.kipnis@ionos.com >
Signed-off-by: Gioh Kim <gi-oh.kim@ionos.com >
Signed-off-by: Jack Wang <jinpu.wang@ionos.com >
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com >
2021-04-01 15:40:43 -03:00
Guoqing Jiang
4cd5261df9
RDMA/rtrs: Remove sessname and sess_kobj from rtrs_attrs
...
The two members are not used in the code, so remove them.
Link: https://lore.kernel.org/r/20210325153308.1214057-10-gi-oh.kim@ionos.com
Signed-off-by: Guoqing Jiang <guoqing.jiang@ionos.com >
Reviewed-by: Danil Kipnis <danil.kipnis@ionos.com >
Signed-off-by: Gioh Kim <gi-oh.kim@ionos.com >
Signed-off-by: Jack Wang <jinpu.wang@ionos.com >
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com >
2021-04-01 15:40:28 -03:00
Guoqing Jiang
4a58ac5440
RDMA/rtrs: Kill the put label in rtrs_srv_create_once_sysfs_root_folders
...
We can remove the label after move put_device to the right place.
Link: https://lore.kernel.org/r/20210325153308.1214057-9-gi-oh.kim@ionos.com
Signed-off-by: Guoqing Jiang <guoqing.jiang@ionos.com >
Reviewed-by: Danil Kipnis <danil.kipnis@ionos.com >
Signed-off-by: Gioh Kim <gi-oh.kim@ionos.com >
Signed-off-by: Jack Wang <jinpu.wang@ionos.com >
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com >
2021-04-01 15:40:17 -03:00
Guoqing Jiang
44930991f2
RDMA/rtrs-clt: Remove redundant code from rtrs_clt_read_req
...
There is no need to dereference 's' from 'sess', since we have "sess =
to_clt_sess(s)" before.
And we can deference 'dev' from 's' earlier.
Link: https://lore.kernel.org/r/20210325153308.1214057-8-gi-oh.kim@ionos.com
Signed-off-by: Guoqing Jiang <guoqing.jiang@ionos.com >
Reviewed-by: Danil Kipnis <danil.kipnis@ionos.com >
Signed-off-by: Gioh Kim <gi-oh.kim@ionos.com >
Signed-off-by: Jack Wang <jinpu.wang@ionos.com >
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com >
2021-04-01 15:39:55 -03:00
Danil Kipnis
0adb3ad609
MAINTAINERS: Change maintainer for rtrs module
...
Danil will step down, Haris will take over. Also update to email address
to ionos.com, cloud.ionos.com will still work for sometime.
Link: https://lore.kernel.org/r/20210325153308.1214057-2-gi-oh.kim@ionos.com
Signed-off-by: Danil Kipnis <danil.kipnis@cloud.ionos.com >
Acked-by: Md Haris Iqbal <haris.iqbal@cloud.ionos.com >
Signed-off-by: Jack Wang <jinpu.wang@cloud.ionos.com >
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com >
2021-04-01 15:39:41 -03:00
YueHaibing
dbb3e9db82
RDMA/uverbs: Fix -Wunused-function warning
...
make W=1 warns this:
In file included from drivers/infiniband/sw/rdmavt/mmap.c:51:0:
./include/rdma/uverbs_ioctl.h:937:1:
warning: ‘_uverbs_get_const_unsigned’ defined but not used [-Wunused-function]
_uverbs_get_const_unsigned(u64 *to,
^~~~~~~~~~~~~~~~~~~~~~~~~~
./include/rdma/uverbs_ioctl.h:930:1:
warning: ‘_uverbs_get_const_signed’ defined but not used [-Wunused-function]
_uverbs_get_const_signed(s64 *to, const struct uverbs_attr_bundle *attrs_bundle,
^~~~~~~~~~~~~~~~~~~~~~~~
Make these functions inline to fix this warnings.
Fixes: 2904bb37b3 ("IB/core: Split uverbs_get_const/default to consider target type")
Link: https://lore.kernel.org/r/20210401021028.25720-1-yuehaibing@huawei.com
Signed-off-by: YueHaibing <yuehaibing@huawei.com >
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com >
2021-04-01 15:28:49 -03:00
Yangyang Li
f91696f2f0
RDMA/hns: Support congestion control type selection according to the FW
...
The type of congestion control algorithm includes DCQCN, LDCP, HC3 and
DIP. The driver will select one of them according to the firmware when
querying PF capabilities, and then set the related configuration fields
into QPC.
Link: https://lore.kernel.org/r/1616679236-7795-3-git-send-email-liweihang@huawei.com
Signed-off-by: Yangyang Li <liyangyang20@huawei.com >
Signed-off-by: Yixing Liu <liuyixing1@huawei.com >
Signed-off-by: Weihang Li <liweihang@huawei.com >
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com >
2021-04-01 15:23:09 -03:00
Wei Xu
e079d87d1d
RDMA/hns: Support query information of functions from FW
...
Add a new type of command to query mac id of functions from the firmware,
it is used to select the template of congestion algorithm. More info will
be supported in the future.
Link: https://lore.kernel.org/r/1616679236-7795-2-git-send-email-liweihang@huawei.com
Signed-off-by: Wei Xu <xuwei5@hisilicon.com >
Signed-off-by: Shengming Shu <shushengming1@huawei.com >
Signed-off-by: Weihang Li <liweihang@huawei.com >
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com >
2021-04-01 15:23:08 -03:00
Håkon Bugge
194f64a3ca
RDMA/core: Fix corrupted SL on passive side
...
On RoCE systems, a CM REQ contains a Primary Hop Limit > 1 and Primary
Subnet Local is zero.
In cm_req_handler(), the cm_process_routed_req() function is called. Since
the Primary Subnet Local value is zero in the request, and since this is
RoCE (Primary Local LID is permissive), the following statement will be
executed:
IBA_SET(CM_REQ_PRIMARY_SL, req_msg, wc->sl);
This corrupts SL in req_msg if it was different from zero. In other words,
a request to setup a connection using an SL != zero, will not be honored,
and a connection using SL zero will be created instead.
Fixed by not calling cm_process_routed_req() on RoCE systems, the
cm_process_route_req() is only for IB anyhow.
Fixes: 3971c9f6db ("IB/cm: Add interim support for routed paths")
Link: https://lore.kernel.org/r/1616420132-31005-1-git-send-email-haakon.bugge@oracle.com
Signed-off-by: Håkon Bugge <haakon.bugge@oracle.com >
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com >
2021-04-01 14:47:24 -03:00
Kamal Heib
b1f27f688f
RDMA/rxe: Remove rxe_dma_device declaration
...
The function isn't implemented - delete the declaration.
Fixes: a9d2e9ae95 ("RDMA/siw,rxe: Make emulated devices virtual in the device tree")
Link: https://lore.kernel.org/r/20210331102043.691950-1-kamalheib1@gmail.com
Signed-off-by: Kamal Heib <kamalheib1@gmail.com >
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com >
2021-03-31 14:45:50 -03:00
Tang Yizhou
2e919a32ae
RDMA/iw_cxgb4: Use DEFINE_SPINLOCK() for spinlock
...
spinlock can be initialized automatically with DEFINE_SPINLOCK() rather
than explicitly calling spin_lock_init().
Link: https://lore.kernel.org/r/20210331020105.4858-1-tangyizhou@huawei.com
Reported-by: Hulk Robot <hulkci@huawei.com >
Signed-off-by: Tang Yizhou <tangyizhou@huawei.com >
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com >
2021-03-31 14:41:01 -03:00
Wan Jiabing
7f13e0be36
RDMA/iser: struct iscsi_iser_task is declared twice
...
struct iscsi_iser_task has been declared at 201st line. Remove the
duplicate.
Link: https://lore.kernel.org/r/20210326113347.903976-1-wanjiabing@vivo.com
Signed-off-by: Wan Jiabing <wanjiabing@vivo.com >
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com >
2021-03-30 19:53:08 -03:00
Ruiqi Gong
de2a246195
RDMA/hns: Fix a spelling mistake in hns_roce_hw_v1.c
...
s/caculating/calculating
Link: https://lore.kernel.org/r/20210330122912.19989-1-gongruiqi1@huawei.com
Reported-by: Hulk Robot <hulkci@huawei.com >
Signed-off-by: Ruiqi Gong <gongruiqi1@huawei.com >
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com >
2021-03-30 19:52:06 -03:00
Bob Pearson
364e282c4f
RDMA/rxe: Split MEM into MR and MW
...
In the original rxe implementation it was intended to use a common object
to represent MRs and MWs but they are different enough to separate these
into two objects.
This allows replacing the mem name with mr for MRs which is more
consistent with the style for the other objects and less likely to be
confusing. This is a long patch that mostly changes mem to mr where it
makes sense and adds a new rxe_mw struct.
Link: https://lore.kernel.org/r/20210325212425.2792-1-rpearson@hpe.com
Signed-off-by: Bob Pearson <rpearson@hpe.com >
Acked-by: Zhu Yanjun <zyjzyj2000@gmail.com >
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com >
2021-03-30 17:11:30 -03:00
Gal Pressman
7410c2d0f4
RDMA/efa: Use strscpy instead of strlcpy
...
The strlcpy function doesn't limit the source length, use the preferred
strscpy function instead.
Link: https://lore.kernel.org/r/20210329120131.18793-1-galpress@amazon.com
Reviewed-by: Firas JahJah <firasj@amazon.com >
Reviewed-by: Yossi Leybovich <sleybo@amazon.com >
Signed-off-by: Gal Pressman <galpress@amazon.com >
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com >
2021-03-30 17:03:22 -03:00