[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH] block: Fix multiwrite error handling
From: |
Aurelien Jarno |
Subject: |
Re: [Qemu-devel] [PATCH] block: Fix multiwrite error handling |
Date: |
Sat, 10 Apr 2010 00:14:50 +0200 |
User-agent: |
Mutt/1.5.20 (2009-06-14) |
On Thu, Apr 01, 2010 at 10:48:44PM +0200, Kevin Wolf wrote:
> When two requests of the same multiwrite batch fail, the callback of all
> requests in that batch were called twice. This could have any kind of nasty
> effects, in my case it lead to use after free and eventually a segfault.
>
> Signed-off-by: Kevin Wolf <address@hidden>
Thanks, applied.
> ---
> block.c | 2 +-
> 1 files changed, 1 insertions(+), 1 deletions(-)
>
> diff --git a/block.c b/block.c
> index 31610af..1c36e91 100644
> --- a/block.c
> +++ b/block.c
> @@ -1734,7 +1734,7 @@ static void multiwrite_cb(void *opaque, int ret)
> {
> MultiwriteCB *mcb = opaque;
>
> - if (ret < 0) {
> + if (ret < 0 && !mcb->error) {
> mcb->error = ret;
> multiwrite_user_cb(mcb);
> }
> --
> 1.6.6.1
>
>
>
>
--
Aurelien Jarno GPG: 1024D/F1BCDB73
address@hidden http://www.aurel32.net