Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 501830 - gnome-base/dconf's test abicheck.sh fails on ia64/hppa due to gmon_initializer symbol
Summary: gnome-base/dconf's test abicheck.sh fails on ia64/hppa due to gmon_initialize...
Status: CONFIRMED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: IA64 Linux
: Normal normal (vote)
Assignee: Gentoo Linux Gnome Desktop Team
URL: https://gitlab.gnome.org/GNOME/dconf/...
Whiteboard:
Keywords: TESTFAILURE
Depends on:
Blocks:
 
Reported: 2014-02-19 21:51 UTC by Émeric Maschino
Modified: 2022-05-02 23:58 UTC (History)
3 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
build.log (build.log,47.25 KB, text/plain)
2014-02-19 21:52 UTC, Émeric Maschino
Details
environment (environment,111.52 KB, text/plain)
2014-02-19 21:53 UTC, Émeric Maschino
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Émeric Maschino 2014-02-19 21:51:02 UTC
Emerging dconf with tests enabled (FEATURES=test) fails on test abicheck.sh.

Unfortunately, gsettings/test-suite.log is rather scarce in information as it only contains:

============================================
   dconf 0.16.1: gsettings/test-suite.log
============================================

# TOTAL: 1
# PASS:  0
# SKIP:  0
# XFAIL: 0
# FAIL:  1
# XPASS: 0
# ERROR: 0

.. contents:: :depth: 2

FAIL: abicheck.sh
=================

And build.log is no more verbose...

     Émeric
Comment 1 Émeric Maschino 2014-02-19 21:51:56 UTC
emerge --info

Portage 2.2.7 (default/linux/ia64/13.0/desktop/gnome/systemd, gcc-4.6.3, glibc-2.17, 3.10.25-gentoo ia64)
=================================================================
System uname: Linux-3.10.25-gentoo-ia64-Madison-with-gentoo-2.2
KiB Mem:    24987056 total,  23432080 free
KiB Swap:     524272 total,    524272 free
Timestamp of tree: Wed, 12 Feb 2014 21:30:01 +0000
ld GNU ld (GNU Binutils) 2.23.2
app-shells/bash:          4.2_p45
dev-java/java-config:     2.1.12-r1
dev-lang/python:          2.7.5-r3, 3.3.2-r2
dev-util/cmake:           2.8.11.2
dev-util/pkgconfig:       0.28
sys-apps/baselayout:      2.2
sys-apps/openrc:          0.12.4
sys-apps/sandbox:         2.6-r1
sys-devel/autoconf:       2.13, 2.69
sys-devel/automake:       1.11.6, 1.13.4
sys-devel/binutils:       2.23.2
sys-devel/gcc:            4.6.3, 4.7.3-r1
sys-devel/gcc-config:     1.7.3
sys-devel/libtool:        2.4.2
sys-devel/make:           3.82-r4
sys-kernel/linux-headers: 3.9 (virtual/os-headers)
sys-libs/glibc:           2.17
Repositories: gentoo my_ebuilds
ACCEPT_KEYWORDS="ia64"
ACCEPT_LICENSE="* -@EULA"
CBUILD="ia64-unknown-linux-gnu"
CFLAGS="-mtune=itanium2 -O2 -pipe"
CHOST="ia64-unknown-linux-gnu"
CONFIG_PROTECT="/etc /usr/share/gnupg/qualified.txt"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/dconf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo"
CXXFLAGS="-mtune=itanium2 -O2 -pipe"
DISTDIR="/usr/portage/distfiles"
FCFLAGS="-O2 -pipe"
FEATURES="assume-digests binpkg-logs config-protect-if-modified distlocks ebuild-locks fixlafiles merge-sync news parallel-fetch preserve-libs protect-owned sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync"
FFLAGS="-O2 -pipe"
GENTOO_MIRRORS="ftp://mirrors.linuxant.fr/distfiles.gentoo.org/"
LANG="fr_FR.UTF-8"
LDFLAGS="-Wl,-O1 -Wl,--as-needed"
MAKEOPTS="-j3"
PKGDIR="/usr/portage/packages"
PORTAGE_CONFIGROOT="/"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --omit-dir-times --compress --force --whole-file --delete --stats --human-readable --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/var/lib/layman/my_ebuilds"
USE="X a52 aac acl acpi alsa berkdb branding bzip2 cairo cdda cdr cli colord cracklib crypt cups cxx dbus dri dts dvdr eds encode evo exif fam firefox flac fortran gdbm gif gnome gnome-keyring gnome-online-accounts gpm gstreamer gtk ia64 iconv introspection ipv6 jpeg lcms ldap libnotify libsecret mad mng modules mp3 mp4 mpeg nautilus ncurses nls nptl ogg opengl openmp pam pango pcre pdf png policykit ppds pulseaudio qt3support qt4 readline sdl session socialweb spell ssl startup-notification svg systemd tcpd tiff truetype udev udisks unicode upower usb vorbis wxwidgets xcb xml xv xvid zlib" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" APACHE2_MODULES="authn_core authz_core socache_shmcb unixd actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache cgi cgid dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" CALLIGRA_FEATURES="kexi words flow plan sheets stage tables krita karbon braindump author" CAMERAS="ptp2" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf superstar2 timing tsip tripmate tnt ublox ubx" INPUT_DEVICES="evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer" LINGUAS="fr" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="php5-5" PYTHON_SINGLE_TARGET="python2_7" PYTHON_TARGETS="python2_7 python3_3" RUBY_TARGETS="ruby19 ruby18" USERLAND="GNU" VIDEO_CARDS="radeon" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq steal rawnat logmark ipmark dhcpmac delude chaos account"
Unset:  CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LC_ALL, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, SYNC, USE_PYTHON
Comment 2 Émeric Maschino 2014-02-19 21:52:53 UTC
Created attachment 370800 [details]
build.log
Comment 3 Émeric Maschino 2014-02-19 21:53:09 UTC
Created attachment 370802 [details]
environment
Comment 4 Émeric Maschino 2014-02-19 22:04:56 UTC
emerge -pqv

[ebuild   R   ] gnome-base/dconf-0.16.1  USE="X {test*}"
Comment 5 Émeric Maschino 2014-03-13 20:12:16 UTC
Same problem with dconf-0.18.0

     Émeric
Comment 6 Pacho Ramos gentoo-dev 2014-03-13 21:06:27 UTC
I cannot reproduce this test failure, please report to upstream as maybe they will help to debug it further
Comment 7 Émeric Maschino 2014-06-16 19:27:32 UTC
(In reply to Pacho Ramos from comment #6)
> I cannot reproduce this test failure, please report to upstream as maybe
> they will help to debug it further

I can reproduce this test failure with current dconf-0.20.0. Will report upstream ASAP.

     Émeric
Comment 8 Pacho Ramos gentoo-dev 2016-06-25 12:14:00 UTC
This still runs ok for me, please retry with 0.26
Comment 9 Émeric Maschino 2016-07-07 20:20:33 UTC
(In reply to Pacho Ramos from comment #8)
> This still runs ok for me, please retry with 0.26

Still failing the same, with still no more details in build.log or test-suite.log.

     Émeric
Comment 10 Pacho Ramos gentoo-dev 2016-07-09 12:42:27 UTC
Please report this directly to upstream and paste the link here to let us follow the issue: bugzilla.gnome.org

Thanks
Comment 11 Émeric Maschino 2016-07-14 09:59:32 UTC
(In reply to Pacho Ramos from comment #10)
> Please report this directly to upstream and paste the link here to let us
> follow the issue: bugzilla.gnome.org
> 
> Thanks

Here you go: https://bugzilla.gnome.org/show_bug.cgi?id=768799

     Émeric
Comment 12 Émeric Maschino 2016-10-07 01:41:05 UTC
=gnome-base/dconf-0.26.0 is still failing the same.

     Émeric
Comment 13 Matt Turner gentoo-dev 2019-04-11 22:40:51 UTC
I believe this is ia64-specific due to the "gmon_initializer" symbol being exposed.
Comment 14 Émeric Maschino 2019-11-02 15:39:54 UTC
(In reply to Matt Turner from comment #13)
> I believe this is ia64-specific due to the "gmon_initializer" symbol being
> exposed.

Is there something I can do on my own? As the problem is still there with =gnome-base/dconf-0.30.1.

BTW, upstream BR has been migrated: https://gitlab.gnome.org/GNOME/dconf/issues/31.
Comment 15 Émeric Maschino 2020-01-09 21:32:09 UTC
=gnome-base/dconf-0.32.0-r1 is still failing the same.

     Émeric
Comment 16 Sergei Trofimovich (RETIRED) gentoo-dev 2020-07-10 07:18:25 UTC
Yeah, dconf will need to adjust it's defined list: https://gitlab.gnome.org/GNOME/dconf/-/issues/31#note_863598
Comment 17 matoro archtester 2022-05-02 23:58:40 UTC
This bug is still present and worse in =gnome-base/dconf-0.40.0.  There seems to be some sort of toolchain change because it seems ALL symbols are getting included in the dynamic symbol table on ia64.  Comparison

ia64:
$ nm --dynamic --defined-only /var/tmp/portage/gnome-base/dconf-0.40.0/work/dconf-0.40.0-build/gsettings/libdconfsettings.so
0000000000008100 t dconf_changeset_string_ptr_compare
000000000000cb40 t dconf_engine_change_completed
000000000000b800 t dconf_engine_is_writable_changeset_predicate
000000000000dcc0 t dconf_engine_path_has_value_predicate
000000000000b5c0 t dconf_engine_ref
0000000000011cc0 t dconf_engine_source_file_finalize
0000000000011c40 t dconf_engine_source_file_init
0000000000011c80 t dconf_engine_source_file_needs_reopen
0000000000011d00 t dconf_engine_source_file_reopen
0000000000012140 t dconf_engine_source_service_finalize
0000000000012540 t dconf_engine_source_service_init
00000000000124c0 t dconf_engine_source_service_needs_reopen
0000000000012180 t dconf_engine_source_service_reopen
0000000000012600 t dconf_engine_source_system_finalize
0000000000012900 t dconf_engine_source_system_init
0000000000012880 t dconf_engine_source_system_needs_reopen
0000000000012640 t dconf_engine_source_system_reopen
0000000000011f40 t dconf_engine_source_user_finalize
0000000000012080 t dconf_engine_source_user_init
0000000000011ec0 t dconf_engine_source_user_needs_reopen
0000000000011f80 t dconf_engine_source_user_reopen
000000000000c640 t dconf_engine_watch_established
0000000000017e00 t dconf_gdbus_bus_connection_closed
0000000000018700 t dconf_gdbus_method_call
0000000000017c80 t dconf_gdbus_method_call_done
0000000000017dc0 t dconf_gdbus_signal_handler
0000000000018a00 t dconf_gdbus_summon_bus
0000000000018140 t dconf_gdbus_worker_thread
0000000000013640 t dconf_gvdb_utils_add_key
00000000000070c0 t dconf_settings_backend_add_to_changeset
0000000000006d00 t dconf_settings_backend_class_intern_init
0000000000007300 t dconf_settings_backend_finalize
0000000000006c80 t dconf_settings_backend_free_weak_ref
0000000000007080 t dconf_settings_backend_get_writable
0000000000006bc0 t dconf_settings_backend_init
0000000000007280 t dconf_settings_backend_read
0000000000007200 t dconf_settings_backend_read_user_value
00000000000074c0 t dconf_settings_backend_reset
0000000000007040 t dconf_settings_backend_subscribe
0000000000006fc0 t dconf_settings_backend_sync
0000000000007000 t dconf_settings_backend_unsubscribe
0000000000007140 t dconf_settings_backend_write
00000000000073c0 t dconf_settings_backend_write_tree
00000000000196a0 t __do_global_ctors_aux
0000000000006a40 t __do_global_dtors_aux
0000000000007580 T g_io_module_load
00000000000077c0 T g_io_module_query
0000000000007740 T g_io_module_unload
00000000000069c0 t gmon_initializer
0000000000014280 t gvdb_item_free
0000000000014180 t hash_table_insert
0000000000007d00 t unref_gvariant0

vs amd64:
$ nm --dynamic --defined-only /var/tmp/portage/gnome-base/dconf-0.40.0/work/dconf-0.40.0-build/gsettings/libdconfsettings.so
000000000000a3d0 T g_io_module_load
000000000000a480 T g_io_module_query
000000000000a450 T g_io_module_unload


Take for example the first listed symbol in the ia64 output, here is the source:

static gint
dconf_changeset_string_ptr_compare (gconstpointer a_p,
                                    gconstpointer b_p)
{
  const gchar * const *a = a_p;
  const gchar * const *b = b_p;

  return strcmp (*a, *b);
}


A tiny static function used in only one place in one file.  Why would this be included in the dynamic symbol table?  I'm trying to find if we have any flags available that will only include global symbols in the dynamic symbol table.