提交 fe6ceac8 编写于 作者: S Stefan Hajnoczi 提交者: Kevin Wolf

ahci: Fix cpu_physical_memory_unmap() argument ordering

The len and is_write arguments to cpu_physical_memory_unmap() were
swapped.  This patch changes calls to use the correct argument ordering.
Signed-off-by: NStefan Hajnoczi <stefanha@linux.vnet.ibm.com>
Signed-off-by: NKevin Wolf <kwolf@redhat.com>
上级 d7142456
......@@ -513,12 +513,12 @@ static void map_page(uint8_t **ptr, uint64_t addr, uint32_t wanted)
target_phys_addr_t len = wanted;
if (*ptr) {
cpu_physical_memory_unmap(*ptr, 1, len, len);
cpu_physical_memory_unmap(*ptr, len, 1, len);
}
*ptr = cpu_physical_memory_map(addr, &len, 1);
if (len < wanted) {
cpu_physical_memory_unmap(*ptr, 1, len, len);
cpu_physical_memory_unmap(*ptr, len, 1, len);
*ptr = NULL;
}
}
......@@ -956,7 +956,7 @@ static void ahci_write_fis_d2h(AHCIDevice *ad, uint8_t *cmd_fis)
ahci_trigger_irq(ad->hba, ad, PORT_IRQ_D2H_REG_FIS);
if (cmd_mapped) {
cpu_physical_memory_unmap(cmd_fis, 0, cmd_len, cmd_len);
cpu_physical_memory_unmap(cmd_fis, cmd_len, 0, cmd_len);
}
}
......@@ -1002,7 +1002,7 @@ static int ahci_populate_sglist(AHCIDevice *ad, QEMUSGList *sglist)
}
out:
cpu_physical_memory_unmap(prdt, 0, prdt_len, prdt_len);
cpu_physical_memory_unmap(prdt, prdt_len, 0, prdt_len);
return r;
}
......@@ -1228,7 +1228,7 @@ static int handle_cmd(AHCIState *s, int port, int slot)
}
out:
cpu_physical_memory_unmap(cmd_fis, 1, cmd_len, cmd_len);
cpu_physical_memory_unmap(cmd_fis, cmd_len, 1, cmd_len);
if (s->dev[port].port.ifs[0].status & (BUSY_STAT|DRQ_STAT)) {
/* async command, complete later */
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册