qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] [PATCH 20/67] ahci: clear aiocb in ncq_cb


From: John Snow
Subject: Re: [Qemu-devel] [PATCH 20/67] ahci: clear aiocb in ncq_cb
Date: Mon, 19 Dec 2016 18:07:17 -0500
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.5.1

Hi, some more considerations:


e7bd708ec85e40fd51569bb90c52d6613ffd8f45
atapi: classify read_cd as conditionally returning data

This fixes problems with certain operating systems being unable to read
from the CDROM.


99868af3d0a75cf6a515a9aa81bf0d7bcb39eadb
dma-helpers: explicitly pass alignment into DMA helpers

I believe this does fix MACIO for some platforms, but I'm not sure how
annoying it would be to backport due to the DMA alignment changes. Low
priority.


c47ee043dc2cc85da710e87524144a720598c096
block-backend: Always notify on blk_eject

This fixes a legitimate bug in some versions of libvirt.


ca44141d5fb801dd5903102acefd0f2d8e8bb6a1
ide: Fix memory leak in ide_register_restart_cb()

Not important, but not risky or hard to backport either. Skippable.


9da82227caa74fb6fbea224dad91fe5b7cc115a5
ide: fix DMA register transitions

This is only theoretical. Safely skipped.


e305a16510afa74eec20390479e349402e55ef4c portio: keep references on portio

Doesn't look important as it doesn't actually FIX a leak.


There were some fixes for Transactional Block Jobs as well in the 2.8
window, but as we still haven't quite finished nailing down incremental
backups, it may not be too important to backport to 2.7 -- I don't think
anyone is using this yet.

The series in question is:
https://lists.nongnu.org/archive/html/qemu-devel/2016-11/msg01392.html

On 12/14/2016 07:44 PM, Michael Roth wrote:
> From: John Snow <address@hidden>
> 
> Similar to existing fixes for IDE (87ac25fd) and ATAPI (7f951b2d), the
> AIOCB must be cleared in the callback. Otherwise, we may accidentally
> try to reset a dangling pointer in bdrv_aio_cancel() from a port reset.
> 
> Signed-off-by: John Snow <address@hidden>
> Reviewed-by: Stefan Hajnoczi <address@hidden>
> Message-id: address@hidden
> Signed-off-by: John Snow <address@hidden>
> (cherry picked from commit df403bc58859c893ebd0accda07678e84d15dc5d)
> Signed-off-by: Michael Roth <address@hidden>
> ---
>  hw/ide/ahci.c | 1 +
>  1 file changed, 1 insertion(+)
> 
> diff --git a/hw/ide/ahci.c b/hw/ide/ahci.c
> index f3438ad..63ead21 100644
> --- a/hw/ide/ahci.c
> +++ b/hw/ide/ahci.c
> @@ -948,6 +948,7 @@ static void ncq_cb(void *opaque, int ret)
>      NCQTransferState *ncq_tfs = (NCQTransferState *)opaque;
>      IDEState *ide_state = &ncq_tfs->drive->port.ifs[0];
>  
> +    ncq_tfs->aiocb = NULL;
>      if (ret == -ECANCELED) {
>          return;
>      }
> 

-- 
—js



reply via email to

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