diff options
author | Dan Williams <dan.j.williams@intel.com> | 2008-07-17 17:59:55 -0700 |
---|---|---|
committer | Dan Williams <dan.j.williams@intel.com> | 2008-07-17 17:59:55 -0700 |
commit | 669ab0b210f9bd15d94d4d6a49ae13366a85e4da (patch) | |
tree | ead561418e94def95c4d4b4512ae3c9a7888febe /crypto/xcbc.c | |
parent | 1e55db2d6bdef92abc981b68673564e63c80da4d (diff) | |
download | linux-669ab0b210f9bd15d94d4d6a49ae13366a85e4da.tar.gz linux-669ab0b210f9bd15d94d4d6a49ae13366a85e4da.tar.bz2 linux-669ab0b210f9bd15d94d4d6a49ae13366a85e4da.zip |
async_tx: fix handling of the "out of descriptor" condition in async_xor
Ensure forward progress is made when a dmaengine driver is unable to
allocate an xor descriptor by breaking the dependency chain with
async_tx_quisce() and issue any pending descriptors.
Tested with iop-adma by setting device->max_xor = 2 to force multiple
calls to device_prep_dma_xor for each call to async_xor and limiting the
descriptor slot pool to 5. Discovered that the minimum descriptor pool
size for iop-adma is 2 * iop_chan_xor_slot_cnt(device->max_xor) + 1.
Signed-off-by: Dan Williams <dan.j.williams@intel.com>
Diffstat (limited to 'crypto/xcbc.c')
0 files changed, 0 insertions, 0 deletions