From patchwork Thu Dec 23 08:53:16 2010 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Stefan Hajnoczi X-Patchwork-Id: 76482 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from lists.gnu.org (lists.gnu.org [199.232.76.165]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (Client did not present a certificate) by ozlabs.org (Postfix) with ESMTPS id A5441B70AF for ; Thu, 23 Dec 2010 19:55:51 +1100 (EST) Received: from localhost ([127.0.0.1]:53259 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1PVgxg-0006ft-DC for incoming@patchwork.ozlabs.org; Thu, 23 Dec 2010 03:55:48 -0500 Received: from [140.186.70.92] (port=45040 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1PVgvf-0005ue-N7 for qemu-devel@nongnu.org; Thu, 23 Dec 2010 03:53:44 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1PVgve-0001Mr-Da for qemu-devel@nongnu.org; Thu, 23 Dec 2010 03:53:43 -0500 Received: from mtagate7.uk.ibm.com ([194.196.100.167]:38819) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1PVgve-0001GH-5X for qemu-devel@nongnu.org; Thu, 23 Dec 2010 03:53:42 -0500 Received: from d06nrmr1707.portsmouth.uk.ibm.com (d06nrmr1707.portsmouth.uk.ibm.com [9.149.39.225]) by mtagate7.uk.ibm.com (8.13.1/8.13.1) with ESMTP id oBN8rMSQ016204 for ; Thu, 23 Dec 2010 08:53:22 GMT Received: from d06av03.portsmouth.uk.ibm.com (d06av03.portsmouth.uk.ibm.com [9.149.37.213]) by d06nrmr1707.portsmouth.uk.ibm.com (8.13.8/8.13.8/NCO v10.0) with ESMTP id oBN8rO5t3338334 for ; Thu, 23 Dec 2010 08:53:24 GMT Received: from d06av03.portsmouth.uk.ibm.com (localhost.localdomain [127.0.0.1]) by d06av03.portsmouth.uk.ibm.com (8.14.4/8.13.1/NCO v10.0 AVout) with ESMTP id oBN8rLk6014408 for ; Thu, 23 Dec 2010 01:53:22 -0700 Received: from stefanha-thinkpad.ibm.com (sig-9-145-145-169.de.ibm.com [9.145.145.169]) by d06av03.portsmouth.uk.ibm.com (8.14.4/8.13.1/NCO v10.0 AVin) with ESMTP id oBN8rIpw014307; Thu, 23 Dec 2010 01:53:19 -0700 From: Stefan Hajnoczi To: Date: Thu, 23 Dec 2010 08:53:16 +0000 Message-Id: <1293094396-764-1-git-send-email-stefanha@linux.vnet.ibm.com> X-Mailer: git-send-email 1.7.2.3 X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6, seldom 2.4 (older, 4) Cc: Alexander Graf , Stefan Hajnoczi Subject: [Qemu-devel] [PATCH] ahci: Fix cpu_physical_memory_unmap() argument ordering X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org Errors-To: qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org 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: Stefan Hajnoczi Acked-by: Alexander Graf --- This patch applies to agraf's ahci tree at git://repo.or.cz/qemu/ahci.git. hw/ide/ahci.c | 16 ++++++++-------- 1 files changed, 8 insertions(+), 8 deletions(-) diff --git a/hw/ide/ahci.c b/hw/ide/ahci.c index 4c920da..f618f16 100644 --- a/hw/ide/ahci.c +++ b/hw/ide/ahci.c @@ -175,12 +175,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; } } @@ -639,7 +639,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); } } @@ -650,8 +650,8 @@ static int ahci_iov_destroy(AHCIDevice *ad, QEMUIOVector *qiov, int is_write) for (i = 0; i < qiov->niov; i++) { /* flags_size is zero-based */ - cpu_physical_memory_unmap(iov[i].iov_base, !is_write, - iov[i].iov_len, iov[i].iov_len); + cpu_physical_memory_unmap(iov[i].iov_base, iov[i].iov_len, + !is_write, iov[i].iov_len); } return 0; @@ -720,7 +720,7 @@ static int ahci_populate_iov(AHCIDevice *ad, NCQTransferState *ncq_tfs, } out: - cpu_physical_memory_unmap(prdt, 0, prdt_len, prdt_len); + cpu_physical_memory_unmap(prdt, prdt_len, 0, prdt_len); return r; } @@ -766,7 +766,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; } @@ -995,7 +995,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 */