Browse Source

iop_adma: directly reclaim descriptors on allocation failure

Force callers that trigger an "out of descriptors" condition to run the
cleanup loop directly.  Alleviates the requirement to have soft-irqs
enabled when polling for a descriptor in async_xor.

Signed-off-by: Dan Williams <dan.j.williams@intel.com>
Dan Williams 17 năm trước cách đây
mục cha
commit
c7141d005a
1 tập tin đã thay đổi với 2 bổ sung2 xóa
  1. 2 2
      drivers/dma/iop-adma.c

+ 2 - 2
drivers/dma/iop-adma.c

@@ -373,8 +373,8 @@ retry:
 	if (!retry++)
 		goto retry;
 
-	/* try to free some slots if the allocation fails */
-	tasklet_schedule(&iop_chan->irq_tasklet);
+	/* perform direct reclaim if the allocation fails */
+	__iop_adma_slot_cleanup(iop_chan);
 
 	return NULL;
 }