[PATCH 2/2] lib: Use G_NO_INLINE instead of G_GNUC_NO_INLINE
Pavel Hrdina
phrdina at redhat.com
Mon Jul 18 15:20:25 UTC 2022
On Mon, Jul 18, 2022 at 05:11:22PM +0200, Michal Prívozník wrote:
> On 7/18/22 17:01, Pavel Hrdina wrote:
> > On Mon, Jul 18, 2022 at 04:03:16PM +0200, Michal Privoznik wrote:
> >> The G_GNUC_NO_INLINE macro will eventually be marked as
> >> deprecated [1] and we are recommended to use G_NO_INLINE instead.
> >> Do the switch now, rather than waiting for compile time warning
> >> to occur.
> >>
> >> 1: https://gitlab.gnome.org/GNOME/glib/-/commit/15cd0f04612c90292792c4d123ebe84bf4bf93a6
> >>
> >> Signed-off-by: Michal Privoznik <mprivozn at redhat.com>
> >> ---
> >> docs/coding-style.rst | 2 +-
> >> scripts/cocci-macro-file.h | 2 +-
> >> scripts/mock-noinline.py | 4 ++--
> >> src/cpu/cpu.h | 2 +-
> >> src/libxl/libxl_capabilities.h | 2 +-
> >> src/qemu/qemu_capabilities.h | 2 +-
> >> src/qemu/qemu_capspriv.h | 2 +-
> >> src/qemu/qemu_command.h | 4 ++--
> >> src/qemu/qemu_hotplug.c | 2 +-
> >> src/qemu/qemu_hotplug.h | 2 +-
> >> src/qemu/qemu_interface.h | 4 ++--
> >> src/qemu/qemu_monitor.h | 2 +-
> >> src/qemu/qemu_monitor_json.h | 2 +-
> >> src/qemu/qemu_monitor_priv.h | 2 +-
> >> src/qemu/qemu_process.h | 6 +++---
> >> src/rpc/virnetsocket.h | 4 ++--
> >> src/util/glibcompat.h | 28 ++++++++++++++++++++--------
> >> src/util/vircgroupv2devices.h | 2 +-
> >> src/util/vircommand.h | 2 +-
> >> src/util/virdevmapper.h | 2 +-
> >> src/util/virfile.h | 18 +++++++++---------
> >> src/util/virhashcode.h | 2 +-
> >> src/util/virhostcpu.h | 6 +++---
> >> src/util/virhostmem.h | 2 +-
> >> src/util/virhostuptime.h | 2 +-
> >> src/util/viridentitypriv.h | 2 +-
> >> src/util/virmacaddr.h | 2 +-
> >> src/util/virnetdev.h | 10 +++++-----
> >> src/util/virnetdevbandwidth.h | 2 +-
> >> src/util/virnetdevip.h | 2 +-
> >> src/util/virnetdevmacvlan.h | 2 +-
> >> src/util/virnetdevopenvswitch.h | 2 +-
> >> src/util/virnetdevtap.h | 6 +++---
> >> src/util/virnuma.h | 18 +++++++++---------
> >> src/util/virprocess.h | 6 +++---
> >> src/util/virrandom.h | 6 +++---
> >> src/util/virscsi.h | 2 +-
> >> src/util/virscsivhost.h | 2 +-
> >> src/util/virtpm.h | 2 +-
> >> src/util/virutil.h | 16 ++++++++--------
> >> src/util/viruuid.h | 4 ++--
> >> 41 files changed, 102 insertions(+), 90 deletions(-)
> >
> > [...]
> >
> >> diff --git a/src/util/glibcompat.h b/src/util/glibcompat.h
> >> index e3a8b9f6b3..02f8ec090c 100644
> >> --- a/src/util/glibcompat.h
> >> +++ b/src/util/glibcompat.h
> >> @@ -95,11 +95,23 @@ char *vir_g_strdup_vprintf(const char *msg, va_list args)
> >>
> >> void vir_g_source_unref(GSource *src, GMainContext *ctx);
> >>
> >> -/* Intentionally redefine macro so that it's not marked as available in 2.58
> >> - * and newer. Drop when bumping to 2.58 or newer. */
> >> -#undef G_GNUC_NO_INLINE
> >> -#if g_macro__has_attribute(__noinline__)
> >> -# define G_GNUC_NO_INLINE __attribute__ ((__noinline__))
> >> -#else
> >> -# define G_GNUC_NO_INLINE
> >> -#endif
> >> +#if !GLIB_CHECK_VERSION(2, 73, 0)
> >
> > Not sure if this check is correct. Documentation for that macro
> > mentions that it is introduced in 2.74 but I can see it in 2.73.2 as
> > well but this check is for 2.73.0 and if I understand the
> > GLIB_CHECK_VERSION() correctly our own implementation would be used only
> > with glib older then 2.73.0.
> >
> > That means based on my understanding that with glib 2.73.0 and 2.73.1
> > libvirt would failed to compile as there would not be any implementation
> > for G_NO_INLINE.
>
> Yeah, so let's go with:
>
> #if !GLIB_CHECK_VERSION(2, 73, 2)
>
> Fixed locally.
>
> Michal
Reviewed-by: Pavel Hrdina <phrdina at redhat.com>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: not available
URL: <http://listman.redhat.com/archives/libvir-list/attachments/20220718/a44653c4/attachment.sig>
More information about the libvir-list
mailing list