ika-rwth-aachen / etsi_its_messages

ROS / ROS 2 Support for ETSI ITS Messages for V2X Communication
MIT License
43 stars 8 forks source link

fix: Converter memleak #21

Closed v0-e closed 3 months ago

v0-e commented 3 months ago

Frees the memory of the allocations done by asn1c. I'm gonna ask you guys to please test this one as I don't have an UDP-based setup to test this node.

lreiher commented 3 months ago

Thank you, changes are looking reasonable! I have tried to perform some super simple testing, but perhaps it's not detailed enough, see below. I might still try to test this further.


I have used publish_cam.py to publish 10.000 CAMs at 100Hz. I have monitored memory usage of the conversion node before and after using below command.

ps -p $PID -o pid,vsz,rss,comm

This is the result on the current main (5922481239c8b786bd36059ddedfe997a6a8aa9e), before/after:

    PID    VSZ   RSS COMMAND
 360247 637280 25728 etsi_its_conver
    PID    VSZ   RSS COMMAND
 360247 645068 32640 etsi_its_conver

This is the result including your improvements, before/after:

    PID    VSZ   RSS COMMAND
 474141 637276 25728 etsi_its_conver
    PID    VSZ   RSS COMMAND
 474141 638332 26496 etsi_its_conver

In both cases, the VSZ and RSS numbers grow, although they grow less on your branch.

v0-e commented 3 months ago

Thanks for testing @lreiher. Looks better indeed, however I'm also afraid it is not detailed enough. This increase in memory usage can be normal or not. Usually profiling tools like Valgrind or ASan point right away to the source of any memory leaks.

lreiher commented 3 months ago

I just ran valgrind --leak-check=full --track-origins=yes on the node and published 100 CAMs. Here's the output summaries. The situation has definitely been improved (see definitely lost), however, I'm not yet able to tell where the remaining bytes are lost. I have also attached the full valgrind outputs for reference.

Leak summary (main)

==81132== LEAK SUMMARY:
==81132==    definitely lost: 70,240 bytes in 192 blocks
==81132==    indirectly lost: 3,265 bytes in 12 blocks
==81132==      possibly lost: 2,136 bytes in 1 blocks
==81132==    still reachable: 72,349 bytes in 229 blocks
==81132==         suppressed: 0 bytes in 0 blocks
==81132== Reachable blocks (those to which a pointer was found) are not shown.
==81132== To see them, rerun with: --leak-check=full --show-leak-kinds=all
==81132==
==81132== For lists of detected and suppressed errors, rerun with: -s
==81132== ERROR SUMMARY: 7 errors from 7 contexts (suppressed: 0 from 0)

Leak summary (these improvements on main)

==117697== LEAK SUMMARY:
==117697==    definitely lost: 6,576 bytes in 102 blocks
==117697==    indirectly lost: 3,265 bytes in 12 blocks
==117697==      possibly lost: 2,136 bytes in 1 blocks
==117697==    still reachable: 66,746 bytes in 181 blocks
==117697==         suppressed: 0 bytes in 0 blocks
==117697== Reachable blocks (those to which a pointer was found) are not shown.
==117697== To see them, rerun with: --leak-check=full --show-leak-kinds=all
==117697==
==117697== For lists of detected and suppressed errors, rerun with: -s
==117697== ERROR SUMMARY: 6 errors from 6 contexts (suppressed: 0 from 0)

Full output (main) ``` dockeruser@9fb7c541a607:~/ws$ valgrind --leak-check=full --track-origins=yes /home/dockeruser/ws/install/etsi_its_conversion/lib/etsi_its_conversion/etsi_its_conversion_node --ros-args -r __node:=etsi_its_conversion -r /etsi_its_conversion/udp/out:=/etsi_its_conversion/udp/in -p has_btp_destination_port:=true -p btp_destination_port_offset:=0 -p etsi_message_payload_offset:=4 ==81132== Memcheck, a memory error detector ==81132== Copyright (C) 2002-2017, and GNU GPL'd, by Julian Seward et al. ==81132== Using Valgrind-3.18.1 and LibVEX; rerun with -h for copyright info ==81132== Command: /home/dockeruser/ws/install/etsi_its_conversion/lib/etsi_its_conversion/etsi_its_conversion_node --ros-args -r __node:=etsi_its_conversion -r /etsi_its_conversion/udp/out:=/etsi_its_conversion/udp/in -p has_btp_destination_port:=true -p btp_destination_port_offset:=0 -p etsi_message_payload_offset:=4 ==81132== [INFO] [1720605605.424418541] [etsi_its_conversion]: Converting UDP messages of type CAM on '/etsi_its_conversion/udp/in' to native ROS messages on '/etsi_its_conversion/cam/out' [INFO] [1720605605.452760350] [etsi_its_conversion]: Converting native ROS CAMs on '/etsi_its_conversion/cam/in' to UDP messages on '/etsi_its_conversion/udp/in' [INFO] [1720605605.573490320] [etsi_its_conversion]: Converting UDP messages of type DENM on '/etsi_its_conversion/udp/in' to native ROS messages on '/etsi_its_conversion/denm/out' [INFO] [1720605605.574668740] [etsi_its_conversion]: Converting native ROS DENMs on '/etsi_its_conversion/denm/in' to UDP messages on '/etsi_its_conversion/udp/in' [INFO] [1720605605.715202387] [etsi_its_conversion]: Converting UDP messages of type CPM on '/etsi_its_conversion/udp/in' to native ROS messages on '/etsi_its_conversion/cpm_ts/out' [INFO] [1720605605.716343498] [etsi_its_conversion]: Converting native ROS CPMs on '/etsi_its_conversion/cpm_ts/in' to UDP messages on '/etsi_its_conversion/udp/in' [INFO] [1720605606.339855319] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605606.371516166] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605606.382588740] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605606.385630817] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605606.391398242] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605606.394411510] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605606.438463388] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605606.441955489] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605606.538498538] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605606.543630784] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605606.640747404] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605606.646639834] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605606.740754294] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605606.746641885] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605606.840736275] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605606.846640614] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605606.940683418] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605606.946572709] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605607.040753637] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605607.048546103] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605607.140810577] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605607.146711648] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605607.240727491] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605607.246653352] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605607.340700696] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605607.346593027] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605607.440774546] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605607.446737954] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605607.540722200] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605607.546633849] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605607.640697600] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605607.646609901] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605607.740698734] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605607.746607443] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605607.840718625] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605607.846622235] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605607.940678488] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605607.946559628] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605608.040716546] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605608.046718944] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605608.141702995] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605608.147758440] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605608.240683762] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605608.246600811] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605608.340677523] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605608.346591983] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605608.440639436] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605608.446552007] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605608.540650597] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605608.546543647] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605608.640694365] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605608.646584326] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605608.741470240] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605608.747491447] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605608.840710906] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605608.846670545] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605608.940726340] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605608.946640640] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605609.040779889] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605609.048988370] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605609.141520816] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605609.147674237] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605609.240670317] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605609.246554247] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605609.340684807] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605609.346580498] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605609.440653471] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605609.446571431] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605609.540636244] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605609.546533505] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605609.640649634] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605609.646603313] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605609.740650177] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605609.746559457] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605609.840656549] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605609.846591858] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605609.940695310] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605609.946586231] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605610.040662773] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605610.046605551] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605610.140639646] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605610.146536106] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605610.240622869] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605610.246526388] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605610.340649399] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605610.346548490] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605610.440638761] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605610.446587921] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605610.540634523] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605610.546557613] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605610.640670515] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605610.646583565] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605610.740678767] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605610.746582767] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605610.840652386] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605610.846743841] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605610.940639123] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605610.946534212] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605611.040624416] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605611.046566594] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605611.140643817] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605611.146499348] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605611.240623460] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605611.246524089] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605611.340659321] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605611.346543081] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605611.440607523] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605611.446463144] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605611.540692102] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605611.546592452] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605611.640617547] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605611.646505636] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605611.740666637] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605611.746565397] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605611.841005698] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605611.846980035] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605611.940759589] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605611.946772204] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605612.040681134] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605612.048406302] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605612.141070863] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605612.147126878] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605612.240639862] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605612.248987448] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605612.341456287] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605612.347408105] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605612.440636636] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605612.446524407] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605612.540652888] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605612.546780721] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605612.640666379] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605612.646546650] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605612.740675573] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605612.746594621] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605612.840665366] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605612.846557506] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605612.940605691] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605612.946503950] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605613.040621972] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605613.046562472] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605613.140623135] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605613.146566814] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605613.240655849] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605613.246552318] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605613.340598733] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605613.346537201] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605613.440692623] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605613.446631993] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605613.540667827] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605613.546570337] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605613.640684064] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605613.646581686] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605613.740732881] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605613.746636050] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605613.840639025] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605613.846487216] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605613.940676246] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605613.946565667] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605614.040661960] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605614.046604869] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605614.140619075] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605614.146602211] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605614.240613998] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605614.246510289] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605614.340678434] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605614.346580105] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605614.440671563] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605614.446568862] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605614.540625087] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605614.546509588] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605614.640636139] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605614.646498620] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605614.740645112] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605614.746510772] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605614.840615945] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605614.846562274] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605614.940602728] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605614.946536138] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605615.040650679] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605615.046607826] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605615.140651021] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605615.146534022] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605615.240724018] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605615.246625250] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605615.340607938] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605615.346514509] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605615.440619912] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605615.446524331] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message ^C[INFO] [1720605618.070537557] [rclcpp]: signal_handler(signum=2) ==81132== ==81132== HEAP SUMMARY: ==81132== in use at exit: 147,990 bytes in 434 blocks ==81132== total heap usage: 50,375 allocs, 49,941 frees, 7,724,102 bytes allocated ==81132== ==81132== 143 (64 direct, 79 indirect) bytes in 1 blocks are definitely lost in loss record 66 of 108 ==81132== at 0x4849013: operator new(unsigned long) (in /usr/libexec/valgrind/vgpreload_memcheck-amd64-linux.so) ==81132== by 0x50C6A23: ??? (in /opt/ros/humble/lib/librosidl_typesupport_cpp.so) ==81132== by 0x55DEE38: ??? ==81132== by 0x55BD077: ??? ==81132== by 0x55BD276: ??? ==81132== by 0x55BEF3B: ??? ==81132== by 0x4F2C1F9: rcl_node_init (in /opt/ros/humble/lib/librcl.so) ==81132== by 0x496283C: rclcpp::node_interfaces::NodeBase::NodeBase(std::__cxx11::basic_string, std::allocator > const&, std::__cxx11::basic_string, std::allocator > const&, std::shared_ptr, rcl_node_options_s const&, bool, bool) (in /opt/ros/humble/lib/librclcpp.so) ==81132== by 0x495A786: rclcpp::Node::Node(std::__cxx11::basic_string, std::allocator > const&, std::__cxx11::basic_string, std::allocator > const&, rclcpp::NodeOptions const&) (in /opt/ros/humble/lib/librclcpp.so) ==81132== by 0x495B9B7: rclcpp::Node::Node(std::__cxx11::basic_string, std::allocator > const&, rclcpp::NodeOptions const&) (in /opt/ros/humble/lib/librclcpp.so) ==81132== by 0x6DDC814: etsi_its_conversion::Converter::Converter(rclcpp::NodeOptions const&) (in /docker-ros/ws/install/etsi_its_conversion/lib/libetsi_its_conversion.so) ==81132== by 0x6F3520E: void __gnu_cxx::new_allocator::construct(etsi_its_conversion::Converter*, rclcpp::NodeOptions const&) (in /docker-ros/ws/install/etsi_its_conversion/lib/libetsi_its_conversion.so) ==81132== ==81132== 296 (192 direct, 104 indirect) bytes in 1 blocks are definitely lost in loss record 79 of 108 ==81132== at 0x4849013: operator new(unsigned long) (in /usr/libexec/valgrind/vgpreload_memcheck-amd64-linux.so) ==81132== by 0x55B4F79: ??? ==81132== by 0x55C2E67: ??? ==81132== by 0x4F32C47: rcl_wait_set_init (in /opt/ros/humble/lib/librcl.so) ==81132== by 0x494324D: rclcpp::Executor::Executor(rclcpp::ExecutorOptions const&) (in /opt/ros/humble/lib/librclcpp.so) ==81132== by 0x4946ABC: rclcpp::executors::SingleThreadedExecutor::SingleThreadedExecutor(rclcpp::ExecutorOptions const&) (in /opt/ros/humble/lib/librclcpp.so) ==81132== by 0x10CD87: main (in /docker-ros/ws/install/etsi_its_conversion/lib/etsi_its_conversion/etsi_its_conversion_node) ==81132== ==81132== 514 (16 direct, 498 indirect) bytes in 1 blocks are definitely lost in loss record 85 of 108 ==81132== at 0x4849013: operator new(unsigned long) (in /usr/libexec/valgrind/vgpreload_memcheck-amd64-linux.so) ==81132== by 0x6DFBE62: void class_loader::impl::registerPlugin, rclcpp_components::NodeFactory>(std::__cxx11::basic_string, std::allocator > const&, std::__cxx11::basic_string, std::allocator > const&) (in /docker-ros/ws/install/etsi_its_conversion/lib/libetsi_its_conversion.so) ==81132== by 0x6DDC65C: (anonymous namespace)::ProxyExec0::ProxyExec0() (in /docker-ros/ws/install/etsi_its_conversion/lib/libetsi_its_conversion.so) ==81132== by 0x6DE2282: __static_initialization_and_destruction_0(int, int) (in /docker-ros/ws/install/etsi_its_conversion/lib/libetsi_its_conversion.so) ==81132== by 0x6DE2AF6: _GLOBAL__sub_I_Converter.cpp (in /docker-ros/ws/install/etsi_its_conversion/lib/libetsi_its_conversion.so) ==81132== by 0x400647D: call_init.part.0 (dl-init.c:70) ==81132== by 0x4006567: call_init (dl-init.c:33) ==81132== by 0x4006567: _dl_init (dl-init.c:117) ==81132== by 0x4E4AAF4: _dl_catch_exception (dl-error-skeleton.c:182) ==81132== by 0x400DFF5: dl_open_worker (dl-open.c:808) ==81132== by 0x400DFF5: dl_open_worker (dl-open.c:771) ==81132== by 0x4E4AA97: _dl_catch_exception (dl-error-skeleton.c:208) ==81132== by 0x400E34D: _dl_open (dl-open.c:883) ==81132== by 0x4D6663B: dlopen_doit (dlopen.c:56) ==81132== ==81132== 2,136 bytes in 1 blocks are possibly lost in loss record 98 of 108 ==81132== at 0x4848899: malloc (in /usr/libexec/valgrind/vgpreload_memcheck-amd64-linux.so) ==81132== by 0x56EF34C: ??? ==81132== by 0x56A74A9: ??? ==81132== by 0x56C5B92: ??? ==81132== by 0x56DC351: ??? ==81132== by 0x55C2D01: ??? ==81132== by 0x4F16E05: ??? (in /opt/ros/humble/lib/librcl.so) ==81132== by 0x495195F: rclcpp::GuardCondition::GuardCondition(std::shared_ptr, rcl_guard_condition_options_s) (in /opt/ros/humble/lib/librclcpp.so) ==81132== by 0x4942DA7: rclcpp::Executor::Executor(rclcpp::ExecutorOptions const&) (in /opt/ros/humble/lib/librclcpp.so) ==81132== by 0x4946ABC: rclcpp::executors::SingleThreadedExecutor::SingleThreadedExecutor(rclcpp::ExecutorOptions const&) (in /opt/ros/humble/lib/librclcpp.so) ==81132== by 0x10CD87: main (in /docker-ros/ws/install/etsi_its_conversion/lib/etsi_its_conversion/etsi_its_conversion_node) ==81132== ==81132== 2,616 (32 direct, 2,584 indirect) bytes in 1 blocks are definitely lost in loss record 99 of 108 ==81132== at 0x4848899: malloc (in /usr/libexec/valgrind/vgpreload_memcheck-amd64-linux.so) ==81132== by 0x56EF34C: ??? ==81132== by 0x56EF37D: ??? ==81132== by 0x56CC9F3: ??? ==81132== by 0x56C5B97: ??? ==81132== by 0x56DC351: ??? ==81132== by 0x55C2D01: ??? ==81132== by 0x4F16E05: ??? (in /opt/ros/humble/lib/librcl.so) ==81132== by 0x495195F: rclcpp::GuardCondition::GuardCondition(std::shared_ptr, rcl_guard_condition_options_s) (in /opt/ros/humble/lib/librclcpp.so) ==81132== by 0x4942DA7: rclcpp::Executor::Executor(rclcpp::ExecutorOptions const&) (in /opt/ros/humble/lib/librclcpp.so) ==81132== by 0x4946ABC: rclcpp::executors::SingleThreadedExecutor::SingleThreadedExecutor(rclcpp::ExecutorOptions const&) (in /opt/ros/humble/lib/librclcpp.so) ==81132== by 0x10CD87: main (in /docker-ros/ws/install/etsi_its_conversion/lib/etsi_its_conversion/etsi_its_conversion_node) ==81132== ==81132== 6,016 bytes in 94 blocks are definitely lost in loss record 103 of 108 ==81132== at 0x484DCD3: realloc (in /usr/libexec/valgrind/vgpreload_memcheck-amd64-linux.so) ==81132== by 0x7074A07: dynamic_encoder_cb (in /docker-ros/ws/install/etsi_its_cam_coding/lib/libetsi_its_cam_coding.so) ==81132== by 0x7089BFE: _uper_encode_flush_outp (in /docker-ros/ws/install/etsi_its_cam_coding/lib/libetsi_its_cam_coding.so) ==81132== by 0x708988E: uper_encode (in /docker-ros/ws/install/etsi_its_cam_coding/lib/libetsi_its_cam_coding.so) ==81132== by 0x7075273: asn_encode_internal (in /docker-ros/ws/install/etsi_its_cam_coding/lib/libetsi_its_cam_coding.so) ==81132== by 0x7074E85: asn_encode_to_new_buffer (in /docker-ros/ws/install/etsi_its_cam_coding/lib/libetsi_its_cam_coding.so) ==81132== by 0x6DE081B: etsi_its_conversion::Converter::rosCallbackCam(std::unique_ptr >, std::default_delete > > >) (in /docker-ros/ws/install/etsi_its_conversion/lib/libetsi_its_conversion.so) ==81132== by 0x6E8C5C4: void std::__invoke_impl >, std::default_delete > > >), etsi_its_conversion::Converter*&, std::unique_ptr >, std::default_delete > > > >(std::__invoke_memfun_deref, void (etsi_its_conversion::Converter::*&)(std::unique_ptr >, std::default_delete > > >), etsi_its_conversion::Converter*&, std::unique_ptr >, std::default_delete > > >&&) (in /docker-ros/ws/install/etsi_its_conversion/lib/libetsi_its_conversion.so) ==81132== by 0x6E88346: std::__invoke_result >, std::default_delete > > >), etsi_its_conversion::Converter*&, std::unique_ptr >, std::default_delete > > > >::type std::__invoke >, std::default_delete > > >), etsi_its_conversion::Converter*&, std::unique_ptr >, std::default_delete > > > >(void (etsi_its_conversion::Converter::*&)(std::unique_ptr >, std::default_delete > > >), etsi_its_conversion::Converter*&, std::unique_ptr >, std::default_delete > > >&&) (in /docker-ros/ws/install/etsi_its_conversion/lib/libetsi_its_conversion.so) ==81132== by 0x6E83A51: void std::_Bind))(std::unique_ptr >, std::default_delete > > >)>::__call >, std::default_delete > > >&&, 0ul, 1ul>(std::tuple >, std::default_delete > > >&&>&&, std::_Index_tuple<0ul, 1ul>) (in /docker-ros/ws/install/etsi_its_conversion/lib/libetsi_its_conversion.so) ==81132== by 0x6E7E6E1: void std::_Bind))(std::unique_ptr >, std::default_delete > > >)>::operator() >, std::default_delete > > >, void>(std::unique_ptr >, std::default_delete > > >&&) (in /docker-ros/ws/install/etsi_its_conversion/lib/libetsi_its_conversion.so) ==81132== by 0x6E75986: void std::__invoke_impl))(std::unique_ptr >, std::default_delete > > >)>&, std::unique_ptr >, std::default_delete > > > >(std::__invoke_other, std::_Bind))(std::unique_ptr >, std::default_delete > > >)>&, std::unique_ptr >, std::default_delete > > >&&) (in /docker-ros/ws/install/etsi_its_conversion/lib/libetsi_its_conversion.so) ==81132== ==81132== 63,920 bytes in 94 blocks are definitely lost in loss record 108 of 108 ==81132== at 0x484DA83: calloc (in /usr/libexec/valgrind/vgpreload_memcheck-amd64-linux.so) ==81132== by 0x7084E1B: SEQUENCE_decode_uper (in /docker-ros/ws/install/etsi_its_cam_coding/lib/libetsi_its_cam_coding.so) ==81132== by 0x70895E4: uper_decode (in /docker-ros/ws/install/etsi_its_cam_coding/lib/libetsi_its_cam_coding.so) ==81132== by 0x70893BB: uper_decode_complete (in /docker-ros/ws/install/etsi_its_cam_coding/lib/libetsi_its_cam_coding.so) ==81132== by 0x7075756: asn_decode (in /docker-ros/ws/install/etsi_its_cam_coding/lib/libetsi_its_cam_coding.so) ==81132== by 0x6DDF6F7: etsi_its_conversion::Converter::udpCallback(std::unique_ptr >, std::default_delete > > >) (in /docker-ros/ws/install/etsi_its_conversion/lib/libetsi_its_conversion.so) ==81132== by 0x6E8BB0A: void std::__invoke_impl >, std::default_delete > > >), etsi_its_conversion::Converter*&, std::unique_ptr >, std::default_delete > > > >(std::__invoke_memfun_deref, void (etsi_its_conversion::Converter::*&)(std::unique_ptr >, std::default_delete > > >), etsi_its_conversion::Converter*&, std::unique_ptr >, std::default_delete > > >&&) (in /docker-ros/ws/install/etsi_its_conversion/lib/libetsi_its_conversion.so) ==81132== by 0x6E87AF0: std::__invoke_result >, std::default_delete > > >), etsi_its_conversion::Converter*&, std::unique_ptr >, std::default_delete > > > >::type std::__invoke >, std::default_delete > > >), etsi_its_conversion::Converter*&, std::unique_ptr >, std::default_delete > > > >(void (etsi_its_conversion::Converter::*&)(std::unique_ptr >, std::default_delete > > >), etsi_its_conversion::Converter*&, std::unique_ptr >, std::default_delete > > >&&) (in /docker-ros/ws/install/etsi_its_conversion/lib/libetsi_its_conversion.so) ==81132== by 0x6E82F71: void std::_Bind))(std::unique_ptr >, std::default_delete > > >)>::__call >, std::default_delete > > >&&, 0ul, 1ul>(std::tuple >, std::default_delete > > >&&>&&, std::_Index_tuple<0ul, 1ul>) (in /docker-ros/ws/install/etsi_its_conversion/lib/libetsi_its_conversion.so) ==81132== by 0x6E7D941: void std::_Bind))(std::unique_ptr >, std::default_delete > > >)>::operator() >, std::default_delete > > >, void>(std::unique_ptr >, std::default_delete > > >&&) (in /docker-ros/ws/install/etsi_its_conversion/lib/libetsi_its_conversion.so) ==81132== by 0x6E738A0: void std::__invoke_impl))(std::unique_ptr >, std::default_delete > > >)>&, std::unique_ptr >, std::default_delete > > > >(std::__invoke_other, std::_Bind))(std::unique_ptr >, std::default_delete > > >)>&, std::unique_ptr >, std::default_delete > > >&&) (in /docker-ros/ws/install/etsi_its_conversion/lib/libetsi_its_conversion.so) ==81132== by 0x6E66144: std::enable_if))(std::unique_ptr >, std::default_delete > > >)>&, std::unique_ptr >, std::default_delete > > > >, void>::type std::__invoke_r))(std::unique_ptr >, std::default_delete > > >)>&, std::unique_ptr >, std::default_delete > > > >(std::_Bind))(std::unique_ptr >, std::default_delete > > >)>&, std::unique_ptr >, std::default_delete > > >&&) (in /docker-ros/ws/install/etsi_its_conversion/lib/libetsi_its_conversion.so) ==81132== ==81132== LEAK SUMMARY: ==81132== definitely lost: 70,240 bytes in 192 blocks ==81132== indirectly lost: 3,265 bytes in 12 blocks ==81132== possibly lost: 2,136 bytes in 1 blocks ==81132== still reachable: 72,349 bytes in 229 blocks ==81132== suppressed: 0 bytes in 0 blocks ==81132== Reachable blocks (those to which a pointer was found) are not shown. ==81132== To see them, rerun with: --leak-check=full --show-leak-kinds=all ==81132== ==81132== For lists of detected and suppressed errors, rerun with: -s ==81132== ERROR SUMMARY: 7 errors from 7 contexts (suppressed: 0 from 0) ```
Full output (these improvements on main) ``` dockeruser@9fb7c541a607:~/ws$ valgrind --leak-check=full --track-origins=yes /home/dockeruser/ws/install/etsi_its_conversion/lib/etsi_its_conversion/etsi_its_conversion_node --ros-args -r __node:=etsi_its_conversion -r /etsi_its_conversion/udp/out:=/etsi_its_conversion/udp/in -p has_btp_destination_port:=true -p btp_destination_port_offset:=0 -p etsi_message_payload_offset:=4 ==117697== Memcheck, a memory error detector ==117697== Copyright (C) 2002-2017, and GNU GPL'd, by Julian Seward et al. ==117697== Using Valgrind-3.18.1 and LibVEX; rerun with -h for copyright info ==117697== Command: /home/dockeruser/ws/install/etsi_its_conversion/lib/etsi_its_conversion/etsi_its_conversion_node --ros-args -r __node:=etsi_its_conversion -r /etsi_its_conversion/udp/out:=/etsi_its_conversion/udp/in -p has_btp_destination_port:=true -p btp_destination_port_offset:=0 -p etsi_message_payload_offset:=4 ==117697== [INFO] [1720605878.426802796] [etsi_its_conversion]: Converting UDP messages of type CAM on '/etsi_its_conversion/udp/in' to native ROS messages on '/etsi_its_conversion/cam/out' [INFO] [1720605878.455350801] [etsi_its_conversion]: Converting native ROS CAMs on '/etsi_its_conversion/cam/in' to UDP messages on '/etsi_its_conversion/udp/in' [INFO] [1720605878.577328911] [etsi_its_conversion]: Converting UDP messages of type DENM on '/etsi_its_conversion/udp/in' to native ROS messages on '/etsi_its_conversion/denm/out' [INFO] [1720605878.578529031] [etsi_its_conversion]: Converting native ROS DENMs on '/etsi_its_conversion/denm/in' to UDP messages on '/etsi_its_conversion/udp/in' [INFO] [1720605878.721487789] [etsi_its_conversion]: Converting UDP messages of type CPM on '/etsi_its_conversion/udp/in' to native ROS messages on '/etsi_its_conversion/cpm_ts/out' [INFO] [1720605878.722666450] [etsi_its_conversion]: Converting native ROS CPMs on '/etsi_its_conversion/cpm_ts/in' to UDP messages on '/etsi_its_conversion/udp/in' [INFO] [1720605883.022272640] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605883.054459602] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605883.065426085] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605883.068509183] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605883.072102182] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605883.075157810] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605883.120299950] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605883.126342729] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605883.222731305] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605883.228646866] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605883.322650172] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605883.328576684] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605883.422697756] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605883.428666976] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605883.522731841] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605883.528672122] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605883.622723656] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605883.628687627] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605883.722694452] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605883.728633994] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605883.822633820] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605883.828569691] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605883.922610016] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605883.928520468] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605884.022641130] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605884.028602931] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605884.122770682] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605884.128766351] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605884.222622681] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605884.228607442] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605884.322603928] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605884.328513630] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605884.422672871] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605884.428605964] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605884.522670646] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605884.528590558] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605884.622652333] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605884.628579384] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605884.722701397] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605884.728613519] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605884.822670454] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605884.828582396] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605884.922793895] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605884.928888021] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605885.022686494] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605885.028650084] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605885.122715168] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605885.128641119] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605885.222678263] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605885.228571086] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605885.322594762] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605885.328522843] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605885.422675765] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605885.428576207] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605885.522614733] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605885.528522935] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605885.622872510] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605885.628821001] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605885.722624164] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605885.730819841] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605885.823377445] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605885.829570249] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605885.922602596] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605885.928490401] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605886.022640512] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605886.028570205] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605886.122613899] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605886.128495233] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605886.222631697] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605886.228523128] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605886.322600901] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605886.328516384] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605886.422604167] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605886.428549409] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605886.522639083] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605886.528573645] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605886.622594860] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605886.628480514] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605886.722653755] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605886.728542328] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605886.822620002] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605886.828518094] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605886.922573870] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605886.928472512] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605887.022622503] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605887.028545146] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605887.122612937] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605887.128514260] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605887.222619906] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605887.228498789] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605887.322593531] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605887.328503503] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605887.422588708] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605887.428495610] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605887.522607771] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605887.528746476] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605887.622638636] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605887.628540239] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605887.722605992] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605887.728504884] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605887.822626576] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605887.828532350] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605887.922567263] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605887.928475577] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605888.022654234] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605888.028574917] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605888.122642133] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605888.128521767] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605888.222595782] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605888.228488255] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605888.322591948] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605888.328525669] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605888.422632592] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605888.428661190] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605888.522799842] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605888.528721974] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605888.622626404] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605888.628559426] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605888.722709827] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605888.728643540] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605888.822650336] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605888.828563219] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605888.922618995] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605888.930762952] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605889.023344697] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605889.029335216] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605889.122660334] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605889.128561857] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605889.222788105] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605889.228989479] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605889.322588192] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605889.328495694] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605889.422601048] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605889.428569158] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605889.522557816] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605889.528477588] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605889.622586162] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605889.628481154] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605889.722706113] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605889.728603217] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605889.822648533] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605889.828557125] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605889.922567190] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605889.928453093] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605890.022613736] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605890.028536149] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605890.122689238] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605890.128572903] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605890.222649828] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605890.228545761] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605890.322575577] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605890.328508019] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605890.422601922] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605890.428515406] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605890.522622479] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605890.528528111] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605890.622673763] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605890.628565796] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605890.722595952] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605890.728476296] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605890.822636157] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605890.828524220] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605890.922607255] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605890.928496517] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605891.022587932] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605891.028516984] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605891.122685565] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605891.128593259] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605891.222588524] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605891.228479908] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605891.322572592] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605891.328462045] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605891.422639738] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605891.428516641] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605891.522565616] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605891.528475818] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605891.622625088] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605891.628617129] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605891.722663865] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605891.728601326] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605891.822833476] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605891.828762467] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605891.922629859] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605891.928511073] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605892.022616027] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605892.028528438] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605892.122581944] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605892.128459437] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605892.222692636] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605892.230823495] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605892.323304703] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605892.329279802] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605892.422594602] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605892.428488756] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message [INFO] [1720605892.522595079] [etsi_its_conversion]: Received ETSI message of type 'cam' (message size: 41 | total payload size: 45) [INFO] [1720605892.528491142] [etsi_its_conversion]: Published ETSI message of type 'cam' as ROS message ^C[INFO] [1720605900.485058377] [rclcpp]: signal_handler(signum=2) ==117697== ==117697== HEAP SUMMARY: ==117697== in use at exit: 78,723 bytes in 296 blocks ==117697== total heap usage: 50,846 allocs, 50,550 frees, 7,716,497 bytes allocated ==117697== ==117697== 143 (64 direct, 79 indirect) bytes in 1 blocks are definitely lost in loss record 67 of 103 ==117697== at 0x4849013: operator new(unsigned long) (in /usr/libexec/valgrind/vgpreload_memcheck-amd64-linux.so) ==117697== by 0x50C6A23: ??? (in /opt/ros/humble/lib/librosidl_typesupport_cpp.so) ==117697== by 0x55DEE38: ??? ==117697== by 0x55BD077: ??? ==117697== by 0x55BD276: ??? ==117697== by 0x55BEF3B: ??? ==117697== by 0x4F2C1F9: rcl_node_init (in /opt/ros/humble/lib/librcl.so) ==117697== by 0x496283C: rclcpp::node_interfaces::NodeBase::NodeBase(std::__cxx11::basic_string, std::allocator > const&, std::__cxx11::basic_string, std::allocator > const&, std::shared_ptr, rcl_node_options_s const&, bool, bool) (in /opt/ros/humble/lib/librclcpp.so) ==117697== by 0x495A786: rclcpp::Node::Node(std::__cxx11::basic_string, std::allocator > const&, std::__cxx11::basic_string, std::allocator > const&, rclcpp::NodeOptions const&) (in /opt/ros/humble/lib/librclcpp.so) ==117697== by 0x495B9B7: rclcpp::Node::Node(std::__cxx11::basic_string, std::allocator > const&, rclcpp::NodeOptions const&) (in /opt/ros/humble/lib/librclcpp.so) ==117697== by 0x6DDC814: etsi_its_conversion::Converter::Converter(rclcpp::NodeOptions const&) (in /docker-ros/ws/install/etsi_its_conversion/lib/libetsi_its_conversion.so) ==117697== by 0x6F35290: void __gnu_cxx::new_allocator::construct(etsi_its_conversion::Converter*, rclcpp::NodeOptions const&) (in /docker-ros/ws/install/etsi_its_conversion/lib/libetsi_its_conversion.so) ==117697== ==117697== 296 (192 direct, 104 indirect) bytes in 1 blocks are definitely lost in loss record 79 of 103 ==117697== at 0x4849013: operator new(unsigned long) (in /usr/libexec/valgrind/vgpreload_memcheck-amd64-linux.so) ==117697== by 0x55B4F79: ??? ==117697== by 0x55C2E67: ??? ==117697== by 0x4F32C47: rcl_wait_set_init (in /opt/ros/humble/lib/librcl.so) ==117697== by 0x494324D: rclcpp::Executor::Executor(rclcpp::ExecutorOptions const&) (in /opt/ros/humble/lib/librclcpp.so) ==117697== by 0x4946ABC: rclcpp::executors::SingleThreadedExecutor::SingleThreadedExecutor(rclcpp::ExecutorOptions const&) (in /opt/ros/humble/lib/librclcpp.so) ==117697== by 0x10CD87: main (in /docker-ros/ws/install/etsi_its_conversion/lib/etsi_its_conversion/etsi_its_conversion_node) ==117697== ==117697== 514 (16 direct, 498 indirect) bytes in 1 blocks are definitely lost in loss record 83 of 103 ==117697== at 0x4849013: operator new(unsigned long) (in /usr/libexec/valgrind/vgpreload_memcheck-amd64-linux.so) ==117697== by 0x6DFBEE4: void class_loader::impl::registerPlugin, rclcpp_components::NodeFactory>(std::__cxx11::basic_string, std::allocator > const&, std::__cxx11::basic_string, std::allocator > const&) (in /docker-ros/ws/install/etsi_its_conversion/lib/libetsi_its_conversion.so) ==117697== by 0x6DDC65C: (anonymous namespace)::ProxyExec0::ProxyExec0() (in /docker-ros/ws/install/etsi_its_conversion/lib/libetsi_its_conversion.so) ==117697== by 0x6DE2304: __static_initialization_and_destruction_0(int, int) (in /docker-ros/ws/install/etsi_its_conversion/lib/libetsi_its_conversion.so) ==117697== by 0x6DE2B78: _GLOBAL__sub_I_Converter.cpp (in /docker-ros/ws/install/etsi_its_conversion/lib/libetsi_its_conversion.so) ==117697== by 0x400647D: call_init.part.0 (dl-init.c:70) ==117697== by 0x4006567: call_init (dl-init.c:33) ==117697== by 0x4006567: _dl_init (dl-init.c:117) ==117697== by 0x4E4AAF4: _dl_catch_exception (dl-error-skeleton.c:182) ==117697== by 0x400DFF5: dl_open_worker (dl-open.c:808) ==117697== by 0x400DFF5: dl_open_worker (dl-open.c:771) ==117697== by 0x4E4AA97: _dl_catch_exception (dl-error-skeleton.c:208) ==117697== by 0x400E34D: _dl_open (dl-open.c:883) ==117697== by 0x4D6663B: dlopen_doit (dlopen.c:56) ==117697== ==117697== 2,136 bytes in 1 blocks are possibly lost in loss record 95 of 103 ==117697== at 0x4848899: malloc (in /usr/libexec/valgrind/vgpreload_memcheck-amd64-linux.so) ==117697== by 0x56EF34C: ??? ==117697== by 0x56A74A9: ??? ==117697== by 0x56C5B92: ??? ==117697== by 0x56DC351: ??? ==117697== by 0x55C2D01: ??? ==117697== by 0x4F16E05: ??? (in /opt/ros/humble/lib/librcl.so) ==117697== by 0x495195F: rclcpp::GuardCondition::GuardCondition(std::shared_ptr, rcl_guard_condition_options_s) (in /opt/ros/humble/lib/librclcpp.so) ==117697== by 0x4942DA7: rclcpp::Executor::Executor(rclcpp::ExecutorOptions const&) (in /opt/ros/humble/lib/librclcpp.so) ==117697== by 0x4946ABC: rclcpp::executors::SingleThreadedExecutor::SingleThreadedExecutor(rclcpp::ExecutorOptions const&) (in /opt/ros/humble/lib/librclcpp.so) ==117697== by 0x10CD87: main (in /docker-ros/ws/install/etsi_its_conversion/lib/etsi_its_conversion/etsi_its_conversion_node) ==117697== ==117697== 2,616 (32 direct, 2,584 indirect) bytes in 1 blocks are definitely lost in loss record 96 of 103 ==117697== at 0x4848899: malloc (in /usr/libexec/valgrind/vgpreload_memcheck-amd64-linux.so) ==117697== by 0x56EF34C: ??? ==117697== by 0x56EF37D: ??? ==117697== by 0x56CC9F3: ??? ==117697== by 0x56C5B97: ??? ==117697== by 0x56DC351: ??? ==117697== by 0x55C2D01: ??? ==117697== by 0x4F16E05: ??? (in /opt/ros/humble/lib/librcl.so) ==117697== by 0x495195F: rclcpp::GuardCondition::GuardCondition(std::shared_ptr, rcl_guard_condition_options_s) (in /opt/ros/humble/lib/librclcpp.so) ==117697== by 0x4942DA7: rclcpp::Executor::Executor(rclcpp::ExecutorOptions const&) (in /opt/ros/humble/lib/librclcpp.so) ==117697== by 0x4946ABC: rclcpp::executors::SingleThreadedExecutor::SingleThreadedExecutor(rclcpp::ExecutorOptions const&) (in /opt/ros/humble/lib/librclcpp.so) ==117697== by 0x10CD87: main (in /docker-ros/ws/install/etsi_its_conversion/lib/etsi_its_conversion/etsi_its_conversion_node) ==117697== ==117697== 6,272 bytes in 98 blocks are definitely lost in loss record 99 of 103 ==117697== at 0x484DCD3: realloc (in /usr/libexec/valgrind/vgpreload_memcheck-amd64-linux.so) ==117697== by 0x7074A07: dynamic_encoder_cb (in /docker-ros/ws/install/etsi_its_cam_coding/lib/libetsi_its_cam_coding.so) ==117697== by 0x7089BFE: _uper_encode_flush_outp (in /docker-ros/ws/install/etsi_its_cam_coding/lib/libetsi_its_cam_coding.so) ==117697== by 0x708988E: uper_encode (in /docker-ros/ws/install/etsi_its_cam_coding/lib/libetsi_its_cam_coding.so) ==117697== by 0x7075273: asn_encode_internal (in /docker-ros/ws/install/etsi_its_cam_coding/lib/libetsi_its_cam_coding.so) ==117697== by 0x7074E85: asn_encode_to_new_buffer (in /docker-ros/ws/install/etsi_its_cam_coding/lib/libetsi_its_cam_coding.so) ==117697== by 0x6DE0874: etsi_its_conversion::Converter::rosCallbackCam(std::unique_ptr >, std::default_delete > > >) (in /docker-ros/ws/install/etsi_its_conversion/lib/libetsi_its_conversion.so) ==117697== by 0x6E8C646: void std::__invoke_impl >, std::default_delete > > >), etsi_its_conversion::Converter*&, std::unique_ptr >, std::default_delete > > > >(std::__invoke_memfun_deref, void (etsi_its_conversion::Converter::*&)(std::unique_ptr >, std::default_delete > > >), etsi_its_conversion::Converter*&, std::unique_ptr >, std::default_delete > > >&&) (in /docker-ros/ws/install/etsi_its_conversion/lib/libetsi_its_conversion.so) ==117697== by 0x6E883C8: std::__invoke_result >, std::default_delete > > >), etsi_its_conversion::Converter*&, std::unique_ptr >, std::default_delete > > > >::type std::__invoke >, std::default_delete > > >), etsi_its_conversion::Converter*&, std::unique_ptr >, std::default_delete > > > >(void (etsi_its_conversion::Converter::*&)(std::unique_ptr >, std::default_delete > > >), etsi_its_conversion::Converter*&, std::unique_ptr >, std::default_delete > > >&&) (in /docker-ros/ws/install/etsi_its_conversion/lib/libetsi_its_conversion.so) ==117697== by 0x6E83AD3: void std::_Bind))(std::unique_ptr >, std::default_delete > > >)>::__call >, std::default_delete > > >&&, 0ul, 1ul>(std::tuple >, std::default_delete > > >&&>&&, std::_Index_tuple<0ul, 1ul>) (in /docker-ros/ws/install/etsi_its_conversion/lib/libetsi_its_conversion.so) ==117697== by 0x6E7E763: void std::_Bind))(std::unique_ptr >, std::default_delete > > >)>::operator() >, std::default_delete > > >, void>(std::unique_ptr >, std::default_delete > > >&&) (in /docker-ros/ws/install/etsi_its_conversion/lib/libetsi_its_conversion.so) ==117697== by 0x6E75A08: void std::__invoke_impl))(std::unique_ptr >, std::default_delete > > >)>&, std::unique_ptr >, std::default_delete > > > >(std::__invoke_other, std::_Bind))(std::unique_ptr >, std::default_delete > > >)>&, std::unique_ptr >, std::default_delete > > >&&) (in /docker-ros/ws/install/etsi_its_conversion/lib/libetsi_its_conversion.so) ==117697== ==117697== LEAK SUMMARY: ==117697== definitely lost: 6,576 bytes in 102 blocks ==117697== indirectly lost: 3,265 bytes in 12 blocks ==117697== possibly lost: 2,136 bytes in 1 blocks ==117697== still reachable: 66,746 bytes in 181 blocks ==117697== suppressed: 0 bytes in 0 blocks ==117697== Reachable blocks (those to which a pointer was found) are not shown. ==117697== To see them, rerun with: --leak-check=full --show-leak-kinds=all ==117697== ==117697== For lists of detected and suppressed errors, rerun with: -s ==117697== ERROR SUMMARY: 6 errors from 6 contexts (suppressed: 0 from 0) ```
lreiher commented 3 months ago

Here's the reported leaks where the two versions differ.

==81132== 6,016 bytes in 94 blocks are definitely lost in loss record 103 of 108
==81132==    at 0x484DCD3: realloc (in /usr/libexec/valgrind/vgpreload_memcheck-amd64-linux.so)
==81132==    by 0x7074A07: dynamic_encoder_cb (in /docker-ros/ws/install/etsi_its_cam_coding/lib/libetsi_its_cam_coding.so)
==81132==    by 0x7089BFE: _uper_encode_flush_outp (in /docker-ros/ws/install/etsi_its_cam_coding/lib/libetsi_its_cam_coding.so)
==81132==    by 0x708988E: uper_encode (in /docker-ros/ws/install/etsi_its_cam_coding/lib/libetsi_its_cam_coding.so)
==81132==    by 0x7075273: asn_encode_internal (in /docker-ros/ws/install/etsi_its_cam_coding/lib/libetsi_its_cam_coding.so)
==81132==    by 0x7074E85: asn_encode_to_new_buffer (in /docker-ros/ws/install/etsi_its_cam_coding/lib/libetsi_its_cam_coding.so)
==81132==    by 0x6DE081B: etsi_its_conversion::Converter::rosCallbackCam(std::unique_ptr<etsi_its_cam_msgs::msg::CAM_<std::allocator<void> >, std::default_delete<etsi_its_cam_msgs::msg::CAM_<std::allocator<void> > > >) (in /docker-ros/ws/install/etsi_its_conversion/lib/libetsi_its_conversion.so)
==81132==    by 0x6E8C5C4: void std::__invoke_impl<void, void (etsi_its_conversion::Converter::*&)(std::unique_ptr<etsi_its_cam_msgs::msg::CAM_<std::allocator<void> >, std::default_delete<etsi_its_cam_msgs::msg::CAM_<std::allocator<void> > > >), etsi_its_conversion::Converter*&, std::unique_ptr<etsi_its_cam_msgs::msg::CAM_<std::allocator<void> >, std::default_delete<etsi_its_cam_msgs::msg::CAM_<std::allocator<void> > > > >(std::__invoke_memfun_deref, void (etsi_its_conversion::Converter::*&)(std::unique_ptr<etsi_its_cam_msgs::msg::CAM_<std::allocator<void> >, std::default_delete<etsi_its_cam_msgs::msg::CAM_<std::allocator<void> > > >), etsi_its_conversion::Converter*&, std::unique_ptr<etsi_its_cam_msgs::msg::CAM_<std::allocator<void> >, std::default_delete<etsi_its_cam_msgs::msg::CAM_<std::allocator<void> > > >&&) (in /docker-ros/ws/install/etsi_its_conversion/lib/libetsi_its_conversion.so)
==81132==    by 0x6E88346: std::__invoke_result<void (etsi_its_conversion::Converter::*&)(std::unique_ptr<etsi_its_cam_msgs::msg::CAM_<std::allocator<void> >, std::default_delete<etsi_its_cam_msgs::msg::CAM_<std::allocator<void> > > >), etsi_its_conversion::Converter*&, std::unique_ptr<etsi_its_cam_msgs::msg::CAM_<std::allocator<void> >, std::default_delete<etsi_its_cam_msgs::msg::CAM_<std::allocator<void> > > > >::type std::__invoke<void (etsi_its_conversion::Converter::*&)(std::unique_ptr<etsi_its_cam_msgs::msg::CAM_<std::allocator<void> >, std::default_delete<etsi_its_cam_msgs::msg::CAM_<std::allocator<void> > > >), etsi_its_conversion::Converter*&, std::unique_ptr<etsi_its_cam_msgs::msg::CAM_<std::allocator<void> >, std::default_delete<etsi_its_cam_msgs::msg::CAM_<std::allocator<void> > > > >(void (etsi_its_conversion::Converter::*&)(std::unique_ptr<etsi_its_cam_msgs::msg::CAM_<std::allocator<void> >, std::default_delete<etsi_its_cam_msgs::msg::CAM_<std::allocator<void> > > >), etsi_its_conversion::Converter*&, std::unique_ptr<etsi_its_cam_msgs::msg::CAM_<std::allocator<void> >, std::default_delete<etsi_its_cam_msgs::msg::CAM_<std::allocator<void> > > >&&) (in /docker-ros/ws/install/etsi_its_conversion/lib/libetsi_its_conversion.so)
==81132==    by 0x6E83A51: void std::_Bind<void (etsi_its_conversion::Converter::*(etsi_its_conversion::Converter*, std::_Placeholder<1>))(std::unique_ptr<etsi_its_cam_msgs::msg::CAM_<std::allocator<void> >, std::default_delete<etsi_its_cam_msgs::msg::CAM_<std::allocator<void> > > >)>::__call<void, std::unique_ptr<etsi_its_cam_msgs::msg::CAM_<std::allocator<void> >, std::default_delete<etsi_its_cam_msgs::msg::CAM_<std::allocator<void> > > >&&, 0ul, 1ul>(std::tuple<std::unique_ptr<etsi_its_cam_msgs::msg::CAM_<std::allocator<void> >, std::default_delete<etsi_its_cam_msgs::msg::CAM_<std::allocator<void> > > >&&>&&, std::_Index_tuple<0ul, 1ul>) (in /docker-ros/ws/install/etsi_its_conversion/lib/libetsi_its_conversion.so)
==81132==    by 0x6E7E6E1: void std::_Bind<void (etsi_its_conversion::Converter::*(etsi_its_conversion::Converter*, std::_Placeholder<1>))(std::unique_ptr<etsi_its_cam_msgs::msg::CAM_<std::allocator<void> >, std::default_delete<etsi_its_cam_msgs::msg::CAM_<std::allocator<void> > > >)>::operator()<std::unique_ptr<etsi_its_cam_msgs::msg::CAM_<std::allocator<void> >, std::default_delete<etsi_its_cam_msgs::msg::CAM_<std::allocator<void> > > >, void>(std::unique_ptr<etsi_its_cam_msgs::msg::CAM_<std::allocator<void> >, std::default_delete<etsi_its_cam_msgs::msg::CAM_<std::allocator<void> > > >&&) (in /docker-ros/ws/install/etsi_its_conversion/lib/libetsi_its_conversion.so)
==81132==    by 0x6E75986: void std::__invoke_impl<void, std::_Bind<void (etsi_its_conversion::Converter::*(etsi_its_conversion::Converter*, std::_Placeholder<1>))(std::unique_ptr<etsi_its_cam_msgs::msg::CAM_<std::allocator<void> >, std::default_delete<etsi_its_cam_msgs::msg::CAM_<std::allocator<void> > > >)>&, std::unique_ptr<etsi_its_cam_msgs::msg::CAM_<std::allocator<void> >, std::default_delete<etsi_its_cam_msgs::msg::CAM_<std::allocator<void> > > > >(std::__invoke_other, std::_Bind<void (etsi_its_conversion::Converter::*(etsi_its_conversion::Converter*, std::_Placeholder<1>))(std::unique_ptr<etsi_its_cam_msgs::msg::CAM_<std::allocator<void> >, std::default_delete<etsi_its_cam_msgs::msg::CAM_<std::allocator<void> > > >)>&, std::unique_ptr<etsi_its_cam_msgs::msg::CAM_<std::allocator<void> >, std::default_delete<etsi_its_cam_msgs::msg::CAM_<std::allocator<void> > > >&&) (in /docker-ros/ws/install/etsi_its_conversion/lib/libetsi_its_conversion.so)
==81132== 
==81132== 63,920 bytes in 94 blocks are definitely lost in loss record 108 of 108
==81132==    at 0x484DA83: calloc (in /usr/libexec/valgrind/vgpreload_memcheck-amd64-linux.so)
==81132==    by 0x7084E1B: SEQUENCE_decode_uper (in /docker-ros/ws/install/etsi_its_cam_coding/lib/libetsi_its_cam_coding.so)
==81132==    by 0x70895E4: uper_decode (in /docker-ros/ws/install/etsi_its_cam_coding/lib/libetsi_its_cam_coding.so)
==81132==    by 0x70893BB: uper_decode_complete (in /docker-ros/ws/install/etsi_its_cam_coding/lib/libetsi_its_cam_coding.so)
==81132==    by 0x7075756: asn_decode (in /docker-ros/ws/install/etsi_its_cam_coding/lib/libetsi_its_cam_coding.so)
==81132==    by 0x6DDF6F7: etsi_its_conversion::Converter::udpCallback(std::unique_ptr<udp_msgs::msg::UdpPacket_<std::allocator<void> >, std::default_delete<udp_msgs::msg::UdpPacket_<std::allocator<void> > > >) (in /docker-ros/ws/install/etsi_its_conversion/lib/libetsi_its_conversion.so)
==81132==    by 0x6E8BB0A: void std::__invoke_impl<void, void (etsi_its_conversion::Converter::*&)(std::unique_ptr<udp_msgs::msg::UdpPacket_<std::allocator<void> >, std::default_delete<udp_msgs::msg::UdpPacket_<std::allocator<void> > > >), etsi_its_conversion::Converter*&, std::unique_ptr<udp_msgs::msg::UdpPacket_<std::allocator<void> >, std::default_delete<udp_msgs::msg::UdpPacket_<std::allocator<void> > > > >(std::__invoke_memfun_deref, void (etsi_its_conversion::Converter::*&)(std::unique_ptr<udp_msgs::msg::UdpPacket_<std::allocator<void> >, std::default_delete<udp_msgs::msg::UdpPacket_<std::allocator<void> > > >), etsi_its_conversion::Converter*&, std::unique_ptr<udp_msgs::msg::UdpPacket_<std::allocator<void> >, std::default_delete<udp_msgs::msg::UdpPacket_<std::allocator<void> > > >&&) (in /docker-ros/ws/install/etsi_its_conversion/lib/libetsi_its_conversion.so)
==81132==    by 0x6E87AF0: std::__invoke_result<void (etsi_its_conversion::Converter::*&)(std::unique_ptr<udp_msgs::msg::UdpPacket_<std::allocator<void> >, std::default_delete<udp_msgs::msg::UdpPacket_<std::allocator<void> > > >), etsi_its_conversion::Converter*&, std::unique_ptr<udp_msgs::msg::UdpPacket_<std::allocator<void> >, std::default_delete<udp_msgs::msg::UdpPacket_<std::allocator<void> > > > >::type std::__invoke<void (etsi_its_conversion::Converter::*&)(std::unique_ptr<udp_msgs::msg::UdpPacket_<std::allocator<void> >, std::default_delete<udp_msgs::msg::UdpPacket_<std::allocator<void> > > >), etsi_its_conversion::Converter*&, std::unique_ptr<udp_msgs::msg::UdpPacket_<std::allocator<void> >, std::default_delete<udp_msgs::msg::UdpPacket_<std::allocator<void> > > > >(void (etsi_its_conversion::Converter::*&)(std::unique_ptr<udp_msgs::msg::UdpPacket_<std::allocator<void> >, std::default_delete<udp_msgs::msg::UdpPacket_<std::allocator<void> > > >), etsi_its_conversion::Converter*&, std::unique_ptr<udp_msgs::msg::UdpPacket_<std::allocator<void> >, std::default_delete<udp_msgs::msg::UdpPacket_<std::allocator<void> > > >&&) (in /docker-ros/ws/install/etsi_its_conversion/lib/libetsi_its_conversion.so)
==81132==    by 0x6E82F71: void std::_Bind<void (etsi_its_conversion::Converter::*(etsi_its_conversion::Converter*, std::_Placeholder<1>))(std::unique_ptr<udp_msgs::msg::UdpPacket_<std::allocator<void> >, std::default_delete<udp_msgs::msg::UdpPacket_<std::allocator<void> > > >)>::__call<void, std::unique_ptr<udp_msgs::msg::UdpPacket_<std::allocator<void> >, std::default_delete<udp_msgs::msg::UdpPacket_<std::allocator<void> > > >&&, 0ul, 1ul>(std::tuple<std::unique_ptr<udp_msgs::msg::UdpPacket_<std::allocator<void> >, std::default_delete<udp_msgs::msg::UdpPacket_<std::allocator<void> > > >&&>&&, std::_Index_tuple<0ul, 1ul>) (in /docker-ros/ws/install/etsi_its_conversion/lib/libetsi_its_conversion.so)
==81132==    by 0x6E7D941: void std::_Bind<void (etsi_its_conversion::Converter::*(etsi_its_conversion::Converter*, std::_Placeholder<1>))(std::unique_ptr<udp_msgs::msg::UdpPacket_<std::allocator<void> >, std::default_delete<udp_msgs::msg::UdpPacket_<std::allocator<void> > > >)>::operator()<std::unique_ptr<udp_msgs::msg::UdpPacket_<std::allocator<void> >, std::default_delete<udp_msgs::msg::UdpPacket_<std::allocator<void> > > >, void>(std::unique_ptr<udp_msgs::msg::UdpPacket_<std::allocator<void> >, std::default_delete<udp_msgs::msg::UdpPacket_<std::allocator<void> > > >&&) (in /docker-ros/ws/install/etsi_its_conversion/lib/libetsi_its_conversion.so)
==81132==    by 0x6E738A0: void std::__invoke_impl<void, std::_Bind<void (etsi_its_conversion::Converter::*(etsi_its_conversion::Converter*, std::_Placeholder<1>))(std::unique_ptr<udp_msgs::msg::UdpPacket_<std::allocator<void> >, std::default_delete<udp_msgs::msg::UdpPacket_<std::allocator<void> > > >)>&, std::unique_ptr<udp_msgs::msg::UdpPacket_<std::allocator<void> >, std::default_delete<udp_msgs::msg::UdpPacket_<std::allocator<void> > > > >(std::__invoke_other, std::_Bind<void (etsi_its_conversion::Converter::*(etsi_its_conversion::Converter*, std::_Placeholder<1>))(std::unique_ptr<udp_msgs::msg::UdpPacket_<std::allocator<void> >, std::default_delete<udp_msgs::msg::UdpPacket_<std::allocator<void> > > >)>&, std::unique_ptr<udp_msgs::msg::UdpPacket_<std::allocator<void> >, std::default_delete<udp_msgs::msg::UdpPacket_<std::allocator<void> > > >&&) (in /docker-ros/ws/install/etsi_its_conversion/lib/libetsi_its_conversion.so)
==81132==    by 0x6E66144: std::enable_if<is_invocable_r_v<void, std::_Bind<void (etsi_its_conversion::Converter::*(etsi_its_conversion::Converter*, std::_Placeholder<1>))(std::unique_ptr<udp_msgs::msg::UdpPacket_<std::allocator<void> >, std::default_delete<udp_msgs::msg::UdpPacket_<std::allocator<void> > > >)>&, std::unique_ptr<udp_msgs::msg::UdpPacket_<std::allocator<void> >, std::default_delete<udp_msgs::msg::UdpPacket_<std::allocator<void> > > > >, void>::type std::__invoke_r<void, std::_Bind<void (etsi_its_conversion::Converter::*(etsi_its_conversion::Converter*, std::_Placeholder<1>))(std::unique_ptr<udp_msgs::msg::UdpPacket_<std::allocator<void> >, std::default_delete<udp_msgs::msg::UdpPacket_<std::allocator<void> > > >)>&, std::unique_ptr<udp_msgs::msg::UdpPacket_<std::allocator<void> >, std::default_delete<udp_msgs::msg::UdpPacket_<std::allocator<void> > > > >(std::_Bind<void (etsi_its_conversion::Converter::*(etsi_its_conversion::Converter*, std::_Placeholder<1>))(std::unique_ptr<udp_msgs::msg::UdpPacket_<std::allocator<void> >, std::default_delete<udp_msgs::msg::UdpPacket_<std::allocator<void> > > >)>&, std::unique_ptr<udp_msgs::msg::UdpPacket_<std::allocator<void> >, std::default_delete<udp_msgs::msg::UdpPacket_<std::allocator<void> > > >&&) (in /docker-ros/ws/install/etsi_its_conversion/lib/libetsi_its_conversion.so)
==117697== 6,272 bytes in 98 blocks are definitely lost in loss record 99 of 103
==117697==    at 0x484DCD3: realloc (in /usr/libexec/valgrind/vgpreload_memcheck-amd64-linux.so)
==117697==    by 0x7074A07: dynamic_encoder_cb (in /docker-ros/ws/install/etsi_its_cam_coding/lib/libetsi_its_cam_coding.so)
==117697==    by 0x7089BFE: _uper_encode_flush_outp (in /docker-ros/ws/install/etsi_its_cam_coding/lib/libetsi_its_cam_coding.so)
==117697==    by 0x708988E: uper_encode (in /docker-ros/ws/install/etsi_its_cam_coding/lib/libetsi_its_cam_coding.so)
==117697==    by 0x7075273: asn_encode_internal (in /docker-ros/ws/install/etsi_its_cam_coding/lib/libetsi_its_cam_coding.so)
==117697==    by 0x7074E85: asn_encode_to_new_buffer (in /docker-ros/ws/install/etsi_its_cam_coding/lib/libetsi_its_cam_coding.so)
==117697==    by 0x6DE0874: etsi_its_conversion::Converter::rosCallbackCam(std::unique_ptr<etsi_its_cam_msgs::msg::CAM_<std::allocator<void> >, std::default_delete<etsi_its_cam_msgs::msg::CAM_<std::allocator<void> > > >) (in /docker-ros/ws/install/etsi_its_conversion/lib/libetsi_its_conversion.so)
==117697==    by 0x6E8C646: void std::__invoke_impl<void, void (etsi_its_conversion::Converter::*&)(std::unique_ptr<etsi_its_cam_msgs::msg::CAM_<std::allocator<void> >, std::default_delete<etsi_its_cam_msgs::msg::CAM_<std::allocator<void> > > >), etsi_its_conversion::Converter*&, std::unique_ptr<etsi_its_cam_msgs::msg::CAM_<std::allocator<void> >, std::default_delete<etsi_its_cam_msgs::msg::CAM_<std::allocator<void> > > > >(std::__invoke_memfun_deref, void (etsi_its_conversion::Converter::*&)(std::unique_ptr<etsi_its_cam_msgs::msg::CAM_<std::allocator<void> >, std::default_delete<etsi_its_cam_msgs::msg::CAM_<std::allocator<void> > > >), etsi_its_conversion::Converter*&, std::unique_ptr<etsi_its_cam_msgs::msg::CAM_<std::allocator<void> >, std::default_delete<etsi_its_cam_msgs::msg::CAM_<std::allocator<void> > > >&&) (in /docker-ros/ws/install/etsi_its_conversion/lib/libetsi_its_conversion.so)
==117697==    by 0x6E883C8: std::__invoke_result<void (etsi_its_conversion::Converter::*&)(std::unique_ptr<etsi_its_cam_msgs::msg::CAM_<std::allocator<void> >, std::default_delete<etsi_its_cam_msgs::msg::CAM_<std::allocator<void> > > >), etsi_its_conversion::Converter*&, std::unique_ptr<etsi_its_cam_msgs::msg::CAM_<std::allocator<void> >, std::default_delete<etsi_its_cam_msgs::msg::CAM_<std::allocator<void> > > > >::type std::__invoke<void (etsi_its_conversion::Converter::*&)(std::unique_ptr<etsi_its_cam_msgs::msg::CAM_<std::allocator<void> >, std::default_delete<etsi_its_cam_msgs::msg::CAM_<std::allocator<void> > > >), etsi_its_conversion::Converter*&, std::unique_ptr<etsi_its_cam_msgs::msg::CAM_<std::allocator<void> >, std::default_delete<etsi_its_cam_msgs::msg::CAM_<std::allocator<void> > > > >(void (etsi_its_conversion::Converter::*&)(std::unique_ptr<etsi_its_cam_msgs::msg::CAM_<std::allocator<void> >, std::default_delete<etsi_its_cam_msgs::msg::CAM_<std::allocator<void> > > >), etsi_its_conversion::Converter*&, std::unique_ptr<etsi_its_cam_msgs::msg::CAM_<std::allocator<void> >, std::default_delete<etsi_its_cam_msgs::msg::CAM_<std::allocator<void> > > >&&) (in /docker-ros/ws/install/etsi_its_conversion/lib/libetsi_its_conversion.so)
==117697==    by 0x6E83AD3: void std::_Bind<void (etsi_its_conversion::Converter::*(etsi_its_conversion::Converter*, std::_Placeholder<1>))(std::unique_ptr<etsi_its_cam_msgs::msg::CAM_<std::allocator<void> >, std::default_delete<etsi_its_cam_msgs::msg::CAM_<std::allocator<void> > > >)>::__call<void, std::unique_ptr<etsi_its_cam_msgs::msg::CAM_<std::allocator<void> >, std::default_delete<etsi_its_cam_msgs::msg::CAM_<std::allocator<void> > > >&&, 0ul, 1ul>(std::tuple<std::unique_ptr<etsi_its_cam_msgs::msg::CAM_<std::allocator<void> >, std::default_delete<etsi_its_cam_msgs::msg::CAM_<std::allocator<void> > > >&&>&&, std::_Index_tuple<0ul, 1ul>) (in /docker-ros/ws/install/etsi_its_conversion/lib/libetsi_its_conversion.so)
==117697==    by 0x6E7E763: void std::_Bind<void (etsi_its_conversion::Converter::*(etsi_its_conversion::Converter*, std::_Placeholder<1>))(std::unique_ptr<etsi_its_cam_msgs::msg::CAM_<std::allocator<void> >, std::default_delete<etsi_its_cam_msgs::msg::CAM_<std::allocator<void> > > >)>::operator()<std::unique_ptr<etsi_its_cam_msgs::msg::CAM_<std::allocator<void> >, std::default_delete<etsi_its_cam_msgs::msg::CAM_<std::allocator<void> > > >, void>(std::unique_ptr<etsi_its_cam_msgs::msg::CAM_<std::allocator<void> >, std::default_delete<etsi_its_cam_msgs::msg::CAM_<std::allocator<void> > > >&&) (in /docker-ros/ws/install/etsi_its_conversion/lib/libetsi_its_conversion.so)
==117697==    by 0x6E75A08: void std::__invoke_impl<void, std::_Bind<void (etsi_its_conversion::Converter::*(etsi_its_conversion::Converter*, std::_Placeholder<1>))(std::unique_ptr<etsi_its_cam_msgs::msg::CAM_<std::allocator<void> >, std::default_delete<etsi_its_cam_msgs::msg::CAM_<std::allocator<void> > > >)>&, std::unique_ptr<etsi_its_cam_msgs::msg::CAM_<std::allocator<void> >, std::default_delete<etsi_its_cam_msgs::msg::CAM_<std::allocator<void> > > > >(std::__invoke_other, std::_Bind<void (etsi_its_conversion::Converter::*(etsi_its_conversion::Converter*, std::_Placeholder<1>))(std::unique_ptr<etsi_its_cam_msgs::msg::CAM_<std::allocator<void> >, std::default_delete<etsi_its_cam_msgs::msg::CAM_<std::allocator<void> > > >)>&, std::unique_ptr<etsi_its_cam_msgs::msg::CAM_<std::allocator<void> >, std::default_delete<etsi_its_cam_msgs::msg::CAM_<std::allocator<void> > > >&&) (in /docker-ros/ws/install/etsi_its_conversion/lib/libetsi_its_conversion.so)
v0-e commented 3 months ago

asn_encode_to_new_buffer() allocated buffer (ret.buffer) is not being freed. I can push a fix today. Or if you want to test it on your side right away, a simple call to free() should suffice.

lreiher commented 3 months ago

Yep, took me some time, but also just identified that! Freeing ret.buffer solves the remaining leak. Here's the valgrind output. I guess the remaining leaks are out of our control.

==154262== HEAP SUMMARY:
==154262==     in use at exit: 71,798 bytes in 192 blocks
==154262==   total heap usage: 50,986 allocs, 50,794 frees, 7,729,220 bytes allocated
==154262== 
==154262== 143 (64 direct, 79 indirect) bytes in 1 blocks are definitely lost in loss record 68 of 102
==154262==    at 0x4849013: operator new(unsigned long) (in /usr/libexec/valgrind/vgpreload_memcheck-amd64-linux.so)
==154262==    by 0x50C6A23: ??? (in /opt/ros/humble/lib/librosidl_typesupport_cpp.so)
==154262==    by 0x55DEE38: ???
==154262==    by 0x55BD077: ???
==154262==    by 0x55BD276: ???
==154262==    by 0x55BEF3B: ???
==154262==    by 0x4F2C1F9: rcl_node_init (in /opt/ros/humble/lib/librcl.so)
==154262==    by 0x496283C: rclcpp::node_interfaces::NodeBase::NodeBase(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::shared_ptr<rclcpp::Context>, rcl_node_options_s const&, bool, bool) (in /opt/ros/humble/lib/librclcpp.so)
==154262==    by 0x495A786: rclcpp::Node::Node(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) (in /opt/ros/humble/lib/librclcpp.so)
==154262==    by 0x495B9B7: rclcpp::Node::Node(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rclcpp::NodeOptions const&) (in /opt/ros/humble/lib/librclcpp.so)
==154262==    by 0x6DDC824: etsi_its_conversion::Converter::Converter(rclcpp::NodeOptions const&) (in /docker-ros/ws/install/etsi_its_conversion/lib/libetsi_its_conversion.so)
==154262==    by 0x6F352B0: void __gnu_cxx::new_allocator<etsi_its_conversion::Converter>::construct<etsi_its_conversion::Converter, rclcpp::NodeOptions const&>(etsi_its_conversion::Converter*, rclcpp::NodeOptions const&) (in /docker-ros/ws/install/etsi_its_conversion/lib/libetsi_its_conversion.so)
==154262== 
==154262== 296 (192 direct, 104 indirect) bytes in 1 blocks are definitely lost in loss record 80 of 102
==154262==    at 0x4849013: operator new(unsigned long) (in /usr/libexec/valgrind/vgpreload_memcheck-amd64-linux.so)
==154262==    by 0x55B4F79: ???
==154262==    by 0x55C2E67: ???
==154262==    by 0x4F32C47: rcl_wait_set_init (in /opt/ros/humble/lib/librcl.so)
==154262==    by 0x494324D: rclcpp::Executor::Executor(rclcpp::ExecutorOptions const&) (in /opt/ros/humble/lib/librclcpp.so)
==154262==    by 0x4946ABC: rclcpp::executors::SingleThreadedExecutor::SingleThreadedExecutor(rclcpp::ExecutorOptions const&) (in /opt/ros/humble/lib/librclcpp.so)
==154262==    by 0x10CD87: main (in /docker-ros/ws/install/etsi_its_conversion/lib/etsi_its_conversion/etsi_its_conversion_node)
==154262== 
==154262== 514 (16 direct, 498 indirect) bytes in 1 blocks are definitely lost in loss record 84 of 102
==154262==    at 0x4849013: operator new(unsigned long) (in /usr/libexec/valgrind/vgpreload_memcheck-amd64-linux.so)
==154262==    by 0x6DFBF04: void class_loader::impl::registerPlugin<rclcpp_components::NodeFactoryTemplate<etsi_its_conversion::Converter>, rclcpp_components::NodeFactory>(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) (in /docker-ros/ws/install/etsi_its_conversion/lib/libetsi_its_conversion.so)
==154262==    by 0x6DDC66C: (anonymous namespace)::ProxyExec0::ProxyExec0() (in /docker-ros/ws/install/etsi_its_conversion/lib/libetsi_its_conversion.so)
==154262==    by 0x6DE2324: __static_initialization_and_destruction_0(int, int) (in /docker-ros/ws/install/etsi_its_conversion/lib/libetsi_its_conversion.so)
==154262==    by 0x6DE2B98: _GLOBAL__sub_I_Converter.cpp (in /docker-ros/ws/install/etsi_its_conversion/lib/libetsi_its_conversion.so)
==154262==    by 0x400647D: call_init.part.0 (dl-init.c:70)
==154262==    by 0x4006567: call_init (dl-init.c:33)
==154262==    by 0x4006567: _dl_init (dl-init.c:117)
==154262==    by 0x4E4AAF4: _dl_catch_exception (dl-error-skeleton.c:182)
==154262==    by 0x400DFF5: dl_open_worker (dl-open.c:808)
==154262==    by 0x400DFF5: dl_open_worker (dl-open.c:771)
==154262==    by 0x4E4AA97: _dl_catch_exception (dl-error-skeleton.c:208)
==154262==    by 0x400E34D: _dl_open (dl-open.c:883)
==154262==    by 0x4D6663B: dlopen_doit (dlopen.c:56)
==154262== 
==154262== 2,136 bytes in 1 blocks are possibly lost in loss record 95 of 102
==154262==    at 0x4848899: malloc (in /usr/libexec/valgrind/vgpreload_memcheck-amd64-linux.so)
==154262==    by 0x56EF34C: ???
==154262==    by 0x56A74A9: ???
==154262==    by 0x56C5B92: ???
==154262==    by 0x56DC351: ???
==154262==    by 0x55C2D01: ???
==154262==    by 0x4F16E05: ??? (in /opt/ros/humble/lib/librcl.so)
==154262==    by 0x495195F: rclcpp::GuardCondition::GuardCondition(std::shared_ptr<rclcpp::Context>, rcl_guard_condition_options_s) (in /opt/ros/humble/lib/librclcpp.so)
==154262==    by 0x4942DA7: rclcpp::Executor::Executor(rclcpp::ExecutorOptions const&) (in /opt/ros/humble/lib/librclcpp.so)
==154262==    by 0x4946ABC: rclcpp::executors::SingleThreadedExecutor::SingleThreadedExecutor(rclcpp::ExecutorOptions const&) (in /opt/ros/humble/lib/librclcpp.so)
==154262==    by 0x10CD87: main (in /docker-ros/ws/install/etsi_its_conversion/lib/etsi_its_conversion/etsi_its_conversion_node)
==154262== 
==154262== 2,616 (32 direct, 2,584 indirect) bytes in 1 blocks are definitely lost in loss record 96 of 102
==154262==    at 0x4848899: malloc (in /usr/libexec/valgrind/vgpreload_memcheck-amd64-linux.so)
==154262==    by 0x56EF34C: ???
==154262==    by 0x56EF37D: ???
==154262==    by 0x56CC9F3: ???
==154262==    by 0x56C5B97: ???
==154262==    by 0x56DC351: ???
==154262==    by 0x55C2D01: ???
==154262==    by 0x4F16E05: ??? (in /opt/ros/humble/lib/librcl.so)
==154262==    by 0x495195F: rclcpp::GuardCondition::GuardCondition(std::shared_ptr<rclcpp::Context>, rcl_guard_condition_options_s) (in /opt/ros/humble/lib/librclcpp.so)
==154262==    by 0x4942DA7: rclcpp::Executor::Executor(rclcpp::ExecutorOptions const&) (in /opt/ros/humble/lib/librclcpp.so)
==154262==    by 0x4946ABC: rclcpp::executors::SingleThreadedExecutor::SingleThreadedExecutor(rclcpp::ExecutorOptions const&) (in /opt/ros/humble/lib/librclcpp.so)
==154262==    by 0x10CD87: main (in /docker-ros/ws/install/etsi_its_conversion/lib/etsi_its_conversion/etsi_its_conversion_node)
==154262== 
==154262== LEAK SUMMARY:
==154262==    definitely lost: 304 bytes in 4 blocks
==154262==    indirectly lost: 3,265 bytes in 12 blocks
==154262==      possibly lost: 2,136 bytes in 1 blocks
==154262==    still reachable: 66,093 bytes in 175 blocks
==154262==         suppressed: 0 bytes in 0 blocks
==154262== Reachable blocks (those to which a pointer was found) are not shown.
==154262== To see them, rerun with: --leak-check=full --show-leak-kinds=all
==154262== 
==154262== For lists of detected and suppressed errors, rerun with: -s
==154262== ERROR SUMMARY: 5 errors from 5 contexts (suppressed: 0 from 0)
lreiher commented 3 months ago

I'm going to quickly commit these changes and resolve the conflicts with main. :)

lreiher commented 3 months ago

Would you mind activating this so I can push my changes to your fork?

image

v0-e commented 3 months ago

It is enabled, what error are you getting?

image

lreiher commented 3 months ago

Hm, weird, I don't have permissions to push to this branch of your fork.

I have now created a PR to your fork that you should merge, afterwards this PR here should be ready to go: https://github.com/v0-e/etsi_its_messages/pull/2

Don't worry about all the changes, that's mostly updating with the current main here. The only relevant change is that I have added this line 6 times.

lreiher commented 3 months ago

https://github.com/ika-rwth-aachen/etsi_its_messages/pull/24#issuecomment-2220697057