[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-block] [Qemu-devel] [PATCH 16/16] ahci: fix sdb fis semantics
From: |
Stefan Hajnoczi |
Subject: |
Re: [Qemu-block] [Qemu-devel] [PATCH 16/16] ahci: fix sdb fis semantics |
Date: |
Mon, 29 Jun 2015 15:52:35 +0100 |
User-agent: |
Mutt/1.5.23 (2014-03-12) |
On Fri, Jun 26, 2015 at 01:36:23PM -0400, John Snow wrote:
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA256
>
>
>
> On 06/26/2015 12:11 PM, Stefan Hajnoczi wrote:
> > On Mon, Jun 22, 2015 at 08:21:15PM -0400, John Snow wrote:
> >> @@ -682,19 +680,22 @@ static void ahci_write_fis_sdb(AHCIState
> >> *s, int port, uint32_t finished)
> >>
> >> sdb_fis->type = SATA_FIS_TYPE_SDB; /* Interrupt pending &
> >> Notification bit */ - sdb_fis->flags =
> >> (ad->hba->control_regs.irqstatus ? (1 << 6) : 0); +
> >> sdb_fis->flags = 0x40; /* Interrupt bit, always 1 for NCQ */
> > ...
> >> - ahci_trigger_irq(s, ad, PORT_IRQ_SDB_FIS); + if
> >> (sdb_fis->flags & 0x40) { + ahci_trigger_irq(s, ad,
> >> PORT_IRQ_SDB_FIS); + }
> >
> > This if statement is always true.
> >
>
> Yes. I did that on purpose. Maybe that was too weird.
>
> The idea was to emphasize that the IRQ is definitely only triggered
> *IF* the interrupt bit is set. It just so happens that we currently
> always set it.
>
> The generation and trigger mechanics are supposed to be separate, but
> we currently have no use case for them being separate (because we are
> an omniscient HBA-HDD amalgamation), so they're mushed together here.
>
> This is kind of like a documentation "NB."
>
> I can replace it with:
>
> /* Trigger IRQ if interrupt bit is set, which currently it always is: */
> ahci_trigger_irq(...);
Good idea, that makes it clear.
pgp3kGUm6cURS.pgp
Description: PGP signature
- Re: [Qemu-block] [PATCH 12/16] ahci: ncq migration, (continued)
[Qemu-block] [PATCH 15/16] qtest/ahci: halted ncq migration test, John Snow, 2015/06/22
[Qemu-block] [PATCH 16/16] ahci: fix sdb fis semantics, John Snow, 2015/06/22
Re: [Qemu-block] [PATCH 00/16] ahci: ncq cleanup, part 2, Stefan Hajnoczi, 2015/06/26