Mir

valgrind on armhf fails with with many errors

Bug #1435186 reported by Daniel van Vugt
12
This bug affects 2 people
Affects Status Importance Assigned to Milestone
Mir
Fix Released
High
Alexandros Frantzis
0.12
Fix Released
High
Alexandros Frantzis
mir (Ubuntu)
Fix Released
Medium
Unassigned

Bug Description

Valgrind is now failing on armhf. Both in CI and when tested manually.

This is the first and most obvious error, but there are more...

[ RUN ] UdevWrapperDeathTest.DereferencingEndReturnsInvalidObject
==10542== Invalid write of size 4
==10542== at 0x4ECA00C: ??? (in /lib/arm-linux-gnueabihf/libc-2.21.so)
==10542== Address 0xbdbafa88 is on thread 1's stack
==10542== 16 bytes below stack pointer
==10542==
==10542== Conditional jump or move depends on uninitialised value(s)
==10542== at 0x4ECA118: __udivmoddi4 (in /lib/arm-linux-gnueabihf/libc-2.21.so)
==10542==
==10542== Use of uninitialised value of size 4
==10542== at 0x4ECA11A: __udivmoddi4 (in /lib/arm-linux-gnueabihf/libc-2.21.so)
==10542==
==10542== Use of uninitialised value of size 4
==10542== at 0x4ECA018: ??? (in /lib/arm-linux-gnueabihf/libc-2.21.so)
==10542==
==10611==
==10611== Process terminating with default action of signal 11 (SIGSEGV)
==10611== Bad permissions for mapped region at address 0x2CDA000
==10611== at 0x2CDA000: ??? (in /home/phablet/mir/dev/bin/.mir_unit_tests-uninstalled)
==10611==
==10611== HEAP SUMMARY:
==10611== in use at exit: 392,022 bytes in 7,695 blocks
==10611== total heap usage: 19,288 allocs, 11,593 frees, 1,117,616 bytes allocated
==10611==
==10611== LEAK SUMMARY:
==10611== definitely lost: 0 bytes in 0 blocks
==10611== indirectly lost: 0 bytes in 0 blocks
==10611== possibly lost: 137,447 bytes in 3,483 blocks
==10611== still reachable: 254,507 bytes in 4,211 blocks
==10611== suppressed: 0 bytes in 0 blocks
==10611== Reachable blocks (those to which a pointer was found) are not shown.
==10611== To see them, rerun with: --leak-check=full --show-leak-kinds=all
==10611==
==10611== For counts of detected and suppressed errors, rerun with: -v
==10611== Use --track-origins=yes to see where uninitialised values come from
==10611== ERROR SUMMARY: 55 errors from 4 contexts (suppressed: 6 from 6)

Tags: testsfail

Related branches

Changed in mir (Ubuntu):
importance: Undecided → Medium
summary: - valgrind on armhf fails with errors on __udivmoddi4
+ valgrind on armhf fails with with many errors
Revision history for this message
Daniel van Vugt (vanvugt) wrote :

Logs from valgrind of unit tests on mako.

Revision history for this message
Daniel van Vugt (vanvugt) wrote :

Logs from valgrind of integration tests on mako.

Revision history for this message
Daniel van Vugt (vanvugt) wrote :

Logs from valgrind of acceptance tests on mako.

Changed in mir:
assignee: nobody → Alexandros Frantzis (afrantzis)
status: New → In Progress
Changed in mir:
status: In Progress → Fix Committed
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package mir - 0.12.1+15.04.20150324-0ubuntu1

---------------
mir (0.12.1+15.04.20150324-0ubuntu1) vivid; urgency=medium

  [ Alexandros Frantzis ]
  * New upstream release 0.12.1 (https://launchpad.net/mir/+milestone/0.12.1)
    - Bug fixes:
      . [regression] mali, powervr locks up with around the introduction or
        removal of a third overlay (LP: #1413211)
      . USC - mouse cursor on AMD graphics is drawing incorrectly
        (LP: #1417581)
      . mir_demo_server doesn't emit hover_exit events (LP: #1418569)
      . SessionMediator locks mutexes in one thread and unlocks them in
        another (LP: #1427976)
      . ProtobufResponder::send_response_result race (LP: #1428402)
      . Some protobuf Closure objects can access dead objects (LP: #1433330)
      . DisplayConfigurationOutput.physical_size_mm is undefined/zero
        (LP: #1430315)
      . vivid fails to build Mir as of 2015-03-22: error: #warning
        "_BSD_SOURCE and _SVID_SOURCE are deprecated, use _DEFAULT_SOURCE"
        [-Werror=cpp] (LP: #1435127)
      . valgrind on armhf fails with with many errors (LP: #1435186)
 -- CI Train Bot <email address hidden> Tue, 24 Mar 2015 16:09:54 +0000

Changed in mir (Ubuntu):
status: New → Fix Released
Changed in mir:
status: Fix Committed → Fix Released
Revision history for this message
StephanBeal (sgbeal) wrote :

This, or something indistinguishable from it, is still happening in Ubunut 15.10:

[odroid@host:~/fossil/cwal/s2]$ cat /etc/issue
Ubuntu 15.10 \n \l

[odroid@host:~/fossil/cwal/s2]$ uname -a
Linux odroid 3.8.13.30 #1 SMP PREEMPT Fri Feb 20 14:34:08 BRST 2015 armv7l armv7l armv7l GNU/Linux

[odroid@host:~/fossil/cwal/s2]$ valgrind --version
valgrind-3.11.0

[odroid@host:~/fossil/cwal/s2]$ gcc --version
gcc-5.real (Ubuntu 5.2.1-22ubuntu2) 5.2.1 20151010
...

but my repro case is not trivial. The errors are very similar, though:

==5160== HEAP SUMMARY:
==5160== in use at exit: 0 bytes in 0 blocks
==5160== total heap usage: 596 allocs, 596 frees, 22,345 bytes allocated
==5160==
==5160== All heap blocks were freed -- no leaks are possible
==5160==
==5160== ERROR SUMMARY: 2240 errors from 4 contexts (suppressed: 3 from 3)
==5160==
==5160== 448 errors in context 1 of 4:
==5160== Use of uninitialised value of size 4
==5160== at 0x6A850: ??? (in /home/odroid/fossil/cwal/s2/s2sh)
==5160== Uninitialised value was created by a stack allocation
==5160== at 0x6A844: ??? (in /home/odroid/fossil/cwal/s2/s2sh)
==5160==
==5160==
==5160== 448 errors in context 2 of 4:
==5160== Use of uninitialised value of size 4
==5160== at 0x6A956: __udivmoddi4 (in /home/odroid/fossil/cwal/s2/s2sh)
==5160== Uninitialised value was created by a stack allocation
==5160== at 0x6A844: ??? (in /home/odroid/fossil/cwal/s2/s2sh)
==5160==
==5160==
==5160== 448 errors in context 3 of 4:
==5160== Conditional jump or move depends on uninitialised value(s)
==5160== at 0x6A954: __udivmoddi4 (in /home/odroid/fossil/cwal/s2/s2sh)
==5160== Uninitialised value was created by a stack allocation
==5160== at 0x6A844: ??? (in /home/odroid/fossil/cwal/s2/s2sh)
==5160==
==5160==
==5160== 896 errors in context 4 of 4:
==5160== Invalid write of size 4
==5160== at 0x6A844: ??? (in /home/odroid/fossil/cwal/s2/s2sh)
==5160== Address 0xbdaf5890 is on thread 1's stack
==5160== 16 bytes below stack pointer

none of these show up on x86/64, and the lack of symbol names/locations is inexplicable, as all code is built with -g (debugging).

Revision history for this message
Daniel van Vugt (vanvugt) wrote :

This bug is about running valgrind on Mir specifically :)

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.