From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:43210) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bDb1e-0006HH-MN for qemu-devel@nongnu.org; Thu, 16 Jun 2016 13:24:19 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1bDb1d-0000ro-Gd for qemu-devel@nongnu.org; Thu, 16 Jun 2016 13:24:18 -0400 Received: from orth.archaic.org.uk ([2001:8b0:1d0::2]:57856) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bDb1d-0000rQ-9J for qemu-devel@nongnu.org; Thu, 16 Jun 2016 13:24:17 -0400 From: Peter Maydell Date: Thu, 16 Jun 2016 18:17:24 +0100 Message-Id: <1466097446-981-4-git-send-email-peter.maydell@linaro.org> In-Reply-To: <1466097446-981-1-git-send-email-peter.maydell@linaro.org> References: <1466097446-981-1-git-send-email-peter.maydell@linaro.org> Subject: [Qemu-devel] [PATCH 3/5] hw/net/rocker: Don't use *_to_cpup() List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org Cc: patches@linaro.org, Jason Wang , Dmitry Fleytman , Scott Feldman , Jiri Pirko , "Michael S. Tsirkin" Don't use *_to_cpup() to do byte-swapped loads; instead use ld*_p() which correctly handle misaligned accesses. Signed-off-by: Peter Maydell --- hw/net/rocker/rocker_tlv.h | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/hw/net/rocker/rocker_tlv.h b/hw/net/rocker/rocker_tlv.h index e3c4ab6..8856164 100644 --- a/hw/net/rocker/rocker_tlv.h +++ b/hw/net/rocker/rocker_tlv.h @@ -106,17 +106,17 @@ static inline uint64_t rocker_tlv_get_u64(const RockerTlv *tlv) static inline uint16_t rocker_tlv_get_le16(const RockerTlv *tlv) { - return le16_to_cpup((uint16_t *) rocker_tlv_data(tlv)); + return lduw_le_p(rocker_tlv_data(tlv)); } static inline uint32_t rocker_tlv_get_le32(const RockerTlv *tlv) { - return le32_to_cpup((uint32_t *) rocker_tlv_data(tlv)); + return ldl_le_p(rocker_tlv_data(tlv)); } static inline uint64_t rocker_tlv_get_le64(const RockerTlv *tlv) { - return le64_to_cpup((uint64_t *) rocker_tlv_data(tlv)); + return ldq_le_p(rocker_tlv_data(tlv)); } static inline void rocker_tlv_parse(RockerTlv **tb, int maxtype, -- 1.9.1