Skip to content

Commit

Permalink
dma: do not depend on kvm_enabled()
Browse files Browse the repository at this point in the history
Memory barriers are needed also by Xen and, when the ioeventfd
bugs are fixed, by TCG as well.

sysemu/kvm.h is not anymore needed in sysemu/dma.h, move it to
the actual users.

Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
  • Loading branch information
bonzini committed May 19, 2016
1 parent da16384 commit 77ac58d
Show file tree
Hide file tree
Showing 8 changed files with 8 additions and 5 deletions.
1 change: 1 addition & 0 deletions hw/intc/arm_gicv2m.c
Expand Up @@ -29,6 +29,7 @@
#include "qapi/error.h"
#include "hw/sysbus.h"
#include "hw/pci/msi.h"
#include "sysemu/kvm.h"

#define TYPE_ARM_GICV2M "arm-gicv2m"
#define ARM_GICV2M(obj) OBJECT_CHECK(ARMGICv2mState, (obj), TYPE_ARM_GICV2M)
Expand Down
2 changes: 1 addition & 1 deletion hw/intc/xics_kvm.c
Expand Up @@ -31,7 +31,7 @@
#include "cpu.h"
#include "hw/hw.h"
#include "trace.h"
#include "linux/kvm.h"
#include "sysemu/kvm.h"
#include "hw/ppc/spapr.h"
#include "hw/ppc/xics.h"
#include "kvm_ppc.h"
Expand Down
1 change: 1 addition & 0 deletions hw/misc/pci-testdev.c
Expand Up @@ -21,6 +21,7 @@
#include "hw/hw.h"
#include "hw/pci/pci.h"
#include "qemu/event_notifier.h"
#include "sysemu/kvm.h"

typedef struct PCITestDevHdr {
uint8_t test;
Expand Down
1 change: 1 addition & 0 deletions hw/ppc/e500plat.c
Expand Up @@ -14,6 +14,7 @@
#include "e500.h"
#include "hw/boards.h"
#include "sysemu/device_tree.h"
#include "sysemu/kvm.h"
#include "hw/pci/pci.h"
#include "hw/ppc/openpic.h"
#include "kvm_ppc.h"
Expand Down
1 change: 1 addition & 0 deletions hw/ppc/spapr_hcall.c
Expand Up @@ -7,6 +7,7 @@
#include "mmu-hash64.h"
#include "cpu-models.h"
#include "trace.h"
#include "sysemu/kvm.h"
#include "kvm_ppc.h"

struct SPRSyncState {
Expand Down
1 change: 1 addition & 0 deletions hw/ppc/spapr_pci.c
Expand Up @@ -44,6 +44,7 @@
#include "hw/pci/pci_bus.h"
#include "hw/ppc/spapr_drc.h"
#include "sysemu/device_tree.h"
#include "sysemu/kvm.h"

#include "hw/vfio/vfio.h"

Expand Down
1 change: 1 addition & 0 deletions hw/ppc/spapr_rtas.c
Expand Up @@ -31,6 +31,7 @@
#include "hw/qdev.h"
#include "sysemu/device_tree.h"
#include "sysemu/cpus.h"
#include "sysemu/kvm.h"

#include "hw/ppc/spapr.h"
#include "hw/ppc/spapr_vio.h"
Expand Down
5 changes: 1 addition & 4 deletions include/sysemu/dma.h
Expand Up @@ -15,7 +15,6 @@
#include "hw/hw.h"
#include "block/block.h"
#include "block/accounting.h"
#include "sysemu/kvm.h"

typedef struct ScatterGatherEntry ScatterGatherEntry;

Expand Down Expand Up @@ -67,9 +66,7 @@ static inline void dma_barrier(AddressSpace *as, DMADirection dir)
* use lighter barriers based on the direction of the
* transfer, the DMA context, etc...
*/
if (kvm_enabled()) {
smp_mb();
}
smp_mb();
}

/* Checks that the given range of addresses is valid for DMA. This is
Expand Down

0 comments on commit 77ac58d

Please sign in to comment.