Skip to contentSkip to conversation

dbus: fix ptest runtime failures

PATCH In review [email protected] 2 participants 4 messages Sep 5, 2017 – Sep 6, 2017

lore
Share & tools
lore
#0 lore raw

v2 cover dbus: fix ptest runtime failures

From: Kai Kang <[email protected]>

V2:
* Fix typos. It should disable the configure options when ptest is disabled.

The following changes since commit ee5bce2d11e783c0921df47b629025a6b67c44bf:

kernel-dev: Removed bad reference for creating patches. (2017-09-02 00:52:49 +0100)

are available in the git repository at:

git://git.pokylinux.org/poky-contrib kangkai/dbus
http://git.pokylinux.org/cgit.cgi/poky-contrib/log/?h=kangkai/dbus

Kai Kang (1):
dbus: fix ptest runtime failures

 meta/recipes-core/dbus/dbus-test_1.10.20.bb | 3 +++
 meta/recipes-core/dbus/dbus_1.10.20.bb      | 6 +++---
 2 files changed, 6 insertions(+), 3 deletions(-)
Signature · 1 line
2.14.1
#1 lore raw

PATCH v2 1/1 dbus: fix ptest runtime failures

From: Kai Kang <[email protected]>

When run dbus ptest cases, there are some failures:

| ./test/test-dbus-daemon: relocation error: ./test/test-dbus-daemon: symbol
| _dbus_real_assert, version LIBDBUS_PRIVATE_1.10.20 not defined in file
| libdbus-1.so.3 with link time reference
| FAIL: test/test-dbus-daemon
| [   24.943454] test-dbus-daemo[251]: segfault at 0 ip           (null) sp
| 00007ffddabe6818 error 14 in test-dbus-daemon-eavesdrop[ 400000+a000]

It disables tests in dbus recipe which cases symbols missing and segment fault. When 'ptest' in DISTRO_FEATURES, it should enable some configure options to make the symbols visible to ptest cases.

It also need to correct paths in ptest configure files.

---
 meta/recipes-core/dbus/dbus-test_1.10.20.bb | 3 +++
 meta/recipes-core/dbus/dbus_1.10.20.bb      | 6 +++---
 2 files changed, 6 insertions(+), 3 deletions(-)
meta/recipes-core/dbus/dbus-test_1.10.20.bb +3 -0
index eeadb7d35b..d50bbc8fd6 100644
@@ -54,5 +54,8 @@ do_install_ptest() {
 	for i in $l; do install ${B}/bus/.libs/test-$i ${D}${PTEST_PATH}/test; done
 	install ${B}/dbus/.libs/test-dbus ${D}${PTEST_PATH}/test
 	cp -r ${B}/test/data ${D}${PTEST_PATH}/test
+
+	# fix host contamination
+	find ${D} -type f -not -executable -exec sed -i 's:${B}:${PTEST_PATH}:' {} \;
 }
 RDEPENDS_${PN}-ptest += "bash"
meta/recipes-core/dbus/dbus_1.10.20.bb +3 -3
index 9ddedc15fe..010fc51946 100644
@@ -91,8 +91,7 @@ pkg_postinst_dbus() {
 	fi
 }
 
-EXTRA_OECONF = "--disable-tests \
-                --disable-xml-docs \
+EXTRA_OECONF = "--disable-xml-docs \
                 --disable-doxygen-docs \
                 --disable-libaudit \
                 --enable-largefile \
@@ -101,10 +100,11 @@ EXTRA_OECONF = "--disable-tests \
 EXTRA_OECONF_append_class-target = " SYSTEMCTL=${base_bindir}/systemctl"
 EXTRA_OECONF_append_class-native = " --disable-selinux"
 
-PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'systemd x11', d)}"
+PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'ptest systemd x11', d)}"
 PACKAGECONFIG_class-native = ""
 PACKAGECONFIG_class-nativesdk = ""
 
+PACKAGECONFIG[ptest] = "--enable-embedded-tests --enable-asserts --enable-verbose-mode,--disable-embedded-tests --disable-asserts --disable-verbose-mode"
 PACKAGECONFIG[systemd] = "--enable-systemd --with-systemdsystemunitdir=${systemd_system_unitdir},--disable-systemd --without-systemdsystemunitdir,systemd"
 PACKAGECONFIG[x11] = "--with-x --enable-x11-autolaunch,--without-x --disable-x11-autolaunch, virtual/libx11 libsm"
 PACKAGECONFIG[user-session] = "--enable-user-session --with-systemduserunitdir=${systemd_user_unitdir},--disable-user-session"
Signature · 1 line
2.14.1
#2 lore raw
Quoted 4 lines · On 5 September 2017 at 04:13, <[email protected]> wrote:

+PACKAGECONFIG[ptest] = "--enable-embedded-tests --enable-asserts --enable-verbose-mode,--disable-embedded-tests --disable-asserts --disable-verbose-mode"

Same question with V2: does enabling ptest change the dbus daemon in ways that make it slower/less secure/etc.

Ross

author
#3 lore raw
Quoted 8 lines · Ross

On 5 September 2017 at 04:13, <[email protected] <mailto:[email protected]>> wrote:

    +PACKAGECONFIG[ptest] = "--enable-embedded-tests --enable-asserts
    --enable-verbose-mode,--disable-embedded-tests --disable-asserts
    --disable-verbose-mode"

Same question with V2: does enabling ptest change the dbus daemon in ways that make it slower/less secure/etc.

Unfortunately, yes, it affects performace of dbus-daemon. It checks macro DBUS_ENABLE_EMBEDDED_TESTS to add some test codes. I doubt whether has someone deploy image with ptest feature to production environment.

It seems dbus is so fundamental that affect too much. But without them, ptest cases can not PASS. Confusing.

--Kai

Quoted 2 lines

Ross

Signature · 2 lines
Regards,
Neil | Kai Kang