Hi

On Thu, Nov 26, 2020 at 3:48 PM Peter Maydell <peter.mayd...@linaro.org> wrote:
>
> On Thu, 26 Nov 2020 at 11:29, <marcandre.lur...@redhat.com> wrote:
> >
> > From: Marc-André Lureau <marcandre.lur...@redhat.com>
> >
> > Replace it with glib G_GNUC_CHECK_VERSION.
> >
> > Available since 2.42, the macro received a small correction in
> > 2.55.1 (glib d44afbadda8a "macros: make G_GNUC_CHECK_VERSION()
> > portable" which was apparently harmless).
> >
> > Signed-off-by: Marc-André Lureau <marcandre.lur...@redhat.com>
> > ---
> >  include/qemu/atomic.h      |  2 +-
> >  include/qemu/compiler.h    | 15 +++------------
> >  scripts/cocci-macro-file.h |  1 -
> >  accel/tcg/cpu-exec.c       |  2 +-
> >  4 files changed, 5 insertions(+), 15 deletions(-)
> >
> > diff --git a/include/qemu/atomic.h b/include/qemu/atomic.h
> > index c1d211a351..c409257c11 100644
> > --- a/include/qemu/atomic.h
> > +++ b/include/qemu/atomic.h
> > @@ -248,7 +248,7 @@
> >   * 4.3 (http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36793).
> >   */
> >  #if defined(__i386__) || defined(__x86_64__)
> > -#if !QEMU_GNUC_PREREQ(4, 4)
> > +#if !G_GNUC_CHECK_VERSION(4, 4)
> >  #if defined __x86_64__
> >  #define smp_mb()    ({ asm volatile("mfence" ::: "memory"); (void)0; })
> >  #else
> > diff --git a/include/qemu/compiler.h b/include/qemu/compiler.h
> > index c76281f354..cf044bab4a 100644
> > --- a/include/qemu/compiler.h
> > +++ b/include/qemu/compiler.h
> > @@ -7,21 +7,12 @@
> >  #ifndef COMPILER_H
> >  #define COMPILER_H
> >
> > +#include "glib-compat.h"
>
> osdep.h already includes glib-compat.h, so if it's safe to
> include it this early we should just move that #include line
> in osdep.h up above compiler.h. But I don't think it's going
> to be quite that simple, because some parts of osdep.h
> need to happen before we include any system headers, and
> glib-compat.h includes some system headers. As it stands
> this fragment will pull in glib-compat.h too early.
>
> You probably need to rearrange osdep.h so it is
>  * config-host.h
>  * poison.h
>  * bits that must go before any standard headers
>  * pure system includes
>  * glib-compat.h
>  * compiler.h
> (and hopefully none of the above needed stuff set up by compiler.h !)
>
> Or if this tangle of bits depending on each other seems too
> messy, we could just leave QEMU_GNUC_PREREQ the way it is :-)

Or I just change the order the header are included in libvhost-user
(before 
https://patchew.org/QEMU/20201125100640.366523-1-marcandre.lur...@redhat.com/
lands), since that was the reason I didn't include osdep.h iirc.

Anyway, if the rest of the series is accepted, the include should go
away too (should have done that on top).


Reply via email to