bfs: bfad_worker cleanup
authorJiri Slaby <jslaby@suse.cz>
Thu, 16 Apr 2015 19:48:29 +0000 (12:48 -0700)
committerLinus Torvalds <torvalds@linux-foundation.org>
Fri, 17 Apr 2015 13:04:09 +0000 (09:04 -0400)
This kthread is not loop at all due to break at the end of the loop.  Make
that function linear, with no while loop.

And remove an unnecessary cast.

Signed-off-by: Jiri Slaby <jslaby@suse.cz>
Cc: Anil Gurumurthy <anil.gurumurthy@qlogic.com>
Cc: James Bottomley <James.Bottomley@HansenPartnership.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
drivers/scsi/bfa/bfad.c

index e90a374..cc3b9d3 100644 (file)
@@ -1079,22 +1079,18 @@ bfad_start_ops(struct bfad_s *bfad) {
 int
 bfad_worker(void *ptr)
 {
-       struct bfad_s *bfad;
-       unsigned long   flags;
-
-       bfad = (struct bfad_s *)ptr;
-
-       while (!kthread_should_stop()) {
+       struct bfad_s *bfad = ptr;
+       unsigned long flags;
 
-               /* Send event BFAD_E_INIT_SUCCESS */
-               bfa_sm_send_event(bfad, BFAD_E_INIT_SUCCESS);
+       if (kthread_should_stop())
+               return 0;
 
-               spin_lock_irqsave(&bfad->bfad_lock, flags);
-               bfad->bfad_tsk = NULL;
-               spin_unlock_irqrestore(&bfad->bfad_lock, flags);
+       /* Send event BFAD_E_INIT_SUCCESS */
+       bfa_sm_send_event(bfad, BFAD_E_INIT_SUCCESS);
 
-               break;
-       }
+       spin_lock_irqsave(&bfad->bfad_lock, flags);
+       bfad->bfad_tsk = NULL;
+       spin_unlock_irqrestore(&bfad->bfad_lock, flags);
 
        return 0;
 }