qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PATCH 2/3] Make paio subsystem use threadlets


From: Stefan Hajnoczi
Subject: Re: [Qemu-devel] [PATCH 2/3] Make paio subsystem use threadlets
Date: Wed, 27 Oct 2010 10:17:48 +0100

On Tue, Oct 26, 2010 at 3:14 PM, Arun R Bharadwaj
<address@hidden> wrote:
> @@ -536,14 +442,15 @@ static void paio_cancel(BlockDriverAIOCB *blockacb)
>     struct qemu_paiocb *acb = (struct qemu_paiocb *)blockacb;
>     int active = 0;
>
> -    mutex_lock(&lock);
>     if (!acb->active) {
> -        QTAILQ_REMOVE(&request_list, acb, node);
> -        acb->ret = -ECANCELED;
> +        if (!deque_threadletwork(&acb->work)) {
> +            acb->ret = -ECANCELED;
> +         } else {
> +            active = 1;
> +         }
>     } else if (acb->ret == -EINPROGRESS) {
>         active = 1;
>     }
> -    mutex_unlock(&lock);
>
>     if (active) {
>         /* fail safe: if the aio could not be canceled, we wait for

The paio_cancel() infinite loop is still there in this patch.

http://www.mail-archive.com/address@hidden/msg44766.html

Stefan



reply via email to

[Prev in Thread] Current Thread [Next in Thread]