From: Igor Mammedov <imammedo@redhat.com>
To: Eduardo Habkost <ehabkost@redhat.com>
Cc: aliguori@us.ibm.com, claudio.fontana@huawei.com,
qemu-devel@nongnu.org, aderumier@odiso.com,
lcapitulino@redhat.com, jfrei@linux.vnet.ibm.com,
yang.z.zhang@intel.com, pbonzini@redhat.com, afaerber@suse.de,
lig.fnst@cn.fujitsu.com, rth@twiddle.net
Subject: Re: [Qemu-devel] [PATCH 03/19] cpu: make kvm-stub.o a part of CPU library
Date: Fri, 12 Apr 2013 13:17:32 +0200 [thread overview]
Message-ID: <20130412131732.50cc00ef@thinkpad> (raw)
In-Reply-To: <20130411174542.GF6862@otherpad.lan.raisama.net>
On Thu, 11 Apr 2013 14:45:42 -0300
Eduardo Habkost <ehabkost@redhat.com> wrote:
> On Thu, Apr 11, 2013 at 04:51:42PM +0200, Igor Mammedov wrote:
> > Signed-off-by: Igor Mammedov <imammedo@redhat.com>
> > ---
> > Makefile.target | 13 +++++++------
> > include/hw/pci/msi.h | 2 ++
> > include/sysemu/kvm.h | 4 ++--
> > kvm-stub.c | 2 ++
> > 4 files changed, 13 insertions(+), 8 deletions(-)
> >
> > diff --git a/Makefile.target b/Makefile.target
> > index 2bd6d14..18f348c 100644
> > --- a/Makefile.target
> > +++ b/Makefile.target
> > @@ -64,6 +64,12 @@ all: $(PROGS) stap
> > # Dummy command so that make thinks it has done something
> > @true
> >
> > +CONFIG_NO_PCI = $(if $(subst n,,$(CONFIG_PCI)),n,y)
> > +CONFIG_NO_KVM = $(if $(subst n,,$(CONFIG_KVM)),n,y)
> > +CONFIG_NO_XEN = $(if $(subst n,,$(CONFIG_XEN)),n,y)
> > +CONFIG_NO_GET_MEMORY_MAPPING = $(if $(subst n,,$(CONFIG_HAVE_GET_MEMORY_MAPPING)),n,y)
> > +CONFIG_NO_CORE_DUMP = $(if $(subst n,,$(CONFIG_HAVE_CORE_DUMP)),n,y)
> > +
> > #########################################################
> > # cpu emulator library
> > obj-y = exec.o translate-all.o cpu-exec.o
> > @@ -74,6 +80,7 @@ obj-y += fpu/softfloat.o
> > obj-y += target-$(TARGET_BASE_ARCH)/
> > obj-y += disas.o
> > obj-$(CONFIG_GDBSTUB_XML) += gdbstub-xml.o
> > +obj-$(CONFIG_NO_KVM) += kvm-stub.o
>
> The kvm-stub.o line at the "System emulator target" section is redundant
> now, isn't it? Any specific reason you didn't remove it?
Nope, I just forgot it. Thanks, I'll fix it.
>
> >
> > #########################################################
> > # Linux user emulator target
> > @@ -102,12 +109,6 @@ endif #CONFIG_BSD_USER
> > #########################################################
> > # System emulator target
> > ifdef CONFIG_SOFTMMU
> > -CONFIG_NO_PCI = $(if $(subst n,,$(CONFIG_PCI)),n,y)
> > -CONFIG_NO_KVM = $(if $(subst n,,$(CONFIG_KVM)),n,y)
> > -CONFIG_NO_XEN = $(if $(subst n,,$(CONFIG_XEN)),n,y)
> > -CONFIG_NO_GET_MEMORY_MAPPING = $(if $(subst n,,$(CONFIG_HAVE_GET_MEMORY_MAPPING)),n,y)
> > -CONFIG_NO_CORE_DUMP = $(if $(subst n,,$(CONFIG_HAVE_CORE_DUMP)),n,y)
> > -
> > obj-y += arch_init.o cpus.o monitor.o gdbstub.o balloon.o ioport.o
> > obj-y += qtest.o
> > obj-y += hw/
> > diff --git a/include/hw/pci/msi.h b/include/hw/pci/msi.h
> > index 81a3848..d4d0450 100644
> > --- a/include/hw/pci/msi.h
> > +++ b/include/hw/pci/msi.h
> > @@ -21,6 +21,7 @@
> > #ifndef QEMU_MSI_H
> > #define QEMU_MSI_H
> >
> > +#ifndef CONFIG_USER_ONLY
>
> I would simply #ifdef the "#include pci/msi.h" line on kvm-stub.c
> instead. But I guess it doesn't hurt to have the #ifdef here.
It's more robust to not ifdef at source rather then at places where it's used.
>
> > #include "qemu-common.h"
> > #include "hw/pci/pci.h"
> >
> > @@ -47,4 +48,5 @@ static inline bool msi_present(const PCIDevice *dev)
> > return dev->cap_present & QEMU_PCI_CAP_MSI;
> > }
> >
> > +#endif
> > #endif /* QEMU_MSI_H */
> > diff --git a/include/sysemu/kvm.h b/include/sysemu/kvm.h
> > index 495e6f8..93cef28 100644
> > --- a/include/sysemu/kvm.h
> > +++ b/include/sysemu/kvm.h
> > @@ -144,10 +144,10 @@ int kvm_cpu_exec(CPUArchState *env);
> > #if !defined(CONFIG_USER_ONLY)
> > void *kvm_vmalloc(ram_addr_t size);
> > void *kvm_arch_vmalloc(ram_addr_t size);
> > -void kvm_setup_guest_memory(void *start, size_t size);
> > +#endif
> >
> > +void kvm_setup_guest_memory(void *start, size_t size);
> > void kvm_flush_coalesced_mmio_buffer(void);
> > -#endif
> >
> > int kvm_insert_breakpoint(CPUArchState *current_env, target_ulong addr,
> > target_ulong len, int type);
> > diff --git a/kvm-stub.c b/kvm-stub.c
> > index 82875dd..b34064a 100644
> > --- a/kvm-stub.c
> > +++ b/kvm-stub.c
> > @@ -122,6 +122,7 @@ int kvm_on_sigbus(int code, void *addr)
> > return 1;
> > }
> >
> > +#ifndef CONFIG_USER_ONLY
> > int kvm_irqchip_add_msi_route(KVMState *s, MSIMessage msg)
> > {
> > return -ENOSYS;
> > @@ -145,3 +146,4 @@ int kvm_irqchip_remove_irqfd_notifier(KVMState *s, EventNotifier *n, int virq)
> > {
> > return -ENOSYS;
> > }
> > +#endif
>
> What about making MSIMessage definition available on CONFIG_USER_ONLY,
> so we don't even need to #ifdef this part?
it might work, but it causes #includes split which I don't like much.
Anyway here is patch on top of this one. If it looks more acceptable to you
this way, I'll merge it.
---
diff --git a/include/hw/pci/msi.h b/include/hw/pci/msi.h
index d4d0450..c159a15 100644
--- a/include/hw/pci/msi.h
+++ b/include/hw/pci/msi.h
@@ -21,15 +21,15 @@
#ifndef QEMU_MSI_H
#define QEMU_MSI_H
-#ifndef CONFIG_USER_ONLY
#include "qemu-common.h"
-#include "hw/pci/pci.h"
struct MSIMessage {
uint64_t address;
uint32_t data;
};
+#ifndef CONFIG_USER_ONLY
+#include "hw/pci/pci.h"
extern bool msi_supported;
void msi_set_message(PCIDevice *dev, MSIMessage msg);
diff --git a/kvm-stub.c b/kvm-stub.c
index 8cb81c4..b5d4446 100644
--- a/kvm-stub.c
+++ b/kvm-stub.c
@@ -123,7 +123,6 @@ int kvm_on_sigbus(int code, void *addr)
return 1;
}
-#ifndef CONFIG_USER_ONLY
int kvm_irqchip_add_msi_route(KVMState *s, MSIMessage msg)
{
return -ENOSYS;
@@ -147,4 +146,3 @@ int kvm_irqchip_remove_irqfd_notifier(KVMState *s, EventNotifier *n, int virq)
{
return -ENOSYS;
}
-#endif
>
> --
> Eduardo
--
Regards,
Igor
next prev parent reply other threads:[~2013-04-12 11:17 UTC|newest]
Thread overview: 84+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-04-11 14:51 [Qemu-devel] [PATCH 00/19 v3] target-i386: CPU hot-add with cpu-add QMP command Igor Mammedov
2013-04-11 14:51 ` [Qemu-devel] [PATCH 01/19] target-i386: split out CPU creation and features parsing into cpu_x86_create() Igor Mammedov
2013-04-11 17:03 ` Eduardo Habkost
2013-04-15 15:03 ` Andreas Färber
2013-04-11 14:51 ` [Qemu-devel] [PATCH 02/19] cpu: Pass CPUState to *cpu_synchronize_post*() Igor Mammedov
2013-04-15 15:12 ` Andreas Färber
2013-04-11 14:51 ` [Qemu-devel] [PATCH 03/19] cpu: make kvm-stub.o a part of CPU library Igor Mammedov
2013-04-11 17:45 ` Eduardo Habkost
2013-04-12 11:17 ` Igor Mammedov [this message]
2013-04-12 19:25 ` Eduardo Habkost
2013-04-15 9:09 ` Igor Mammedov
2013-04-11 14:51 ` [Qemu-devel] [PATCH 04/19] cpu: call cpu_synchronize_post_init() from CPUClass.realize() if hotplugged Igor Mammedov
2013-04-11 18:33 ` Eduardo Habkost
2013-04-12 11:34 ` Igor Mammedov
2013-04-12 14:08 ` Eduardo Habkost
2013-04-15 19:57 ` Eduardo Habkost
2013-04-15 20:21 ` Igor Mammedov
2013-04-11 14:51 ` [Qemu-devel] [PATCH 05/19] cpu: resume CPU from CPUClass.cpu_common_realizefn() when it is hot-plugged Igor Mammedov
2013-04-11 18:36 ` Eduardo Habkost
2013-04-12 11:36 ` Igor Mammedov
2013-04-15 19:58 ` Eduardo Habkost
2013-04-11 14:51 ` [Qemu-devel] [PATCH 06/19] introduce CPU hot-plug notifier Igor Mammedov
2013-04-11 18:46 ` Eduardo Habkost
2013-04-12 11:00 ` Igor Mammedov
2013-04-15 20:08 ` Eduardo Habkost
2013-04-11 14:51 ` [Qemu-devel] [PATCH 07/19] rtc: update rtc_cmos on CPU hot-plug Igor Mammedov
2013-04-11 18:59 ` Eduardo Habkost
2013-04-12 10:53 ` Igor Mammedov
2013-04-12 13:35 ` Eduardo Habkost
2013-04-12 15:16 ` Igor Mammedov
2013-04-12 15:35 ` Eduardo Habkost
2013-04-12 16:24 ` Igor Mammedov
2013-04-15 9:38 ` Igor Mammedov
2013-04-15 17:53 ` Eduardo Habkost
2013-04-11 14:51 ` [Qemu-devel] [PATCH 08/19] cpu: introduce get_arch_id() method and override it for target-i386 Igor Mammedov
2013-04-11 19:04 ` Eduardo Habkost
2013-04-12 10:31 ` Igor Mammedov
2013-04-12 13:47 ` Eduardo Habkost
2013-04-15 15:24 ` Andreas Färber
2013-04-15 15:34 ` Igor Mammedov
2013-04-15 15:42 ` Andreas Färber
2013-04-15 15:47 ` Eduardo Habkost
2013-04-15 20:34 ` Igor Mammedov
2013-04-11 14:51 ` [Qemu-devel] [PATCH 09/19] cpu: add helper cpu_exists(), to check if CPU with specified id exists Igor Mammedov
2013-04-11 19:06 ` Eduardo Habkost
2013-04-12 10:14 ` Igor Mammedov
2013-04-11 14:51 ` [Qemu-devel] [PATCH 10/19] acpi_piix4: add infrastructure to send CPU hot-plug GPE to guest Igor Mammedov
2013-04-11 14:51 ` [Qemu-devel] [PATCH 11/19] target-i386: introduce apic-id property Igor Mammedov
2013-04-11 19:12 ` Eduardo Habkost
2013-04-12 10:20 ` Igor Mammedov
2013-04-12 13:13 ` Eduardo Habkost
2013-04-12 15:46 ` Igor Mammedov
2013-04-12 16:29 ` Eduardo Habkost
2013-04-15 2:30 ` li guang
2013-04-15 13:37 ` Igor Mammedov
2013-04-15 13:45 ` Eduardo Habkost
2013-04-15 14:34 ` Igor Mammedov
2013-04-15 14:49 ` Eduardo Habkost
2013-04-15 20:27 ` Igor Mammedov
2013-04-15 20:49 ` Eduardo Habkost
2013-04-15 21:13 ` Igor Mammedov
2013-04-11 14:51 ` [Qemu-devel] [PATCH 12/19] introduce ICC bus/device/bridge Igor Mammedov
2013-04-11 14:51 ` [Qemu-devel] [PATCH 13/19] target-i386: cpu: attach ICC bus to CPU on its creation Igor Mammedov
2013-04-15 15:38 ` Andreas Färber
2013-04-15 15:49 ` Igor Mammedov
2013-04-15 16:06 ` Andreas Färber
2013-04-15 16:17 ` Igor Mammedov
2013-04-11 14:51 ` [Qemu-devel] [PATCH 14/19] target-i386: replace MSI_SPACE_SIZE with APIC_SPACE_SIZE Igor Mammedov
2013-04-15 15:34 ` Andreas Färber
2013-04-15 15:47 ` Jan Kiszka
2013-04-11 14:51 ` [Qemu-devel] [PATCH 15/19] target-i386: move APIC to ICC bus Igor Mammedov
2013-04-11 14:51 ` [Qemu-devel] [PATCH 16/19] target-i386: move IOAPIC " Igor Mammedov
2013-04-11 14:51 ` [Qemu-devel] [PATCH 17/19] qdev: set device's parent before calling realize() down inheritance chain Igor Mammedov
2013-04-15 15:48 ` Andreas Färber
2013-04-11 14:51 ` [Qemu-devel] [PATCH 18/19] target-i386: expose all possible CPUs as /machine/icc-bridge/cpu[0..N] links Igor Mammedov
2013-04-11 17:19 ` Eduardo Habkost
2013-04-12 10:01 ` Igor Mammedov
2013-04-12 12:44 ` Eduardo Habkost
2013-04-15 14:15 ` Igor Mammedov
2013-04-15 14:48 ` Eduardo Habkost
2013-04-15 15:16 ` Igor Mammedov
2013-04-15 15:26 ` Eduardo Habkost
2013-04-15 20:37 ` Igor Mammedov
2013-04-11 14:51 ` [Qemu-devel] [PATCH 19/19] add cpu-add qmp command and implement CPU hot-add for target-i386 Igor Mammedov
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20130412131732.50cc00ef@thinkpad \
--to=imammedo@redhat.com \
--cc=aderumier@odiso.com \
--cc=afaerber@suse.de \
--cc=aliguori@us.ibm.com \
--cc=claudio.fontana@huawei.com \
--cc=ehabkost@redhat.com \
--cc=jfrei@linux.vnet.ibm.com \
--cc=lcapitulino@redhat.com \
--cc=lig.fnst@cn.fujitsu.com \
--cc=pbonzini@redhat.com \
--cc=qemu-devel@nongnu.org \
--cc=rth@twiddle.net \
--cc=yang.z.zhang@intel.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.