qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PATCH v2 27/29] Include sysemu/sysemu.h a lot less


From: Markus Armbruster
Subject: Re: [Qemu-devel] [PATCH v2 27/29] Include sysemu/sysemu.h a lot less
Date: Wed, 07 Aug 2019 22:16:04 +0200
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/26.2 (gnu/linux)

Philippe Mathieu-Daudé <address@hidden> writes:

> On 8/6/19 5:14 PM, Markus Armbruster wrote:
>> In my "build everything" tree, changing sysemu/sysemu.h triggers a
>> recompile of some 5400 out of 6600 objects (not counting tests and
>> objects that don't depend on qemu/osdep.h).
>> 
>> hw/qdev-core.h includes sysemu/sysemu.h since recent commit e965ffa70a
>> "qdev: add qdev_add_vm_change_state_handler()".  This is a bad idea:
>> hw/qdev-core.h is widely included.
>> 
>> Move the declaration of qdev_add_vm_change_state_handler() to
>> sysemu/sysemu.h, and drop the problematic include from hw/qdev-core.h.
>> 
>> Touching sysemu/sysemu.h now recompiles some 1800 objects.
>> qemu/uuid.h also drops from 5400 to 1800.  A few more headers show
>> smaller improvement: qemu/notify.h drops from 5600 to 5200,
>> qemu/timer.h from 5600 to 4500, and qapi/qapi-types-run-state.h from
>> 5500 to 5000.
>> 
>> Cc: Stefan Hajnoczi <address@hidden>
>> Signed-off-by: Markus Armbruster <address@hidden>
>> ---
>>  accel/kvm/kvm-all.c               | 1 +
>>  backends/hostmem.c                | 1 +
>>  cpus.c                            | 1 +
>>  hw/arm/allwinner-a10.c            | 1 +
>>  hw/arm/aspeed_soc.c               | 1 +
>>  hw/arm/kzm.c                      | 1 +
>>  hw/arm/msf2-soc.c                 | 1 +
>>  hw/arm/stm32f205_soc.c            | 1 +
>>  hw/char/serial-isa.c              | 1 +
>>  hw/char/xen_console.c             | 1 +
>>  hw/core/numa.c                    | 1 +
>>  hw/core/vm-change-state-handler.c | 1 +
>>  hw/display/qxl-render.c           | 1 +
>>  hw/i386/xen/xen-hvm.c             | 1 +
>>  hw/i386/xen/xen-mapcache.c        | 1 +
>>  hw/intc/ioapic.c                  | 1 +
>>  hw/pci/pci.c                      | 1 +
>>  hw/riscv/sifive_e.c               | 1 +
>>  hw/riscv/sifive_u.c               | 1 +
>>  hw/riscv/spike.c                  | 1 +
>>  hw/riscv/virt.c                   | 1 +
>>  hw/sparc64/niagara.c              | 2 +-
>>  hw/usb/hcd-ehci.h                 | 1 +
>>  hw/xen/xen-common.c               | 1 +
>>  hw/xen/xen_devconfig.c            | 1 +
>>  hw/xenpv/xen_machine_pv.c         | 1 +
>>  include/hw/qdev-core.h            | 5 -----
>>  include/sysemu/sysemu.h           | 3 +++
>>  migration/global_state.c          | 1 +
>>  migration/migration.c             | 1 +
>>  migration/savevm.c                | 1 +
>>  31 files changed, 32 insertions(+), 6 deletions(-)
>> 
>> diff --git a/accel/kvm/kvm-all.c b/accel/kvm/kvm-all.c
>> index e1a44eccf5..fc38d0b9e3 100644
>> --- a/accel/kvm/kvm-all.c
>> +++ b/accel/kvm/kvm-all.c
>> @@ -29,6 +29,7 @@
>>  #include "exec/gdbstub.h"
>>  #include "sysemu/kvm_int.h"
>>  #include "sysemu/cpus.h"
>> +#include "sysemu/sysemu.h"
>>  #include "qemu/bswap.h"
>>  #include "exec/memory.h"
>>  #include "exec/ram_addr.h"
>
> Include missing in net/netmap.c:
>
>   CC      net/netmap.o
> net/netmap.c: In function 'netmap_update_fd_handler':
> net/netmap.c:108:5: error: implicit declaration of function
> 'qemu_set_fd_handler' [-Werror=implicit-function-declaration]
>      qemu_set_fd_handler(s->nmd->fd,
>      ^~~~~~~~~~~~~~~~~~~
> net/netmap.c:108:5: error: nested extern declaration of
> 'qemu_set_fd_handler' [-Werror=nested-externs]

Can you tell me offhand what I have to install so configure enables
CONFIG_NETMAP?



reply via email to

[Prev in Thread] Current Thread [Next in Thread]