Description of problem: Linking a simple test program against libcpg fails on ppc64 and ppcl64. For example this: <mock-chroot> sh-4.4# cat test.c #include "corosync/cpg.h" void main () { cpg_join( 0, 0 ); } <mock-chroot> sh-4.4# gcc -o test test.c -lcpg /usr/lib/gcc/ppc64le-redhat-linux/7/../../../../lib64/libcpg.so: undefined reference to `QB_ATTR_SECTION_START' /usr/lib/gcc/ppc64le-redhat-linux/7/../../../../lib64/libcpg.so: undefined reference to `QB_ATTR_SECTION_STOP' collect2: error: ld returned 1 exit status I'm not sure if the issue is in corosynclib or libqb to be honest - libqb.so is a weird linker script that is trying to define those symbols. Version-Release number of selected component (if applicable): corosynclib-devel-2.4.2-5.fc28.ppc64le
It's for sure the libqb but I'm not so sure if this problem is going to be fully solved by libqb or if we would have to have some part of "fix" also in corosync. Libqb upstream bug https://github.com/ClusterLabs/libqb/pull/266 (what I believe is related). @Poki, what is current state of patch? Do you think it solves also this bz? Do we need to add something to corosync to fix this bz?
In this very case, the problem is indeed in libqb itself, for some reason the preprocessor worked differently for ppc64le architecture (and perhaps some others) in comparison to x86_64 (the only tested arch, frankly), resulting in QB_ATTR_SECTION_{START,STOP} not being resolved per expectations. Hence this is not directly related to corosync, but rather a libqb issue, will take a look.
Explanation seems simple for ppc64le: > checking whether GCC supports __attribute__((section()) + ld supports orphan sections... no This circumstance fell out of this picture when crafting a fix and testing on x86_64.
Should be fixed in the (interim) libqb-1.0.2-7.fc28 build, will fix it for f27 preferably once the wider change is ready (worst case: will reuse the same mini fix prior to the freeze deadline). It is not expected any corosync recompilation would be needed at this point. Based on the unit tests, seems like "powerpc" platforms actually support "attribute sections" just as well, at least nowadays, so it would be preferable to stop disabling that feature here unconditionally. However, the cross-combinations enabled-disabled between library and its users needs to be tested first.
Anyway, linking against a library that's itself linked against libqb makes few more entries in the test matrix to go through. Thanks for bringing that into attention.
The library still can not be used even on Rawhide - see Bug 1496425#c1 - though it is reported against F27, the same issue is seen on Rawhide with updated library. Is that what you meant by Comment 5? Should this be reopened?
Yes, thanks for pointing that out, there's an enourmous pile of unanswered items arising from the combinatorical explosion when the world is suddenly not that linear it used to be :-/ (Pandora's box of sorts). Anyway, I hope libqb-1.0.2-10 as of src.fedoraproject.org repo is in a good shape, sadly another roadblock is that armv7hl arch is failing on ipc.test, likely because of timeout that needs to be tweaked, but need to check that first to be sure (https://koji.fedoraproject.org/koji/taskinfo?taskID=22428341).
libqb-1.0.2-10.fc27 has been submitted as an update to Fedora 27. https://bodhi.fedoraproject.org/updates/FEDORA-2017-810447425f
libqb-1.0.2-10.fc27 has been pushed to the Fedora 27 testing repository. If problems still persist, please make note of it in this bug report. See https://fedoraproject.org/wiki/QA:Updates_Testing for instructions on how to install test updates. You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2017-810447425f
libqb-1.0.2-11.fc27 has been submitted as an update to Fedora 27. https://bodhi.fedoraproject.org/updates/FEDORA-2017-810447425f
libqb-1.0.2-11.fc27 has been pushed to the Fedora 27 testing repository. If problems still persist, please make note of it in this bug report. See https://fedoraproject.org/wiki/QA:Updates_Testing for instructions on how to install test updates. You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2017-810447425f
Tom and others, I am sorry to mis-understand/-handle this bug report as it wasn't until now that I've now run into the same problem when rebuilding pacemaker with allegedly fix-complete libqb (https://koji.fedoraproject.org/koji/taskinfo?taskID=22532041). This bug should indeed be targeting corosync, but it's not a corosync bug per se, and the only task here is to rebuild corosync for Fedora 27 and kindly ask for a freeze exception, which is exactly what I am going to do. For analysis, see [bug 1503843 comment 2]. This is nowhere near a trivial problem as the impact seems to be spreading in subtle ways. Thanks for understanding.
corosync-2.4.2-6.fc27 libqb-1.0.2-11.fc27 has been submitted as an update to Fedora 27. https://bodhi.fedoraproject.org/updates/FEDORA-2017-810447425f
Asking for a final freeze exception for these intertwined bugs: - libqb [bug 1478089] - corosync [bug 1487787] <-- this one - pacemaker [bug 1503843] The respective builds are stacked in a single bodhi update: https://bodhi.fedoraproject.org/updates/FEDORA-2017-810447425f
corosync-2.4.2-6.fc27, libqb-1.0.2-11.fc27, pacemaker-1.1.17-2.fc27 has been pushed to the Fedora 27 testing repository. If problems still persist, please make note of it in this bug report. See https://fedoraproject.org/wiki/QA:Updates_Testing for instructions on how to install test updates. You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2017-810447425f
Discussed during the 2017-10-23 blocker review meeting: [1] The decision to classify this bug as an AcceptedFreezeException was made as this affects build and functionality of several packages and dependency chains on non-release-blocking arches, so it would be good to have fixed. [1] https://meetbot.fedoraproject.org/fedora-blocker-review/2017-10-23/f27-blocker-review.2017-10-23-16.00.txt
corosync-2.4.2-6.fc27, libqb-1.0.2-11.fc27, pacemaker-1.1.17-2.fc27 has been pushed to the Fedora 27 stable repository. If problems still persist, please make note of it in this bug report.