rdma: fix buggy code that the compiler warns about

Get rid of this warning:

  drivers/infiniband/sw/rdmavt/cq.c: In function ‘rvt_cq_exit’:
  drivers/infiniband/sw/rdmavt/cq.c:542:2: warning: ‘worker’ may be used uninitialized in this function [-Wmaybe-uninitialized]
    kthread_destroy_worker(worker);
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

by fixing the function to actually work.

Fixes: 6efaf10f16 ("IB/rdmavt: Avoid queuing work into a destroyed cq kthread worker")
Cc: Petr Mladek <pmladek@suse.com>
Cc: Doug Ledford <dledford@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
Linus Torvalds 2016-12-15 12:18:42 -08:00
parent 4d5b57e05a
commit d3ea547853

View File

@ -532,7 +532,8 @@ void rvt_cq_exit(struct rvt_dev_info *rdi)
/* block future queuing from send_complete() */
spin_lock_irq(&rdi->n_cqs_lock);
if (!rdi->worker) {
worker = rdi->worker;
if (!worker) {
spin_unlock_irq(&rdi->n_cqs_lock);
return;
}