From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:58709) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZC3GZ-00059R-A7 for qemu-devel@nongnu.org; Mon, 06 Jul 2015 06:04:52 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ZC3GW-0008DV-3m for qemu-devel@nongnu.org; Mon, 06 Jul 2015 06:04:47 -0400 Received: from mail-vn0-f43.google.com ([209.85.216.43]:34835) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZC3GV-0008Cs-W7 for qemu-devel@nongnu.org; Mon, 06 Jul 2015 06:04:44 -0400 Received: by vnbg190 with SMTP id g190so22874126vnb.2 for ; Mon, 06 Jul 2015 03:04:43 -0700 (PDT) MIME-Version: 1.0 In-Reply-To: <20150706125811-mutt-send-email-mst@redhat.com> References: <1435842022-13980-1-git-send-email-mst@redhat.com> <5595876E.2040803@redhat.com> <20150702205556-mutt-send-email-mst@redhat.com> <55958AE2.1020600@redhat.com> <20150704230256-mutt-send-email-mst@redhat.com> <559A3246.7020103@redhat.com> <20150706105048-mutt-send-email-mst@redhat.com> <559A4067.3060109@redhat.com> <20150706120539-mutt-send-email-mst@redhat.com> <20150706125811-mutt-send-email-mst@redhat.com> From: Peter Maydell Date: Mon, 6 Jul 2015 11:04:24 +0100 Message-ID: Content-Type: text/plain; charset=UTF-8 Subject: Re: [Qemu-devel] [PATCH] virtio-pci: implement cfg capability List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: "Michael S. Tsirkin" Cc: Paolo Bonzini , =?UTF-8?Q?Herv=C3=A9_Poussineau?= , QEMU Developers On 6 July 2015 at 11:03, Michael S. Tsirkin wrote: > On Mon, Jul 06, 2015 at 10:11:18AM +0100, Peter Maydell wrote: >> But address_space_rw() is just the "memcpy bytes to the >> target's memory" operation -- if you have a pile of bytes >> then there are no endianness concerns. If you don't have >> a pile of bytes then you need to know the structure of >> the data you're DMAing around, and you should probably >> have a loop doing things with the specify-the-width functions. > Absolutely. But what if DMA happens to target another device > and not memory? Device needs some endian-ness so it needs > to be converted to that. Yes, and address_space_rw() already deals with conversion to that device's specified endianness. -- PMM