RDMA/rxe: Limit the number of calls to each tasklet
authorBob Pearson <rpearsonhpe@gmail.com>
Thu, 30 Jun 2022 19:04:25 +0000 (14:04 -0500)
committerJason Gunthorpe <jgg@nvidia.com>
Fri, 22 Jul 2022 20:43:00 +0000 (17:43 -0300)
commiteff6d998ca297cb0b2e53b032a56cf8e04dd8b17
treecc8a85354dd551e1a95eace723997161b5ae3a39
parent8bb143c53436754b5e939ed648430c71198bc71b
RDMA/rxe: Limit the number of calls to each tasklet

Limit the maximum number of calls to each tasklet from rxe_do_task()
before yielding the cpu. When the limit is reached reschedule the tasklet
and exit the calling loop. This patch prevents one tasklet from consuming
100% of a cpu core and causing a deadlock or soft lockup.

Link: https://lore.kernel.org/r/20220630190425.2251-9-rpearsonhpe@gmail.com
Signed-off-by: Bob Pearson <rpearsonhpe@gmail.com>
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com>
drivers/infiniband/sw/rxe/rxe_param.h
drivers/infiniband/sw/rxe/rxe_task.c