After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 691828 - GstABI and LibsABI checks fail on ARM
GstABI and LibsABI checks fail on ARM
Status: RESOLVED FIXED
Product: GStreamer
Classification: Platform
Component: gstreamer (core)
git master
Other Linux
: Normal normal
: 1.1.1
Assigned To: GStreamer Maintainers
GStreamer Maintainers
Depends on:
Blocks:
 
 
Reported: 2013-01-16 06:17 UTC by Daniel Díaz
Modified: 2013-01-17 09:31 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
make check failing on ARM (68.89 KB, text/x-log)
2013-01-16 06:17 UTC, Daniel Díaz
  Details
0001 Patch to fix ABI check struct sizes for ARM (12.17 KB, patch)
2013-01-17 07:12 UTC, Daniel Díaz
committed Details | Review
0002 Patch to restore ABI checks for ARM (1.23 KB, patch)
2013-01-17 07:13 UTC, Daniel Díaz
committed Details | Review

Description Daniel Díaz 2013-01-16 06:17:11 UTC
Created attachment 233571 [details]
make check failing on ARM

Since GIT revision fac7eb0a5026c8177e9b69bed15935e7ae556029 (at least, which is the first commit I tried to build), `make check` fails on Pandaboard under Ubuntu 12.04.

On 2f1d83a6d1f171e40be7665693a81b44a607b81b it failed like this:
-----8<----------8<----------8<-----
$ make check
[...]
make  check-TESTS
make[3]: Entering directory `/home/ddiaz/.jenkins/workspace/gstreamer-dev/label/pandita-ddiaz/tests/check'
Running suite(s): GstABI
sizeof(GstAllocationParams) is 32, expected 64
sizeof(GstAllocator) is 112, expected 176
sizeof(GstAllocatorClass) is 116, expected 232
sizeof(GstBinClass) is 292, expected 576
sizeof(GstBin) is 248, expected 376
sizeof(GstBuffer) is 80, expected 112
sizeof(GstBufferPoolAcquireParams) is 48, expected 64
sizeof(GstBufferPool) is 88, expected 136
sizeof(GstBufferPoolClass) is 144, expected 288
sizeof(GstBusClass) is 116, expected 232
sizeof(GstBus) is 88, expected 128
sizeof(GstCaps) is 36, expected 64
sizeof(GstChildProxyInterface) is 44, expected 88
sizeof(GstClockClass) is 132, expected 264
sizeof(GstClockEntry) is 72, expected 112
sizeof(GstClock) is 88, expected 128
sizeof(GstControlBinding) is 96, expected 152
sizeof(GstControlBindingClass) is 124, expected 248
sizeof(GstControlSource) is 88, expected 136
sizeof(GstControlSourceClass) is 108, expected 216
sizeof(GstDebugCategory) is 16, expected 24
sizeof(GstElementClass) is 248, expected 488
sizeof(GstElement) is 184, expected 264
sizeof(GstEvent) is 56, expected 88
sizeof(GstFormatDefinition) is 16, expected 32
sizeof(GstGhostPadClass) is 136, expected 272
sizeof(GstGhostPad) is 320, expected 536
sizeof(GstIterator) is 60, expected 120
sizeof(GstMemory) is 60, expected 112
sizeof(GstMapInfo) is 52, expected 104
sizeof(GstMessage) is 80, expected 120
sizeof(GstMeta) is 8, expected 16
sizeof(GstMetaTransformCopy) is 12, expected 24
sizeof(GstMetaInfo) is 40, expected 80
sizeof(GstMiniObject) is 36, expected 64
sizeof(GstObjectClass) is 92, expected 184
sizeof(GstObject) is 64, expected 88
sizeof(GstPadClass) is 116, expected 232
sizeof(GstPad) is 304, expected 520
sizeof(GstPadProbeInfo) is 48, expected 72
sizeof(GstPadTemplateClass) is 112, expected 224
sizeof(GstPadTemplate) is 96, expected 144
sizeof(GstParamSpecFraction) is 64, expected 96
sizeof(GstPipelineClass) is 308, expected 608
sizeof(GstPipeline) is 296, expected 440
sizeof(GstPluginDesc) is 60, expected 112
sizeof(GstPresetInterface) is 56, expected 112
sizeof(GstProxyPadClass) is 120, expected 240
sizeof(GstProxyPad) is 312, expected 528
sizeof(GstQuery) is 40, expected 72
sizeof(GstRegistryClass) is 92, expected 184
sizeof(GstRegistry) is 72, expected 96
sizeof(GstSegment) is 104, expected 120
sizeof(GstStaticCaps) is 24, expected 48
sizeof(GstStaticPadTemplate) is 36, expected 64
sizeof(GstStructure) is 8, expected 16
sizeof(GstSystemClockClass) is 148, expected 296
sizeof(GstSystemClock) is 112, expected 168
sizeof(GstTagList) is 36, expected 64
sizeof(GstTagSetterInterface) is 8, expected 16
sizeof(GstTaskClass) is 112, expected 224
sizeof(GstTask) is 128, expected 200
sizeof(GstTaskPoolClass) is 124, expected 248
sizeof(GstTaskPool) is 88, expected 128
sizeof(GstTocSetterInterface) is 8, expected 16
sizeof(GstTypeFind) is 32, expected 64
sizeof(GstURIHandlerInterface) is 24, expected 48
sizeof(GstValueTable) is 32, expected 64
0%: Checks: 1, Failures: 1, Errors: 0
gstcheck.c:617:F:size check:test_ABI:0: failed ABI check
FAIL: gst/gstabi
[...]
Running suite(s): LibsABI
sizeof(GstBaseParseClass) is 368, expected 728
sizeof(GstBaseParse) is 392, expected 576
sizeof(GstBaseSinkClass) is 400, expected 792
sizeof(GstBaseSink) is 464, expected 664
sizeof(GstBaseSrcClass) is 404, expected 800
sizeof(GstBaseSrc) is 448, expected 648
sizeof(GstBaseTransformClass) is 416, expected 816
sizeof(GstBaseTransform) is 392, expected 576
sizeof(GstBitReader) is 32, expected 56
sizeof(GstByteReader) is 28, expected 48
sizeof(GstByteWriter) is 56, expected 96
sizeof(GstCollectData) is 144, expected 200
sizeof(GstCollectPadsClass) is 108, expected 216
sizeof(GstCollectPads) is 104, expected 152
sizeof(GstARGBControlBindingClass) is 140, expected 280
sizeof(GstARGBControlBinding) is 160, expected 248
sizeof(GstDirectControlBindingClass) is 140, expected 280
sizeof(GstDirectControlBinding) is 168, expected 248
sizeof(GstInterpolationControlSourceClass) is 140, expected 280
sizeof(GstInterpolationControlSource) is 152, expected 240
sizeof(GstLFOControlSourceClass) is 124, expected 248
sizeof(GstLFOControlSource) is 120, expected 184
sizeof(GstTimedValueControlSourceClass) is 124, expected 248
sizeof(GstTimedValueControlSource) is 128, expected 200
sizeof(GstTriggerControlSourceClass) is 140, expected 280
sizeof(GstTriggerControlSource) is 152, expected 240
sizeof(GstNetClientClockClass) is 164, expected 328
sizeof(GstNetClientClock) is 136, expected 208
sizeof(GstNetTimeProviderClass) is 108, expected 216
sizeof(GstNetTimeProvider) is 88, expected 128
sizeof(GstPushSrcClass) is 432, expected 856
sizeof(GstPushSrc) is 464, expected 680
0%: Checks: 1, Failures: 1, Errors: 0
gstcheck.c:617:F:size check:test_ABI:0: failed ABI check
FAIL: libs/libsabi
[...]
==========================================================================
2 of 80 tests failed
Please report to http://bugzilla.gnome.org/enter_bug.cgi?product=GStreamer
==========================================================================
make[3]: *** [check-TESTS] Error 1
make[3]: Leaving directory `/home/ddiaz/.jenkins/workspace/gstreamer-dev/label/pandita-ddiaz/tests/check'
make[2]: *** [check-am] Error 2
make[2]: Leaving directory `/home/ddiaz/.jenkins/workspace/gstreamer-dev/label/pandita-ddiaz/tests/check'
make[1]: *** [check-recursive] Error 1
make[1]: Leaving directory `/home/ddiaz/.jenkins/workspace/gstreamer-dev/label/pandita-ddiaz/tests'
make: *** [check-recursive] Error 1
----->8---------->8---------->8-----

Complete log is attached.
Comment 1 Tim-Philipp Müller 2013-01-16 11:34:11 UTC
commit 47c2fc4abacf63c138bfbc261c030175c7791685
Author: Tim-Philipp Müller <tim.muller@collabora.co.uk>
Date:   Wed Jan 16 11:29:47 2013 +0000

    tests: disable ABI checks for architectures where the struct sizes are not up-to-date
    
    https://bugzilla.gnome.org/show_bug.cgi?id=691828


Could you make this change in both tests/check/gst/gstabi.c and tests/check/libs/libsabi.c:


 #ifdef HAVE_CPU_ARM
 #include "struct_arm.h"
-#define HAVE_ABI_SIZES TRUE
+#define HAVE_ABI_SIZES FALSE
 #else

and then:

 $ cd tests/check/
 $ GST_ABI=gst/struct_arm.h make gst/gstabi.check
 $ GST_ABI=libs/struct_arm.h make libs/libsabi.check
 $ git commit --author='you@foo.bar' -m 'tests: fix ABI check struct sizes for ARM' gst/struct_arm.h libs/struct_arm.h
 $ git format-patch -1

then attach the resulting file, thanks!
Comment 2 Daniel Díaz 2013-01-17 07:12:56 UTC
Created attachment 233652 [details] [review]
0001 Patch to fix ABI check struct sizes for ARM
Comment 3 Daniel Díaz 2013-01-17 07:13:28 UTC
Created attachment 233653 [details] [review]
0002 Patch to restore ABI checks for ARM
Comment 4 Daniel Díaz 2013-01-17 07:16:31 UTC
Patches applied on top of e90d271.

With that...
-----8<----------8<----------8<-----
[...]
Running suite(s): GstABI
100%: Checks: 1, Failures: 0, Errors: 0
[...]
Running suite(s): LibsABI
100%: Checks: 1, Failures: 0, Errors: 0
[...]
===================
All 80 tests passed
===================
[...]
----->8---------->8---------->8-----
Comment 5 Tim-Philipp Müller 2013-01-17 09:30:37 UTC
Thanks! Feel like doing the same for gst-plugins-base? There's a libs/libsabi check as well I believe.

commit a26a98209b0df4bfffa079e7cd7e94c565bc6806
Author: Daniel Díaz <yosoy@danieldiaz.org>
Date:   Thu Jan 17 00:38:14 2013 -0600

    tests: fix ABI check struct sizes for ARM
    
    and re-enable ABI check for ARM.
    
    https://bugzilla.gnome.org/show_bug.cgi?id=691828