[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH 0/5] Fix aio cancellation with synthetic aiocbs
From: |
Avi Kivity |
Subject: |
[Qemu-devel] [PATCH 0/5] Fix aio cancellation with synthetic aiocbs |
Date: |
Mon, 16 Mar 2009 15:11:06 +0200 |
The block layer will currently break with synthetic aiocbs, since it will
forward the cancellation request to the block format driver, which did not
generate the synthetic aiocbs.
This patchset fixes the problem by associating a cancellation method
with synthetic aiocbs through a aio pool data structure. This structure
contains information common to a class of aiocbs - size, cancellation method,
and free list.
Avi Kivity (5):
Refactor aio callback allocation to use an aiocb pool
Convert vectored aio emulation to use a dedicated pool
Implement cancellation method for dma async I/O
Use vectored aiocb storage to store vector translation state
Move block dma helpers aiocb to store dma state
block.c | 79 +++++++++++++++++++++++++++++++++++---------------------
block_int.h | 14 +++++++++-
dma-helpers.c | 44 +++++++++++++++++++++----------
dma.h | 1 +
vl.c | 1 +
5 files changed, 94 insertions(+), 45 deletions(-)