From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([208.118.235.92]:34165) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1T1BlL-0004Jz-NG for qemu-devel@nongnu.org; Tue, 14 Aug 2012 03:42:04 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1T1BlJ-0006gU-IX for qemu-devel@nongnu.org; Tue, 14 Aug 2012 03:42:03 -0400 Received: from gate.crashing.org ([63.228.1.57]:48998) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1T1BlJ-0006gC-9t for qemu-devel@nongnu.org; Tue, 14 Aug 2012 03:42:01 -0400 Message-ID: <1344930107.2481.18.camel@pasglop> From: Benjamin Herrenschmidt Date: Tue, 14 Aug 2012 17:41:47 +1000 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 7bit Mime-Version: 1.0 Subject: [Qemu-devel] [PATCH] dma: Fix stupid typo/thinko List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org Cc: Paul Mackerras , anthony@codemonkey.ws, David Gibson Hi hard a brain fart when coding that function, it will fail to "set" the memory beyond the first 512 bytes. This is in turn causing guest crashes in ibmveth (spapr_llan.c on the qemu side) due to the receive queue not being properly initialized. Signed-off-by: Benjamin Herrenschmidt --- Anthony, I believe this could/should go in ASAP :-) diff --git a/dma-helpers.c b/dma-helpers.c index 35cb500..53e47c6 100644 --- a/dma-helpers.c +++ b/dma-helpers.c @@ -24,8 +24,8 @@ static void do_dma_memory_set(dma_addr_t addr, uint8_t c, dma_addr_t len) while (len > 0) { l = len < FILLBUF_SIZE ? len : FILLBUF_SIZE; cpu_physical_memory_rw(addr, fillbuf, l, true); - len -= len; - addr += len; + len -= l; + addr += l; } }