]> git.karo-electronics.de Git - karo-tx-linux.git/commit
IB/hfi1: Fix PIO wakeup timing hole
authorMike Marciniszyn <mike.marciniszyn@intel.com>
Mon, 7 Mar 2016 19:35:30 +0000 (11:35 -0800)
committerDoug Ledford <dledford@redhat.com>
Thu, 17 Mar 2016 19:55:20 +0000 (15:55 -0400)
commit60df29581f67e06791a176641c774515ec1634e5
tree06c4e9587bcdd2ce69d3efd7696b4ac30d83e71f
parent5326dfbf005ca8589d709209a81d145c5b87b23d
IB/hfi1: Fix PIO wakeup timing hole

There is a timing hole if there had been greater than
PIO_WAIT_BATCH_SIZE waiters.  This code will dispatch the first
batch but leave the others in the queue.   If the restarted waiters
don't in turn wait on a buffer, there is a hang.

Fix by forcing a return when the QP queue is non-empty.

Reviewed-by: Vennila Megavannan <vennila.megavannan@intel.com>
Signed-off-by: Mike Marciniszyn <mike.marciniszyn@intel.com>
Signed-off-by: Doug Ledford <dledford@redhat.com>
drivers/staging/rdma/hfi1/pio.c