[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-block] [PATCH 12/16] ahci: ncq migration
From: |
Stefan Hajnoczi |
Subject: |
Re: [Qemu-block] [PATCH 12/16] ahci: ncq migration |
Date: |
Fri, 26 Jun 2015 16:48:23 +0100 |
User-agent: |
Mutt/1.5.23 (2014-03-12) |
On Mon, Jun 22, 2015 at 08:21:11PM -0400, John Snow wrote:
> @@ -1555,6 +1573,35 @@ static int ahci_state_post_load(void *opaque, int
> version_id)
> return -1;
> }
>
> + for (j = 0; j < AHCI_MAX_CMDS; j++) {
> + ncq_tfs = &ad->ncq_tfs[j];
> + ncq_tfs->drive = ad;
> +
> + if (ncq_tfs->used != ncq_tfs->halt) {
> + return -1;
> + }
> + if (!ncq_tfs->halt) {
> + continue;
> + }
> + if (!is_ncq(ncq_tfs->cmd)) {
> + return -1;
> + }
> + if (ncq_tfs->slot != ncq_tfs->tag) {
> + return -1;
> + }
> + if (ncq_tfs->slot > AHCI_MAX_CMDS) {
> + return -1;
> + }
> + ncq_tfs->cmdh = &((AHCICmdHdr *)ad->lst)[ncq_tfs->slot];
Is there a guarantee that ->lst has been mapped? Maybe pr->cmd &
PORT_CMD_START was 0.
We need to check that the HBA is in a valid state for NCQ processing
before attempting this.
pgpyKnWPeRX7b.pgp
Description: PGP signature
- Re: [Qemu-block] [PATCH 01/16] ide: add limit to .prepare_buf(), (continued)
[Qemu-block] [PATCH 10/16] qtest/ahci: halted NCQ test, John Snow, 2015/06/22
[Qemu-block] [PATCH 13/16] ahci: add get_cmd_header helper, John Snow, 2015/06/22
[Qemu-block] [PATCH 11/16] ahci: add cmd header to ncq transfer state, John Snow, 2015/06/22
[Qemu-block] [PATCH 12/16] ahci: ncq migration, John Snow, 2015/06/22
- Re: [Qemu-block] [PATCH 12/16] ahci: ncq migration,
Stefan Hajnoczi <=
[Qemu-block] [PATCH 14/16] ahci: Do not map cmd_fis to generate response, John Snow, 2015/06/22
[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