From ee0b3fa7a671840e1e6a308fd9e964b425292fb7 Mon Sep 17 00:00:00 2001
From: Markus Armbruster <armbru@redhat.com>
Date: Sat, 2 Nov 2013 16:09:08 +0100
Subject: [PATCH 106/212] rhel: Drop "ivshmem" device

RH-Author: Markus Armbruster <armbru@redhat.com>
Message-id: <1383408548-7760-2-git-send-email-armbru@redhat.com>
Patchwork-id: 55277
O-Subject: [PATCH 7.0 qemu-kvm 1/1] rhel: Drop "ivshmem" device
Bugzilla: 787463
RH-Acked-by: Paolo Bonzini <pbonzini@redhat.com>
RH-Acked-by: Stefan Hajnoczi <stefanha@redhat.com>
RH-Acked-by: Miroslav Rezanina <mrezanin@redhat.com>

From: Markus Armbruster <armbru@redhat.com>

We can drop a device from the build only when it isn't referenced from
code we build.  References come in two forms: extern symbols, and qdev
driver names.

Unresolved extern symbols pose no real danger, because they fail
safely at link time.  But the dropped code doesn't define any extern
symbols anyway.

Unresolved driver names get detected only at runtime, so we better be
extra careful.  The only occurences of the driver name outside the
code dropped by this patch is in machine type compat properties
(safe), and those aren't even compiled for RHEL (extra safe).

Since there's no CONFIG_IVSHMEM, we need to hack the Makefile
directly.  Creating CONFIG_IVSHMEM upstream would be nice, but we're
out of time.

Signed-off-by: Markus Armbruster <armbru@redhat.com>
---
 hw/misc/Makefile.objs | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

Signed-off-by: Miroslav Rezanina <mrezanin@redhat.com>
---
 hw/misc/Makefile.objs |    3 ++-
 1 files changed, 2 insertions(+), 1 deletions(-)

diff --git a/hw/misc/Makefile.objs b/hw/misc/Makefile.objs
index 979e532..c07727b 100644
--- a/hw/misc/Makefile.objs
+++ b/hw/misc/Makefile.objs
@@ -20,7 +20,8 @@ common-obj-$(CONFIG_PUV3) += puv3_pm.o
 common-obj-$(CONFIG_MACIO) += macio/
 
 ifeq ($(CONFIG_PCI), y)
-obj-$(CONFIG_KVM) += ivshmem.o
+# Disabled for Red Hat Enterprise Linux:
+# obj-$(CONFIG_KVM) += ivshmem.o
 obj-$(CONFIG_LINUX) += vfio.o
 endif
 
-- 
1.7.1

