From 0c8631deeadc9f27372f1a8905107de8f4fd6c62 Mon Sep 17 00:00:00 2001 From: Dan Williams Date: Thu, 17 Jul 2008 17:59:56 -0700 Subject: [PATCH] --- yaml --- r: 105073 b: refs/heads/master c: 5eb907aaaf7a316a0097ff9f8c21bf9fc468a1f1 h: refs/heads/master i: 105071: ab9c3406cbe4fd2ba71adbb3b8d97063af785a08 v: v3 --- [refs] | 2 +- trunk/drivers/dma/iop-adma.c | 11 ++++++++++- 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/[refs] b/[refs] index f809e35517e3..ad6225d287df 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: c7141d005a19d2a0a316b3bf9c170d3bedf07bfd +refs/heads/master: 5eb907aaaf7a316a0097ff9f8c21bf9fc468a1f1 diff --git a/trunk/drivers/dma/iop-adma.c b/trunk/drivers/dma/iop-adma.c index 8acbc3ab0b92..85bfeba4d85e 100644 --- a/trunk/drivers/dma/iop-adma.c +++ b/trunk/drivers/dma/iop-adma.c @@ -450,7 +450,16 @@ iop_adma_tx_submit(struct dma_async_tx_descriptor *tx) static void iop_chan_start_null_memcpy(struct iop_adma_chan *iop_chan); static void iop_chan_start_null_xor(struct iop_adma_chan *iop_chan); -/* returns the number of allocated descriptors */ +/** + * iop_adma_alloc_chan_resources - returns the number of allocated descriptors + * @chan - allocate descriptor resources for this channel + * @client - current client requesting the channel be ready for requests + * + * Note: We keep the slots for 1 operation on iop_chan->chain at all times. To + * avoid deadlock, via async_xor, num_descs_in_pool must at a minimum be + * greater than 2x the number slots needed to satisfy a device->max_xor + * request. + * */ static int iop_adma_alloc_chan_resources(struct dma_chan *chan, struct dma_client *client) {