]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
RDMA/rxe: Fix incorrect TASKLET_STATE_SCHED check in rxe_task.c
authorBob Pearson <rpearsonhpe@gmail.com>
Wed, 29 Mar 2023 19:33:09 +0000 (14:33 -0500)
committerJason Gunthorpe <jgg@nvidia.com>
Wed, 12 Apr 2023 16:11:51 +0000 (13:11 -0300)
In a previous patch TASKLET_STATE_SCHED was used as a mask but it is a bit
position instead. Add the missing shift.

Link: https://lore.kernel.org/r/20230329193308.7489-1-rpearsonhpe@gmail.com
Reported-by: Dan Carpenter <error27@gmail.com>
Link: https://lore.kernel.org/linux-rdma/8a054b78-6d50-4bc6-8d8a-83f85fbdb82f@kili.mountain/
Fixes: d94671632572 ("RDMA/rxe: Rewrite rxe_task.c")
Signed-off-by: Bob Pearson <rpearsonhpe@gmail.com>
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com>
drivers/infiniband/sw/rxe/rxe_task.c

index fea9a517c8d928c523a97b49304c8ad1d85d5295..fb9a6bc8e62047e7dff8b93ca146fb9d0d78f1b4 100644 (file)
@@ -21,7 +21,7 @@ static bool __reserve_if_idle(struct rxe_task *task)
 {
        WARN_ON(rxe_read(task->qp) <= 0);
 
-       if (task->tasklet.state & TASKLET_STATE_SCHED)
+       if (task->tasklet.state & BIT(TASKLET_STATE_SCHED))
                return false;
 
        if (task->state == TASK_STATE_IDLE) {
@@ -46,7 +46,7 @@ static bool __reserve_if_idle(struct rxe_task *task)
  */
 static bool __is_done(struct rxe_task *task)
 {
-       if (task->tasklet.state & TASKLET_STATE_SCHED)
+       if (task->tasklet.state & BIT(TASKLET_STATE_SCHED))
                return false;
 
        if (task->state == TASK_STATE_IDLE ||