Avihai Horon
109f2d39a6
RDMA/core: Modify rdma_query_gid() to return accurate error codes
...
Modify rdma_query_gid() to return -ENOENT for empty entries. This will
make error reporting more accurate and will be used in next patches.
Link: https://lore.kernel.org/r/1f2b65dfb4d995e74b621e3e21e7c7445d187956.1639055490.git.leonro@nvidia.com
Signed-off-by: Avihai Horon <avihaih@nvidia.com >
Reviewed-by: Mark Zhang <markzhang@nvidia.com >
Signed-off-by: Leon Romanovsky <leonro@nvidia.com >
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com >
2021-12-14 20:09:50 -04:00
Yixing Liu
0045e0d3f4
RDMA/hns: Support direct wqe of userspace
...
The current write wqe mechanism is to write to DDR first, and then notify
the hardware through doorbell to read the data. Direct wqe is a mechanism
to fill wqe directly into the hardware. In the case of light load, the wqe
will be filled into pcie bar space of the hardware, this will reduce one
memory access operation and therefore reduce the latency. SIMD
instructions allows cpu to write the 512 bits at one time to device
memory, thus it can be used for posting direct wqe.
Add direct wqe enable switch and address mapping.
Link: https://lore.kernel.org/r/20211207124901.42123-2-liangwenpeng@huawei.com
Signed-off-by: Yixing Liu <liuyixing1@huawei.com >
Signed-off-by: Wenpeng Liang <liangwenpeng@huawei.com >
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com >
2021-12-14 19:59:07 -04:00
Kamal Heib
b1a4da64bf
RDMA/qedr: Fix reporting max_{send/recv}_wr attrs
...
Fix the wrongly reported max_send_wr and max_recv_wr attributes for user
QP by making sure to save their valuse on QP creation, so when query QP is
called the attributes will be reported correctly.
Fixes: cecbcddf64 ("qedr: Add support for QP verbs")
Link: https://lore.kernel.org/r/20211206201314.124947-1-kamalheib1@gmail.com
Signed-off-by: Kamal Heib <kamalheib1@gmail.com >
Acked-by: Michal Kalderon <michal.kalderon@marvell.com >
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com >
2021-12-07 14:59:26 -04:00
Zhu Yanjun
3fe6d228a0
RDMA/rxe: Remove the unnecessary variable
...
The variable pkey is assigned from a macro. Then this variable is passed
to a function bth_init directly, and pkey is not used again. So remove it
and use the macro directly.
Fixes: 76251e15ea ("RDMA/rxe: Remove pkey table")
Link: https://lore.kernel.org/r/20211207194057.713289-1-yanjun.zhu@linux.dev
Signed-off-by: Zhu Yanjun <yanjun.zhu@linux.dev >
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com >
2021-12-07 13:56:22 -04:00
Kamal Heib
0a0575a12e
RDMA/bnxt_re: Fix endianness warning for req.pkey
...
Fix the following sparse warning:
drivers/infiniband/hw/bnxt_re/qplib_fp.c:1260:26: sparse: warning: incorrect type in assignment (different base types)
Fixes: 0e938533d9 ("RDMA/bnxt_re: Remove dynamic pkey table")
Link: https://lore.kernel.org/r/20211205204537.14184-1-kamalheib1@gmail.com
Reported-by: kernel test robot <lkp@intel.com >
Signed-off-by: Kamal Heib <kamalheib1@gmail.com >
Reviewed-by: Leon Romanovsky <leonro@nvidia.com >
Acked-by: Selvin Xavier <selvin.xavier@broadcom.com >
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com >
2021-12-06 19:56:30 -04:00
Christophe JAILLET
b6fa6f229f
RDMA/irdma: Fix the type used to declare a bitmap
...
'bitmapbuf' is really used as a bitmap, so it should be defined as a
'unsigned long *' to be more consistent with the bitmap API.
Link: https://lore.kernel.org/r/574b773fe7ced0cc87f1e1832350b38374815bd4.1638647428.git.christophe.jaillet@wanadoo.fr
Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr >
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com >
2021-12-06 19:55:19 -04:00
Colin Ian King
1eb23d0432
IB/core: Remove redundant pointer mm
...
The pointer mm is assigned a value but it is never used. The pointer is
redundant and can be removed.
Link: https://lore.kernel.org/r/20211204234904.105026-1-colin.i.king@gmail.com
Signed-off-by: Colin Ian King <colin.i.king@gmail.com >
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com >
2021-12-06 19:54:14 -04:00
Zhu Yanjun
9692407d43
RDMA/uverbs: Remove the unnecessary assignment
...
The struct member variable create_flags is assigned twice. Remove the
unnecessary assignment.
Fixes: ece9ca97cc ("RDMA/uverbs: Do not check the input length on create_cq/qp paths")
Link: https://lore.kernel.org/r/20211207064607.541695-1-yanjun.zhu@linux.dev
Signed-off-by: Zhu Yanjun <yanjun.zhu@linux.dev >
Reviewed-by: Håkon Bugge <haakon.bugge@oracle.com >
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com >
2021-12-06 19:50:35 -04:00
Yixing Liu
39d5534b13
RDMA/hns: Modify the mapping attribute of doorbell to device
...
It is more general for ARM device drivers to use the device attribute to
map PCI BAR spaces.
Fixes: 9a4435375c ("IB/hns: Add driver files for hns RoCE driver")
Link: https://lore.kernel.org/r/20211206133652.27476-1-liangwenpeng@huawei.com
Signed-off-by: Yixing Liu <liuyixing1@huawei.com >
Signed-off-by: Wenpeng Liang <liangwenpeng@huawei.com >
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com >
2021-12-06 19:50:06 -04:00
Jiapeng Chong
76937fa552
RDMA/siw: Use max() instead of doing it manually
...
Fix following coccicheck warning:
./drivers/infiniband/sw/siw/siw_verbs.c:665:28-29: WARNING opportunity for max().
Link: https://lore.kernel.org/r/1638439679-114250-1-git-send-email-jiapeng.chong@linux.alibaba.com
Reported-by: Abaci Robot <abaci@linux.alibaba.com >
Signed-off-by: Jiapeng Chong <jiapeng.chong@linux.alibaba.com >
Reviewed-by: Bernard Metzler <bmt@zurich.ibm.com >
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com >
2021-12-06 19:49:19 -04:00
Christophe JAILLET
81ff48ddda
RDMA/bnxt_re: Use bitmap_zalloc() when applicable
...
Use 'bitmap_zalloc()' to simplify code, improve the semantic and avoid
some open-coded arithmetic in allocator arguments.
Also change the corresponding 'kfree()' into 'bitmap_free()' to keep
consistency.
Link: https://lore.kernel.org/r/5c029daf43b92fdc27926fe8a98084843437c498.1637872888.git.christophe.jaillet@wanadoo.fr
Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr >
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com >
2021-11-29 14:33:56 -04:00
Christophe JAILLET
ecd68ef8d9
RDMA/pvrdma: Use non-atomic bitmap functions when possible
...
In 'pvrdma_uar_table_init()', the 'tbl->table' bitmap has just been
allocated, so no concurrent accesses can occur.
The other accesses to the 'tbl->table' bitmap are protected by the
'tbl->lock' spinlock, so no concurrent accesses can happen.
So prefer the non-atomic '__[set|clear]_bit()' functions to save a few
cycles.
Link: https://lore.kernel.org/r/271b0e2c316e2b4cf34ac6fbca0701edd2d882ec.1637870667.git.christophe.jaillet@wanadoo.fr
Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr >
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com >
2021-11-29 14:33:56 -04:00
Christophe JAILLET
67ec0fdfc5
RDMA/pvrdma: Use bitmap_zalloc() when applicable
...
Use 'bitmap_zalloc()' to simplify code, improve the semantic and avoid
some open-coded arithmetic in allocator arguments.
Also change the corresponding 'kfree()' into 'bitmap_free()' to keep
consistency.
Link: https://lore.kernel.org/r/33e8b993bfa6b7164e9bee95e3c27fb2c53949ce.1637870667.git.christophe.jaillet@wanadoo.fr
Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr >
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com >
2021-11-29 14:33:55 -04:00
Christophe JAILLET
f86dbc9fc5
IB/hfi1: Use bitmap_zalloc() when applicable
...
Use 'bitmap_zalloc()' to simplify code, improve the semantic and avoid
some open-coded arithmetic in allocator arguments.
Also change the corresponding 'kfree()' into 'bitmap_free()' to keep
consistency.
Link: https://lore.kernel.org/r/d46c6bc1869b8869244fa71943d2cad4104b3668.1637869925.git.christophe.jaillet@wanadoo.fr
Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr >
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com >
2021-11-29 14:33:55 -04:00
Christophe JAILLET
0c83da72d0
RDMA/mlx4: Use bitmap_alloc() when applicable
...
Use 'bitmap_alloc()' to simplify code, improve the semantic and avoid some
open-coded arithmetic in allocator arguments.
Also change the corresponding 'kfree()' into 'bitmap_free()' to keep
consistency.
Link: https://lore.kernel.org/r/4c93b4e02f5d784ddfd3efd4af9e673b9117d641.1637869328.git.christophe.jaillet@wanadoo.fr
Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr >
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com >
2021-11-29 14:33:55 -04:00
Christophe JAILLET
e02d9cc2f8
RDMA/ocrdma: Simplify code in 'ocrdma_search_mmap()'
...
'pd_bitmap' does not need to be const. Without it, it is possible to use
this variable when calling '__set_bit()'. This is less verbose and more
logical.
Link: https://lore.kernel.org/r/ec5cab9611ba062adea4cf8c98a63406ed510a71.1637868728.git.christophe.jaillet@wanadoo.fr
Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr >
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com >
2021-11-29 14:33:55 -04:00
Christophe JAILLET
27c2f5029a
RDMA/ocrdma: Use bitmap_zalloc() when applicable
...
Use 'bitmap_zalloc()' to simplify code, improve the semantic and avoid
some open-coded arithmetic in allocator arguments.
Also change the corresponding 'kfree()' into 'bitmap_free()' to keep
consistency.
Link: https://lore.kernel.org/r/b157f9e1586fb4d1083cb4058d7ac81b10bb86d7.1637868728.git.christophe.jaillet@wanadoo.fr
Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr >
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com >
2021-11-29 14:33:55 -04:00
Kamal Heib
0e938533d9
RDMA/bnxt_re: Remove dynamic pkey table
...
The RoCE spec requires RoCE devices to support only the default pkey.
However the bnxt_re driver maintains a 0xFFFF entry pkey table and uses
only the first entry. Remove the pkey table and hard code a table of
length one hard wired with the default pkey.
Link: https://lore.kernel.org/r/20211125033615.483750-1-kamalheib1@gmail.com
Signed-off-by: Kamal Heib <kamalheib1@gmail.com >
Reviewed-by: Devesh Sharma <devesh.s.sharma@oracle.com >
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com >
2021-11-25 13:35:51 -04:00
Kamal Heib
0abfc79d72
RDMA/siw: Use helper function to set sys_image_guid
...
Use the addrconf_addr_eui48() helper function to set the sys_image_guid,
Also make sure the GUID is valid EUI-64 identifier.
Link: https://lore.kernel.org/r/20211124102336.427637-1-kamalheib1@gmail.com
Signed-off-by: Kamal Heib <kamalheib1@gmail.com >
Acked-by: Bernard Metzler <bmt@zurich.ibm.com >
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com >
2021-11-25 13:35:08 -04:00
Jack Wang
925cac6358
RDMA/rtrs-clt: Fix the initial value of min_latency
...
The type of min_latency is ktime_t, so use KTIME_MAX to initialize the
initial value.
Fixes: dc3b66a0ce ("RDMA/rtrs-clt: Add a minimum latency multipath policy")
Link: https://lore.kernel.org/r/20211124081040.19533-1-jinpu.wang@ionos.com
Signed-off-by: Jack Wang <jinpu.wang@ionos.com >
Reviewed-by: Guoqing Jiang <Guoqing.Jiang@linux.dev >
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com >
2021-11-25 13:34:26 -04:00
Håkon Bugge
8d0d2b0f41
RDMA/cma: Remove open coding of overflow checking for private_data_len
...
The existing tests are a little hard to comprehend. Use
check_add_overflow() instead.
Fixes: 04ded16724 ("RDMA/cma: Verify private data length")
Link: https://lore.kernel.org/r/1637661978-18770-1-git-send-email-haakon.bugge@oracle.com
Signed-off-by: Håkon Bugge <haakon.bugge@oracle.com >
Reviewed-by: Leon Romanovsky <leonro@nvidia.com >
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com >
2021-11-25 13:32:12 -04:00
Christophe JAILLET
223b4d5c87
RDMA/cxgb4: Use non-atomic bitmap functions when possible
...
The accesses to the 'alloc->table' bitmap are protected by the
'alloc->lock' spinlock, so no concurrent accesses can happen.
So prefer the non-atomic '__[set|clear]_bit()' functions to save a few
cycles.
Link: https://lore.kernel.org/r/0c1c4505ca32f5ba4126e3e324041da191513ef2.1637789139.git.christophe.jaillet@wanadoo.fr
Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr >
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com >
2021-11-25 13:29:06 -04:00
Christophe JAILLET
967a578af0
RDMA/cxgb4: Use bitmap_set() when applicable
...
The 'alloc->table' bitmap has just been allocated, so this is safe to use
the faster and non-atomic 'bitmap_set()' function. There is no need to
hand-write it.
Link: https://lore.kernel.org/r/fd978b837935ed04863ffecfd495c4601a986df6.1637789139.git.christophe.jaillet@wanadoo.fr
Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr >
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com >
2021-11-25 13:29:06 -04:00
Christophe JAILLET
d4fdc383c0
RDMA/cxgb4: Use bitmap_zalloc() when applicable
...
Use 'bitmap_zalloc()' to simplify code, improve the semantic and avoid
some open-coded arithmetic in allocator arguments.
Using the 'zalloc' version of the allocator also saves a now useless
'bitmap_zero()' call.
Also change the corresponding 'kfree()' into 'bitmap_free()' to keep
consistency.
While at it, remove an extra space in a statement just a few lines above.
Link: https://lore.kernel.org/r/e396c4aa16cd8945d43877570a8f6d926cea555a.1637789139.git.christophe.jaillet@wanadoo.fr
Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr >
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com >
2021-11-25 13:29:06 -04:00
Christophe JAILLET
675e2694fc
IB/mthca: Use non-atomic bitmap functions when possible in 'mthca_mr.c'
...
In 'mthca_buddy_init()', the 'buddy->bits[n]' bitmap has just been
allocated, so no concurrent accesses can occur.
The other accesses to the 'buddy->bits[n]' bitmap are protected by the
'buddy->lock' spinlock, so no concurrent accesses can occur.
So prefer the non-atomic '__[set|clear]_bit()' functions to save a few
cycles.
Link: https://lore.kernel.org/r/a19b88ccdbc03972fd97306b998731814283041f.1637785902.git.christophe.jaillet@wanadoo.fr
Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr >
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com >
2021-11-25 13:29:06 -04:00
Christophe JAILLET
19453f34cf
IB/mthca: Use non-atomic bitmap functions when possible in 'mthca_allocator.c'
...
The accesses to the 'alloc->table' bitmap are protected by the
'alloc->lock' spinlock, so no concurrent accesses can happen.
So prefer the non-atomic '__[set|clear]_bit()' functions to save a few
cycles.
Link: https://lore.kernel.org/r/5f909ca1284fa4d2cf13952b08b9e303b656c968.1637785902.git.christophe.jaillet@wanadoo.fr
Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr >
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com >
2021-11-25 13:29:06 -04:00
Christophe JAILLET
a277f38321
IB/mthca: Use bitmap_set() when applicable
...
The 'alloc->table' bitmap has just been allocated, so this is safe to use
the faster and non-atomic 'bitmap_set()' function. There is no need to
hand-write it.
Link: https://lore.kernel.org/r/f1bd33f6ea6c8ad519a222db6e9aa17c55610557.1637785902.git.christophe.jaillet@wanadoo.fr
Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr >
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com >
2021-11-25 13:29:05 -04:00
Christophe JAILLET
12d1e2f3c5
IB/mthca: Use bitmap_zalloc() when applicable
...
Use 'bitmap_zalloc()' to simplify code, improve the semantic and avoid
some open-coded arithmetic in allocator arguments.
Using the 'zalloc' version of the allocator also saves a now useless
'bitmap_zero()' call.
Also change the corresponding 'kfree()' into 'bitmap_free()' to keep
consistency.
Link: https://lore.kernel.org/r/ea9031e28f453bc179033740f66f0c19293fcf0b.1637785902.git.christophe.jaillet@wanadoo.fr
Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr >
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com >
2021-11-25 13:29:05 -04:00
Xinhao Liu
9c3631d170
RDMA/hns: Remove magic number
...
Don't use unintelligible constants.
Link: https://lore.kernel.org/r/20211119140208.40416-10-liangwenpeng@huawei.com
Signed-off-by: Xinhao Liu <liuxinhao5@hisilicon.com >
Signed-off-by: Wenpeng Liang <liangwenpeng@huawei.com >
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com >
2021-11-19 14:13:44 -04:00
Yixing Liu
3183559376
RDMA/hns: Remove macros that are no longer used
...
These macros are no longer used, so remove them.
Link: https://lore.kernel.org/r/20211119140208.40416-9-liangwenpeng@huawei.com
Signed-off-by: Yixing Liu <liuyixing1@huawei.com >
Signed-off-by: Wenpeng Liang <liangwenpeng@huawei.com >
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com >
2021-11-19 14:13:44 -04:00
Xinhao Liu
6cb6a6cbcd
RDMA/hns: Correctly initialize the members of Array[][]
...
Each member of Array[][] should be initialized on a separate line.
Link: https://lore.kernel.org/r/20211119140208.40416-7-liangwenpeng@huawei.com
Signed-off-by: Xinhao Liu <liuxinhao@huawei.com >
Signed-off-by: Wenpeng Liang <liangwenpeng@huawei.com >
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com >
2021-11-19 14:13:44 -04:00
Xinhao Liu
d147583ec8
RDMA/hns: Correct the type of variables participating in the shift operation
...
The type of the variable participating in the shift operation should be an
unsigned type instead of a signed type.
Link: https://lore.kernel.org/r/20211119140208.40416-5-liangwenpeng@huawei.com
Signed-off-by: Xinhao Liu <liuxinhao5@hisilicon.com >
Signed-off-by: Wenpeng Liang <liangwenpeng@huawei.com >
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com >
2021-11-19 14:13:18 -04:00
Xinhao Liu
3aecfc3802
RDMA/hns: Replace tab with space in the right-side comments
...
There should be a space between the code and the comment on the right.
Link: https://lore.kernel.org/r/20211119140208.40416-4-liangwenpeng@huawei.com
Signed-off-by: Xinhao Liu <liuxinhao5@hisilicon.com >
Signed-off-by: Wenpeng Liang <liangwenpeng@huawei.com >
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com >
2021-11-19 14:13:18 -04:00
Xinhao Liu
ea393549a3
RDMA/hns: Correct the print format to be consistent with the variable type
...
The print format should be consistent with the variable type.
Link: https://lore.kernel.org/r/20211119140208.40416-3-liangwenpeng@huawei.com
Signed-off-by: Xinhao Liu <liuxinhao5@hisilicon.com >
Signed-off-by: Wenpeng Liang <liangwenpeng@huawei.com >
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com >
2021-11-19 14:13:18 -04:00
Xinhao Liu
994baacc6b
RDMA/hns: Correct the hex print format
...
The hex printf format should be "0xff" instead of "ff".
Link: https://lore.kernel.org/r/20211119140208.40416-2-liangwenpeng@huawei.com
Signed-off-by: Xinhao Liu <liuxinhao5@hisilicon.com >
Signed-off-by: Wenpeng Liang <liangwenpeng@huawei.com >
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com >
2021-11-19 14:13:17 -04:00
Bob Pearson
88f9335fa7
RDMA/rxe: Remove some #defines from rxe_pool.h
...
RXE_POOL_ALIGN is only used in rxe_pool.c so move RXE_POOL_ALIGN to
rxe_pool.c from rxe_pool.h. RXE_POOL_CACHE_FLAGS is never used so it is
deleted from rxe_pool.h
Link: https://lore.kernel.org/r/20211103050241.61293-8-rpearsonhpe@gmail.com
Signed-off-by: Bob Pearson <rpearsonhpe@gmail.com >
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com >
2021-11-19 13:47:08 -04:00
Bob Pearson
38ee25a311
RDMA/rxe: Remove #include "rxe_loc.h" from rxe_pool.c
...
rxe_loc.h is already included in rxe.h so do not include it in rxe_pool.c
Link: https://lore.kernel.org/r/20211103050241.61293-7-rpearsonhpe@gmail.com
Signed-off-by: Bob Pearson <rpearsonhpe@gmail.com >
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com >
2021-11-19 13:47:08 -04:00
Bob Pearson
b92d766c87
RDMA/rxe: Save object pointer in pool element
...
In rxe_pool.c currently there are many cases where it is necessary to
compute the offset from a pool element struct to the object containing it
in a type independent way where the offset is different for each type. By
saving a pointer to the object when they are created extra work can be
saved.
Link: https://lore.kernel.org/r/20211103050241.61293-5-rpearsonhpe@gmail.com
Signed-off-by: Bob Pearson <rpearsonhpe@gmail.com >
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com >
2021-11-19 13:29:15 -04:00
Bob Pearson
c95acedbff
RDMA/rxe: Copy setup parameters into rxe_pool
...
In rxe_pool.c copy remaining pool setup parameters from rxe_pool_info into
rxe_pool. This saves looking up rxe_pool_info in the performance path.
Link: https://lore.kernel.org/r/20211103050241.61293-4-rpearsonhpe@gmail.com
Signed-off-by: Bob Pearson <rpearsonhpe@gmail.com >
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com >
2021-11-19 13:29:15 -04:00
Bob Pearson
02827b6708
RDMA/rxe: Cleanup rxe_pool_entry
...
Currently three different names are used to describe rxe pool elements.
They are referred to as entries, elems or pelems. This patch chooses one
'elem' and changes the other ones.
Link: https://lore.kernel.org/r/20211103050241.61293-3-rpearsonhpe@gmail.com
Signed-off-by: Bob Pearson <rpearsonhpe@gmail.com >
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com >
2021-11-19 13:29:14 -04:00
Bob Pearson
21adfa7a3c
RDMA/rxe: Replace irqsave locks with bh locks
...
Most of the locks in the rxe driver are _irqsave/restore locks but in fact
there are no interrupt threads that run rxe code or share data with
rxe. There are softirq threads and data sharing so the appropriate lock
type is _bh. This patch replaces all irqsave type locks with bh type
locks.
Link: https://lore.kernel.org/r/20211103050241.61293-2-rpearsonhpe@gmail.com
Signed-off-by: Bob Pearson <rpearsonhpe@gmail.com >
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com >
2021-11-19 13:29:14 -04:00
Dan Carpenter
10f2d1cbf8
RDMA/usnic: Clean up usnic_ib_alloc_pd()
...
Remove the unnecessary "umem_pd" variable. And usnic_uiom_alloc_pd()
never returns NULL so remove the NULL check.
Link: https://lore.kernel.org/r/20211118113924.GH1147@kili
Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com >
Reviewed-by: Leon Romanovsky <leonro@nvidia.com >
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com >
2021-11-19 12:02:30 -04:00
Kamal Heib
46c87b4277
RDMA/cxgb4: Use helper function to set GUIDs
...
Use the addrconf_addr_eui48() helper function to set the GUIDs, Also make
sure the GUIDs are valid EUI-64 identifiers.
Link: https://lore.kernel.org/r/20211118100456.45423-1-kamalheib1@gmail.com
Signed-off-by: Kamal Heib <kamalheib1@gmail.com >
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com >
2021-11-19 11:44:21 -04:00
Kamal Heib
2a67fcfa0d
RDMA/hns: Validate the pkey index
...
Before query pkey, make sure that the queried index is valid.
Fixes: 9a4435375c ("IB/hns: Add driver files for hns RoCE driver")
Link: https://lore.kernel.org/r/20211117145954.123893-1-kamalheib1@gmail.com
Signed-off-by: Kamal Heib <kamalheib1@gmail.com >
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com >
2021-11-17 16:52:18 -04:00
Kamal Heib
679f2b7552
RDMA/ocrdma: Use helper function to set GUIDs
...
Use addrconf_addr_eui48() helper function to set the GUIDs and remove the
driver specific version.
Link: https://lore.kernel.org/r/20211117090205.96523-1-kamalheib1@gmail.com
Signed-off-by: Kamal Heib <kamalheib1@gmail.com >
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com >
2021-11-17 16:52:07 -04:00
Christophe JAILLET
a917dfb66c
RDMA/bnxt_re: Scan the whole bitmap when checking if "disabling RCFW with pending cmd-bit"
...
The 'cmdq->cmdq_bitmap' bitmap is 'rcfw->cmdq_depth' bits long. The size
stored in 'cmdq->bmap_size' is the size of the bitmap in bytes.
Remove this erroneous 'bmap_size' and use 'rcfw->cmdq_depth' directly in
'bnxt_qplib_disable_rcfw_channel()'. Otherwise some error messages may be
missing.
Other uses of 'cmdq_bitmap' already take into account 'rcfw->cmdq_depth'
directly.
Fixes: 1ac5a40479 ("RDMA/bnxt_re: Add bnxt_re RoCE driver")
Link: https://lore.kernel.org/r/47ed717c3070a1d0f53e7b4c768a4fd11caf365d.1636707421.git.christophe.jaillet@wanadoo.fr
Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr >
Acked-by: Selvin Xavier <selvin.xavier@broadcom.com >
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com >
2021-11-16 13:54:24 -04:00
Changcheng Deng
dd566d586f
RDMA/bnxt_re: Remove unneeded variable
...
Fix the following coccicheck review:
./drivers/infiniband/hw/bnxt_re/main.c: 896: 5-7: Unneeded variable
Remove unneeded variable used to store return value.
Link: https://lore.kernel.org/r/20211109113227.132596-1-deng.changcheng@zte.com.cn
Reported-by: Zeal Robot <zealci@zte.com.cn >
Signed-off-by: Changcheng Deng <deng.changcheng@zte.com.cn >
Reviewed-by: Devesh Sharma <devesh.s.sharma@oracle.com >
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com >
2021-11-16 13:54:24 -04:00
Kamal Heib
fc9d19e18a
RDMA/irdma: Use helper function to set GUIDs
...
Use the addrconf_addr_eui48() helper function to set the GUIDs for both
RoCE and iWARP modes, Also make sure the GUIDs are valid EUI-64
identifiers.
Link: https://lore.kernel.org/r/20211107212227.44610-1-kamalheib1@gmail.com
Signed-off-by: Kamal Heib <kamalheib1@gmail.com >
Reviewed-by: Shiraz Saleem <shiraz.saleem@intel.com >
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com >
2021-11-16 13:54:24 -04:00
Linus Torvalds
fa55b7dcdc
Linux 5.16-rc1
v5.16-rc1
2021-11-14 13:56:52 -08:00
Gustavo A. R. Silva
dee2b702bc
kconfig: Add support for -Wimplicit-fallthrough
...
Add Kconfig support for -Wimplicit-fallthrough for both GCC and Clang.
The compiler option is under configuration CC_IMPLICIT_FALLTHROUGH,
which is enabled by default.
Special thanks to Nathan Chancellor who fixed the Clang bug[1][2]. This
bugfix only appears in Clang 14.0.0, so older versions still contain
the bug and -Wimplicit-fallthrough won't be enabled for them, for now.
This concludes a long journey and now we are finally getting rid
of the unintentional fallthrough bug-class in the kernel, entirely. :)
Link: 9ed4a94d64 [1]
Link: https://bugs.llvm.org/show_bug.cgi?id=51094 [2]
Link: https://github.com/KSPP/linux/issues/115
Link: https://github.com/ClangBuiltLinux/linux/issues/236
Co-developed-by: Kees Cook <keescook@chromium.org >
Signed-off-by: Kees Cook <keescook@chromium.org >
Co-developed-by: Linus Torvalds <torvalds@linux-foundation.org >
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org >
Signed-off-by: Gustavo A. R. Silva <gustavoars@kernel.org >
Reviewed-by: Nathan Chancellor <nathan@kernel.org >
Tested-by: Nathan Chancellor <nathan@kernel.org >
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org >
2021-11-14 13:27:30 -08:00