[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH 2/2] Remove unnecessary CONFIG_EVENTFD preproces
Re: [Qemu-devel] [PATCH 2/2] Remove unnecessary CONFIG_EVENTFD preprocessor conditional to satisfy link
Mon, 2 May 2016 21:14:14 -0400
On Mon, May 2, 2016 at 9:01 PM, Peter Maydell <address@hidden> wrote:
> [ccing somebody else who ran into this, since I've figured out why.]
> On 3 May 2016 at 01:47, Christopher Friedt <address@hidden> wrote:
>> The file ivshmem.c unconditionally references event_notifier_init_fd()
>> in util/event_notifier-posix.c, even if CONFIG_EVENTFD is not defined.
> Yes, but ivshmem.c is only built if CONFIG_IVSHMEM, and
> CONFIG_IVSHMEM is set (in default-configs/pci.mak) to CONFIG_EVENTFD.
> So if CONFIG_EVENTFD is not defined then we should never build ivshmem.o.
> The problem here is that you've run into a bug in QEMU's makefiles,
That would explain things.
> where a change in an included .mak file in default-configs fails
> to cause the config-devices.mak file to be rebuilt. In commit
> 330b583 we changed pci.mak so that CONFIG_IVSHMEM is set to
> CONFIG_EVENTFD rather than CONFIG_POSIX, so if your config-devices.mak
> predates that commit then it will have incorrectly not been recreated
> and so your build will still try to build ivshmem.c.
> You can check whether this is true by looking at
> (for instance) x86_64-softmmu/config-devices.mak in your build
> tree: if it has a line "CONFIG_IVSHMEM=$(CONFIG_POSIX)" in it
> then it's the out of date version.
$ grep "CONFIG_IVSHMEM" x86_64-softmmu/config-devices.mak
I have been re-configuring on every build, just to eliminate that
potential error source.
> You should be able to fix this by deleting */config-devices.mak
> from your build tree (or by blowing away the build tree entirely
> and recreating it.) Then try rebuilding -- ivshmem.c should not
> be compiled.
I'll give that a go anyway.