]> Git Repo - qemu.git/commit
dataplane: endianness-aware accesses
authorCornelia Huck <[email protected]>
Mon, 26 Jan 2015 16:26:42 +0000 (17:26 +0100)
committerStefan Hajnoczi <[email protected]>
Mon, 16 Feb 2015 15:07:16 +0000 (15:07 +0000)
commitb0e5d90ebc3edb5cfc1d5d33dd3334482dee6d46
tree25c1c688c21b635c644cafe0114ab2de3a494c5e
parent9a75b0a037e3a8030992244353f17b62f6daf2ab
dataplane: endianness-aware accesses

The vring.c code currently assumes that guest and host endianness match,
which is not true for a number of cases:

- emulating targets with a different endianness than the host
- bi-endian targets, where the correct endianness depends on the virtio
  device
- upcoming support for the virtio-1 standard mandates little-endian
  accesses even for big-endian targets and hosts

Make sure to use accessors that depend on the virtio device.

Note that dataplane now needs to be built per-target.

Cc: Stefan Hajnoczi <[email protected]>
Cc: Paolo Bonzini <[email protected]>
Cc: Fam Zheng <[email protected]>
Reviewed-by: David Gibson <[email protected]>
Tested-by: David Gibson <[email protected]>
Signed-off-by: Cornelia Huck <[email protected]>
Reviewed-by: Stefan Hajnoczi <[email protected]>
Message-id: 1422289602[email protected]
Signed-off-by: Stefan Hajnoczi <[email protected]>
hw/block/dataplane/virtio-blk.c
hw/scsi/virtio-scsi-dataplane.c
hw/virtio/Makefile.objs
hw/virtio/dataplane/Makefile.objs
hw/virtio/dataplane/vring.c
include/hw/virtio/dataplane/vring-accessors.h [new file with mode: 0644]
include/hw/virtio/dataplane/vring.h
This page took 0.027365 seconds and 4 git commands to generate.