From patchwork Wed Jul 20 05:02:53 2016 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andrey Smirnov X-Patchwork-Id: 9238887 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork.web.codeaurora.org (Postfix) with ESMTP id 248EC60867 for ; Wed, 20 Jul 2016 05:04:06 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 199E226220 for ; Wed, 20 Jul 2016 05:04:06 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 0E1CB27A98; Wed, 20 Jul 2016 05:04:06 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-6.8 required=2.0 tests=BAYES_00, DKIM_ADSP_CUSTOM_MED, DKIM_SIGNED,FREEMAIL_FROM,RCVD_IN_DNSWL_HI,T_DKIM_INVALID autolearn=unavailable version=3.3.1 Received: from lists.gnu.org (lists.gnu.org [208.118.235.17]) (using TLSv1 with cipher AES256-SHA (256/256 bits)) (No client certificate requested) by mail.wl.linuxfoundation.org (Postfix) with ESMTPS id 69B87268AE for ; Wed, 20 Jul 2016 05:04:05 +0000 (UTC) Received: from localhost ([::1]:60569 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bPjfu-0007w2-My for patchwork-qemu-devel@patchwork.kernel.org; Wed, 20 Jul 2016 01:04:02 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:42485) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bPjfH-0007uz-H3 for qemu-devel@nongnu.org; Wed, 20 Jul 2016 01:03:24 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1bPjfG-0004e7-7G for qemu-devel@nongnu.org; Wed, 20 Jul 2016 01:03:23 -0400 Received: from mail-pa0-x243.google.com ([2607:f8b0:400e:c03::243]:34078) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bPjfF-0004dr-Tf; Wed, 20 Jul 2016 01:03:22 -0400 Received: by mail-pa0-x243.google.com with SMTP id hh10so2594828pac.1; Tue, 19 Jul 2016 22:03:21 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=from:to:cc:subject:date:message-id:in-reply-to:references; bh=A0PamD8iU4GDuPW8RjqSeMKaae0agE2Ey+8YJRKfUnQ=; b=gYy5UqIDmxur6wrZVutqMIya0o6PYHe/6YUWlESupQd2A0pyq2+bB2o5KJIg/rwDuQ GgGfUOW3Pij1TpTMZj7zyKEed+N72MMyu2DtljGuAWN4uOvACtgRWDSFd8BRjtVaOUgC P503/bqfUv53BbAb2ClqObu9B0lFbENtBJemz8IGVMEwLd4KeQzTxZsonP5Hj8dmRmFM tyok5oHLqXb8pYqQqjQUsV/n5bBohhy9yT+4ZLQrnMJVPM1RRJ1iI5W7hI/ms5X3Andc y443JbojUOtD/ENIOGKM5UWNcQn3QvLebohpkysJ6Lfv5FZEI8lRB9aakad2iG2zSenQ Wv8w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references; bh=A0PamD8iU4GDuPW8RjqSeMKaae0agE2Ey+8YJRKfUnQ=; b=dH5njGK5kwfRTKTSMkyDXIXJA1f8vbalD9RrBLLXY5WUNZtiIzMvrgEJzwXsv57Ok2 PFgVRpR58HlEDztzSy5XDcuHB/FI2EKWOhShiiEKdJ+ONNFMGNxUgL/2xBQZ+f4/Ps5L vB1Eamp2UzDEBjKOCOl6bCsCjbZyV8GAL4Y7ZHMqVE+WNZdXxJYLO9TiSH9vjhp/OzaO ZKSg91mQd+v/Yl3obaiZ53e56OcpLMMbCcA2+I+gYjPHa663YHg5ZlBQk9s1Fb0ug1s8 qztnJImNbQBKTOCAAXkItIukzbZeD7XDQQi0+L8dgwfzL4B9/SPcj3lXmJtyhh8PTAFh ZQtQ== X-Gm-Message-State: ALyK8tJ5CDcKK4xOxaKLV8JXu0WQ0nNCCH64icVCBXoXk2IWbYNC8BJoEIg2403l/ttXzA== X-Received: by 10.66.242.166 with SMTP id wr6mr71774855pac.147.1468991000740; Tue, 19 Jul 2016 22:03:20 -0700 (PDT) Received: from squirtle.localdomain.localdomain (c-73-225-163-254.hsd1.wa.comcast.net. [73.225.163.254]) by smtp.gmail.com with ESMTPSA id c66sm1031757pfd.24.2016.07.19.22.03.19 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Tue, 19 Jul 2016 22:03:20 -0700 (PDT) From: Andrey Smirnov To: qemu-devel@nongnu.org Date: Tue, 19 Jul 2016 22:02:53 -0700 Message-Id: <1468990980-4598-4-git-send-email-andrew.smirnov@gmail.com> X-Mailer: git-send-email 2.5.5 In-Reply-To: <1468990980-4598-1-git-send-email-andrew.smirnov@gmail.com> References: <1468990980-4598-1-git-send-email-andrew.smirnov@gmail.com> X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 2607:f8b0:400e:c03::243 Subject: [Qemu-devel] [PATCH v3 03/10] Change signature of address_space_write() to avoid casting X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Peter Maydell , kvm@vger.kernel.org, Andrey Smirnov , qemu-arm@nongnu.org, qemu-ppc@nongnu.org, David Gibson Errors-To: qemu-devel-bounces+patchwork-qemu-devel=patchwork.kernel.org@nongnu.org Sender: "Qemu-devel" X-Virus-Scanned: ClamAV using ClamSMTP Change signature of address_space_write() to expectet void * as a buffer instead of uint8_t * to avoid forcing the caller of the function to do a type cast. Reviewed-by: David Gibson Signed-off-by: Andrey Smirnov --- exec.c | 10 +++++----- hw/net/dp8393x.c | 10 +++++----- hw/virtio/virtio.c | 2 +- include/exec/memory.h | 2 +- 4 files changed, 12 insertions(+), 12 deletions(-) diff --git a/exec.c b/exec.c index 76d55ed..44cd424 100644 --- a/exec.c +++ b/exec.c @@ -2621,7 +2621,7 @@ static MemTxResult address_space_write_continue(AddressSpace *as, hwaddr addr, } MemTxResult address_space_write(AddressSpace *as, hwaddr addr, MemTxAttrs attrs, - const uint8_t *buf, int len) + const void *buf, int len) { hwaddr l; hwaddr addr1; @@ -2734,7 +2734,7 @@ MemTxResult address_space_rw(AddressSpace *as, hwaddr addr, MemTxAttrs attrs, uint8_t *buf, int len, bool is_write) { if (is_write) { - return address_space_write(as, addr, attrs, (uint8_t *)buf, len); + return address_space_write(as, addr, attrs, buf, len); } else { return address_space_read(as, addr, attrs, buf, len); } @@ -3582,7 +3582,7 @@ void address_space_stq(AddressSpace *as, hwaddr addr, uint64_t val, { MemTxResult r; val = tswap64(val); - r = address_space_write(as, addr, attrs, (void *) &val, 8); + r = address_space_write(as, addr, attrs, &val, 8); if (result) { *result = r; } @@ -3593,7 +3593,7 @@ void address_space_stq_le(AddressSpace *as, hwaddr addr, uint64_t val, { MemTxResult r; val = cpu_to_le64(val); - r = address_space_write(as, addr, attrs, (void *) &val, 8); + r = address_space_write(as, addr, attrs, &val, 8); if (result) { *result = r; } @@ -3603,7 +3603,7 @@ void address_space_stq_be(AddressSpace *as, hwaddr addr, uint64_t val, { MemTxResult r; val = cpu_to_be64(val); - r = address_space_write(as, addr, attrs, (void *) &val, 8); + r = address_space_write(as, addr, attrs, &val, 8); if (result) { *result = r; } diff --git a/hw/net/dp8393x.c b/hw/net/dp8393x.c index b8b33ee..e5712a2 100644 --- a/hw/net/dp8393x.c +++ b/hw/net/dp8393x.c @@ -431,7 +431,7 @@ static void dp8393x_do_transmit_packets(dp8393xState *s) size = sizeof(uint16_t) * width; address_space_write(&s->as, (s->regs[SONIC_UTDA] << 16) | s->regs[SONIC_TTDA], - MEMTXATTRS_UNSPECIFIED, (uint8_t *)data, size); + MEMTXATTRS_UNSPECIFIED, data, size); if (!(s->regs[SONIC_CR] & SONIC_CR_HTX)) { /* Read footer of packet */ @@ -722,10 +722,10 @@ static ssize_t dp8393x_receive(NetClientState *nc, const uint8_t * buf, DPRINTF("Receive packet at %08x\n", (s->regs[SONIC_CRBA1] << 16) | s->regs[SONIC_CRBA0]); address = (s->regs[SONIC_CRBA1] << 16) | s->regs[SONIC_CRBA0]; address_space_write(&s->as, address, - MEMTXATTRS_UNSPECIFIED, (uint8_t *)buf, rx_len); + MEMTXATTRS_UNSPECIFIED, buf, rx_len); address += rx_len; address_space_write(&s->as, address, - MEMTXATTRS_UNSPECIFIED, (uint8_t *)&checksum, 4); + MEMTXATTRS_UNSPECIFIED, &checksum, 4); rx_len += 4; s->regs[SONIC_CRBA1] = address >> 16; s->regs[SONIC_CRBA0] = address & 0xffff; @@ -756,7 +756,7 @@ static ssize_t dp8393x_receive(NetClientState *nc, const uint8_t * buf, address_space_write(&s->as, (s->regs[SONIC_URDA] << 16) | s->regs[SONIC_CRDA], - MEMTXATTRS_UNSPECIFIED, (uint8_t *)data, size); + MEMTXATTRS_UNSPECIFIED, data, size); /* Move to next descriptor */ size = sizeof(uint16_t) * width; @@ -771,7 +771,7 @@ static ssize_t dp8393x_receive(NetClientState *nc, const uint8_t * buf, data[0 * width] = 0; /* in_use */ address_space_write(&s->as, ((s->regs[SONIC_URDA] << 16) | s->regs[SONIC_CRDA]) + sizeof(uint16_t) * 6 * width, - MEMTXATTRS_UNSPECIFIED, (uint8_t *)data, sizeof(uint16_t)); + MEMTXATTRS_UNSPECIFIED, data, sizeof(uint16_t)); s->regs[SONIC_CRDA] = s->regs[SONIC_LLFA]; s->regs[SONIC_ISR] |= SONIC_ISR_PKTRX; s->regs[SONIC_RSC] = (s->regs[SONIC_RSC] & 0xff00) | (((s->regs[SONIC_RSC] & 0x00ff) + 1) & 0x00ff); diff --git a/hw/virtio/virtio.c b/hw/virtio/virtio.c index 6e04cea..f4b7d59 100644 --- a/hw/virtio/virtio.c +++ b/hw/virtio/virtio.c @@ -164,7 +164,7 @@ static inline void vring_used_write(VirtQueue *vq, VRingUsedElem *uelem, virtio_tswap32s(vq->vdev, &uelem->len); pa = vq->vring.used + offsetof(VRingUsed, ring[i]); address_space_write(&address_space_memory, pa, MEMTXATTRS_UNSPECIFIED, - (void *)uelem, sizeof(VRingUsedElem)); + uelem, sizeof(VRingUsedElem)); } static uint16_t vring_used_idx(VirtQueue *vq) diff --git a/include/exec/memory.h b/include/exec/memory.h index 262ecab..7851ca9 100644 --- a/include/exec/memory.h +++ b/include/exec/memory.h @@ -1304,7 +1304,7 @@ MemTxResult address_space_rw(AddressSpace *as, hwaddr addr, */ MemTxResult address_space_write(AddressSpace *as, hwaddr addr, MemTxAttrs attrs, - const uint8_t *buf, int len); + const void *buf, int len); /* address_space_ld*: load from an address space * address_space_st*: store to an address space