qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] [Qemu-block] [PATCH 06/16] ahci: record ncq failures


From: Stefan Hajnoczi
Subject: Re: [Qemu-devel] [Qemu-block] [PATCH 06/16] ahci: record ncq failures
Date: Mon, 29 Jun 2015 15:24:46 +0100
User-agent: Mutt/1.5.23 (2014-03-12)

On Fri, Jun 26, 2015 at 02:27:39PM -0400, John Snow wrote:
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA256
> 
> 
> 
> On 06/26/2015 11:35 AM, Stefan Hajnoczi wrote:
> > On Mon, Jun 22, 2015 at 08:21:05PM -0400, John Snow wrote:
> >> Handle NCQ failures for cases where we want to halt the VM on IO
> >> errors.
> >> 
> >> Signed-off-by: John Snow <address@hidden> --- hw/ide/ahci.c
> >> | 17 +++++++++++++++-- hw/ide/ahci.h     |  1 + hw/ide/internal.h
> >> |  1 + 3 files changed, 17 insertions(+), 2 deletions(-)
> >> 
> >> diff --git a/hw/ide/ahci.c b/hw/ide/ahci.c index 71b5085..a838317
> >> 100644 --- a/hw/ide/ahci.c +++ b/hw/ide/ahci.c @@ -959,13 +959,25
> >> @@ static void ncq_cb(void *opaque, int ret) return; }
> >> 
> >> +    ncq_tfs->halt = false;
> > 
> > Why does halt need to be cleared here?
> > 
> 
> Might make more sense to clear it just on the beginning of every
> command, in execute().
> 
> There's no strong reason here other than "If there's an error and it
> should be set, it'll get reset again pretty soon." It's just a default
> state.
> 
> I could move it from process to execute.

By the way, does ->halt need to be cleared in ahci_reset_port()?

I'm thinking of a scenario where requests have failed and the port is
reset.  We should not try to reissue those commands after reset.

Attachment: pgpto31w9y5TU.pgp
Description: PGP signature


reply via email to

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