From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:36308) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1VJ01N-0002ZT-JI for qemu-devel@nongnu.org; Mon, 09 Sep 2013 07:52:51 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1VJ01H-0007FG-K3 for qemu-devel@nongnu.org; Mon, 09 Sep 2013 07:52:45 -0400 Received: from mx1.redhat.com ([209.132.183.28]:51091) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1VJ01H-0007Er-BD for qemu-devel@nongnu.org; Mon, 09 Sep 2013 07:52:39 -0400 Date: Mon, 9 Sep 2013 14:54:40 +0300 From: "Michael S. Tsirkin" Message-ID: <20130909115440.GA31742@redhat.com> References: <1377442777-11066-1-git-send-email-peter.maydell@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <1377442777-11066-1-git-send-email-peter.maydell@linaro.org> Subject: Re: [Qemu-devel] [PATCH 0/9] Remove legacy unaligned bswap functions List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Peter Maydell Cc: Kevin Wolf , Stefan Hajnoczi , patches@linaro.org, qemu-devel@nongnu.org, Anthony Liguori , Richard Henderson On Sun, Aug 25, 2013 at 03:59:28PM +0100, Peter Maydell wrote: > The bswap.h header includes a set of "legacy unaligned functions" > that (since commit c732a52d3 at the beginning of this year) are > just wrappers for underlying {ld,st} functions. The legacy > functions aren't used in many places, so just replace all their > uses with uses of the new-style {ld,st} functions; this lets us > remove the legacy wrappers altogether. I have a question on this: what happens if an unaligned address is supplied? In particular, if the address is supplied by the guest? Esp the pci wrappers have many callers - were they all audited? I tried checking but there are many callers, will take a while. > Since we know the {ld,st}* routines are definitely functions, > we can in the process remove some casts which were left over > from when the legacy unaligned functions were previously macros. > > The patchset is divided up by function being removed, rather > than by which device/subsystem is being fixed; I think this way > round is easier to review since you only have to keep one > substitution in your head when reading a patch. > > Peter Maydell (9): > bswap.h: Remove cpu_to_le16wu() > bswap.h: Remove cpu_to_le32wu() > bswap.h: Remove le16_to_cpupu() > bswap.h: Remove le32_to_cpupu() > bswap.h: Remove be32_to_cpupu() > bswap.h: Remove cpu_to_be16wu() > bswap.h: Remove cpu_to_be32wu() > bswap.h: Remove cpu_to_be64wu() > bswap.h: Remove cpu_to_32wu() > > block/qcow2-cluster.c | 2 +- > hw/acpi/core.c | 3 +-- > hw/block/cdrom.c | 10 +++++----- > hw/display/vga_template.h | 14 ++++++++------ > hw/ide/atapi.c | 16 +++++++-------- > hw/net/e1000.c | 22 +++++++++------------ > hw/net/ne2000.c | 4 ++-- > hw/pci/pcie_aer.c | 4 ++-- > include/hw/pci/pci.h | 8 ++++---- > include/qemu/bswap.h | 47 --------------------------------------------- > 10 files changed, 40 insertions(+), 90 deletions(-) > > -- > 1.7.9.5