basler / meta-basler-imx8

OpenEmbedded/Yocto layer for Basler Mipi Cameras on the i.MX8 platform
Other
2 stars 6 forks source link

Basler memory leaks #5

Open simoberny opened 1 year ago

simoberny commented 1 year ago

Description I'm running a Yocto Hardknott with basler meta layer and a Basler A2500-60mci. Everything is working just fine, i was able to create my application easily.

When I tested it using Valgrind though, I noticed some memory leaks on basler library (total of 616KB), and I wanted to ask if this could be false positive or something else.

Thank you

Valgrind log ### ``` ==23755== Thread 4: ==23755== Conditional jump or move depends on uninitialised value(s) ==23755== at 0xD51A150: ??? (in /opt/dart-bcon-mipi/lib/basler-daA2500-60mci-imx8.cti) ==23755== by 0xD51A7E7: ??? (in /opt/dart-bcon-mipi/lib/basler-daA2500-60mci-imx8.cti) ==23755== by 0xD518CCF: ??? (in /opt/dart-bcon-mipi/lib/basler-daA2500-60mci-imx8.cti) ==23755== by 0xD50D74F: ??? (in /opt/dart-bcon-mipi/lib/basler-daA2500-60mci-imx8.cti) ==23755== by 0xD50D837: ??? (in /opt/dart-bcon-mipi/lib/basler-daA2500-60mci-imx8.cti) ==23755== by 0xD338B7B: ??? (in /opt/dart-bcon-mipi/lib/basler-daA2500-60mci-imx8.cti) ==23755== by 0xD316A6B: ??? (in /opt/dart-bcon-mipi/lib/basler-daA2500-60mci-imx8.cti) ==23755== by 0xD3128EB: ??? (in /opt/dart-bcon-mipi/lib/basler-daA2500-60mci-imx8.cti) ==23755== by 0xD2EB46B: ??? (in /opt/dart-bcon-mipi/lib/basler-daA2500-60mci-imx8.cti) ==23755== by 0xD303013: IFOpenDevice (in /opt/dart-bcon-mipi/lib/basler-daA2500-60mci-imx8.cti) ==23755== by 0x8E034BB: ??? (in /opt/pylon/lib/libpylon_TL_gtc-6.2.0.so) ==23755== by 0x8DFDB63: ??? (in /opt/pylon/lib/libpylon_TL_gtc-6.2.0.so) ==23755== Uninitialised value was created by a stack allocation ==23755== at 0xD51A780: ??? (in /opt/dart-bcon-mipi/lib/basler-daA2500-60mci-imx8.cti) ==23755== ==23755== Conditional jump or move depends on uninitialised value(s) ==23755== at 0xD51A310: ??? (in /opt/dart-bcon-mipi/lib/basler-daA2500-60mci-imx8.cti) ==23755== by 0xD51A83F: ??? (in /opt/dart-bcon-mipi/lib/basler-daA2500-60mci-imx8.cti) ==23755== by 0xD518CCF: ??? (in /opt/dart-bcon-mipi/lib/basler-daA2500-60mci-imx8.cti) ==23755== by 0xD50D74F: ??? (in /opt/dart-bcon-mipi/lib/basler-daA2500-60mci-imx8.cti) ==23755== by 0xD50D837: ??? (in /opt/dart-bcon-mipi/lib/basler-daA2500-60mci-imx8.cti) ==23755== by 0xD338B7B: ??? (in /opt/dart-bcon-mipi/lib/basler-daA2500-60mci-imx8.cti) ==23755== by 0xD316A6B: ??? (in /opt/dart-bcon-mipi/lib/basler-daA2500-60mci-imx8.cti) ==23755== by 0xD3128EB: ??? (in /opt/dart-bcon-mipi/lib/basler-daA2500-60mci-imx8.cti) ==23755== by 0xD2EB46B: ??? (in /opt/dart-bcon-mipi/lib/basler-daA2500-60mci-imx8.cti) ==23755== by 0xD303013: IFOpenDevice (in /opt/dart-bcon-mipi/lib/basler-daA2500-60mci-imx8.cti) ==23755== by 0x8E034BB: ??? (in /opt/pylon/lib/libpylon_TL_gtc-6.2.0.so) ==23755== by 0x8DFDB63: ??? (in /opt/pylon/lib/libpylon_TL_gtc-6.2.0.so) ==23755== Uninitialised value was created by a stack allocation ==23755== at 0xD51A780: ??? (in /opt/dart-bcon-mipi/lib/basler-daA2500-60mci-imx8.cti) ==23755== ==23755== Conditional jump or move depends on uninitialised value(s) ==23755== at 0xD51A31C: ??? (in /opt/dart-bcon-mipi/lib/basler-daA2500-60mci-imx8.cti) ==23755== by 0xD51A83F: ??? (in /opt/dart-bcon-mipi/lib/basler-daA2500-60mci-imx8.cti) ==23755== by 0xD518CCF: ??? (in /opt/dart-bcon-mipi/lib/basler-daA2500-60mci-imx8.cti) ==23755== by 0xD50D74F: ??? (in /opt/dart-bcon-mipi/lib/basler-daA2500-60mci-imx8.cti) ==23755== by 0xD50D837: ??? (in /opt/dart-bcon-mipi/lib/basler-daA2500-60mci-imx8.cti) ==23755== by 0xD338B7B: ??? (in /opt/dart-bcon-mipi/lib/basler-daA2500-60mci-imx8.cti) ==23755== by 0xD316A6B: ??? (in /opt/dart-bcon-mipi/lib/basler-daA2500-60mci-imx8.cti) ==23755== by 0xD3128EB: ??? (in /opt/dart-bcon-mipi/lib/basler-daA2500-60mci-imx8.cti) ==23755== by 0xD2EB46B: ??? (in /opt/dart-bcon-mipi/lib/basler-daA2500-60mci-imx8.cti) ==23755== by 0xD303013: IFOpenDevice (in /opt/dart-bcon-mipi/lib/basler-daA2500-60mci-imx8.cti) ==23755== by 0x8E034BB: ??? (in /opt/pylon/lib/libpylon_TL_gtc-6.2.0.so) ==23755== by 0x8DFDB63: ??? (in /opt/pylon/lib/libpylon_TL_gtc-6.2.0.so) ==23755== Uninitialised value was created by a stack allocation ==23755== at 0xD51A780: ??? (in /opt/dart-bcon-mipi/lib/basler-daA2500-60mci-imx8.cti) ==23755== ==23755== Syscall param ioctl(VKI_V4L2_S_EXT_CTRLS).controls[].ptr[] points to uninitialised byte(s) ==23755== at 0x642C750: ioctl (ioctl.S:26) ==23755== by 0xD50B9F3: ??? (in /opt/dart-bcon-mipi/lib/basler-daA2500-60mci-imx8.cti) ==23755== by 0xD50BCF3: ??? (in /opt/dart-bcon-mipi/lib/basler-daA2500-60mci-imx8.cti) ==23755== by 0xD509FE7: ??? (in /opt/dart-bcon-mipi/lib/basler-daA2500-60mci-imx8.cti) ==23755== by 0xD4EEE7B: ??? (in /opt/dart-bcon-mipi/lib/basler-daA2500-60mci-imx8.cti) ==23755== by 0xD338027: ??? (in /opt/dart-bcon-mipi/lib/basler-daA2500-60mci-imx8.cti) ==23755== by 0xD50E46B: ??? (in /opt/dart-bcon-mipi/lib/basler-daA2500-60mci-imx8.cti) ==23755== by 0xD50F7EF: ??? (in /opt/dart-bcon-mipi/lib/basler-daA2500-60mci-imx8.cti) ==23755== by 0xD50D78F: ??? (in /opt/dart-bcon-mipi/lib/basler-daA2500-60mci-imx8.cti) ==23755== by 0xD50D837: ??? (in /opt/dart-bcon-mipi/lib/basler-daA2500-60mci-imx8.cti) ==23755== by 0xD338B7B: ??? (in /opt/dart-bcon-mipi/lib/basler-daA2500-60mci-imx8.cti) ==23755== by 0xD316A6B: ??? (in /opt/dart-bcon-mipi/lib/basler-daA2500-60mci-imx8.cti) ==23755== Address 0x8312088 is on thread 4's stack ==23755== Uninitialised value was created by a stack allocation ==23755== at 0xD518CAC: ??? (in /opt/dart-bcon-mipi/lib/basler-daA2500-60mci-imx8.cti) ==23755== ==23755== Conditional jump or move depends on uninitialised value(s) ==23755== at 0xD51BA18: ??? (in /opt/dart-bcon-mipi/lib/basler-daA2500-60mci-imx8.cti) ==23755== by 0xD527AFB: ??? (in /opt/dart-bcon-mipi/lib/basler-daA2500-60mci-imx8.cti) ==23755== by 0xD51903F: ??? (in /opt/dart-bcon-mipi/lib/basler-daA2500-60mci-imx8.cti) ==23755== by 0xD50D7A3: ??? (in /opt/dart-bcon-mipi/lib/basler-daA2500-60mci-imx8.cti) ==23755== by 0xD50D837: ??? (in /opt/dart-bcon-mipi/lib/basler-daA2500-60mci-imx8.cti) ==23755== by 0xD338B7B: ??? (in /opt/dart-bcon-mipi/lib/basler-daA2500-60mci-imx8.cti) ==23755== by 0xD316A6B: ??? (in /opt/dart-bcon-mipi/lib/basler-daA2500-60mci-imx8.cti) ==23755== by 0xD3128EB: ??? (in /opt/dart-bcon-mipi/lib/basler-daA2500-60mci-imx8.cti) ==23755== by 0xD2EB46B: ??? (in /opt/dart-bcon-mipi/lib/basler-daA2500-60mci-imx8.cti) ==23755== by 0xD303013: IFOpenDevice (in /opt/dart-bcon-mipi/lib/basler-daA2500-60mci-imx8.cti) ==23755== by 0x8E034BB: ??? (in /opt/pylon/lib/libpylon_TL_gtc-6.2.0.so) ==23755== by 0x8DFDB63: ??? (in /opt/pylon/lib/libpylon_TL_gtc-6.2.0.so) ==23755== Uninitialised value was created by a stack allocation ==23755== at 0xD518CAC: ??? (in /opt/dart-bcon-mipi/lib/basler-daA2500-60mci-imx8.cti) ==23755== ==23755== Conditional jump or move depends on uninitialised value(s) ==23755== at 0xD51B9BC: ??? (in /opt/dart-bcon-mipi/lib/basler-daA2500-60mci-imx8.cti) ==23755== by 0xD51BA97: ??? (in /opt/dart-bcon-mipi/lib/basler-daA2500-60mci-imx8.cti) ==23755== by 0xD527AFB: ??? (in /opt/dart-bcon-mipi/lib/basler-daA2500-60mci-imx8.cti) ==23755== by 0xD51903F: ??? (in /opt/dart-bcon-mipi/lib/basler-daA2500-60mci-imx8.cti) ==23755== by 0xD50D7A3: ??? (in /opt/dart-bcon-mipi/lib/basler-daA2500-60mci-imx8.cti) ==23755== by 0xD50D837: ??? (in /opt/dart-bcon-mipi/lib/basler-daA2500-60mci-imx8.cti) ==23755== by 0xD338B7B: ??? (in /opt/dart-bcon-mipi/lib/basler-daA2500-60mci-imx8.cti) ==23755== by 0xD316A6B: ??? (in /opt/dart-bcon-mipi/lib/basler-daA2500-60mci-imx8.cti) ==23755== by 0xD3128EB: ??? (in /opt/dart-bcon-mipi/lib/basler-daA2500-60mci-imx8.cti) ==23755== by 0xD2EB46B: ??? (in /opt/dart-bcon-mipi/lib/basler-daA2500-60mci-imx8.cti) ==23755== by 0xD303013: IFOpenDevice (in /opt/dart-bcon-mipi/lib/basler-daA2500-60mci-imx8.cti) ==23755== by 0x8E034BB: ??? (in /opt/pylon/lib/libpylon_TL_gtc-6.2.0.so) ==23755== Uninitialised value was created by a stack allocation ==23755== at 0xD518CAC: ??? (in /opt/dart-bcon-mipi/lib/basler-daA2500-60mci-imx8.cti) ==23755== ==23755== Conditional jump or move depends on uninitialised value(s) ==23755== at 0xD51B9CC: ??? (in /opt/dart-bcon-mipi/lib/basler-daA2500-60mci-imx8.cti) ==23755== by 0xD51BA97: ??? (in /opt/dart-bcon-mipi/lib/basler-daA2500-60mci-imx8.cti) ==23755== by 0xD527AFB: ??? (in /opt/dart-bcon-mipi/lib/basler-daA2500-60mci-imx8.cti) ==23755== by 0xD51903F: ??? (in /opt/dart-bcon-mipi/lib/basler-daA2500-60mci-imx8.cti) ==23755== by 0xD50D7A3: ??? (in /opt/dart-bcon-mipi/lib/basler-daA2500-60mci-imx8.cti) ==23755== by 0xD50D837: ??? (in /opt/dart-bcon-mipi/lib/basler-daA2500-60mci-imx8.cti) ==23755== by 0xD338B7B: ??? (in /opt/dart-bcon-mipi/lib/basler-daA2500-60mci-imx8.cti) ==23755== by 0xD316A6B: ??? (in /opt/dart-bcon-mipi/lib/basler-daA2500-60mci-imx8.cti) ==23755== by 0xD3128EB: ??? (in /opt/dart-bcon-mipi/lib/basler-daA2500-60mci-imx8.cti) ==23755== by 0xD2EB46B: ??? (in /opt/dart-bcon-mipi/lib/basler-daA2500-60mci-imx8.cti) ==23755== by 0xD303013: IFOpenDevice (in /opt/dart-bcon-mipi/lib/basler-daA2500-60mci-imx8.cti) ==23755== by 0x8E034BB: ??? (in /opt/pylon/lib/libpylon_TL_gtc-6.2.0.so) ==23755== Uninitialised value was created by a stack allocation ==23755== at 0xD518CAC: ??? (in /opt/dart-bcon-mipi/lib/basler-daA2500-60mci-imx8.cti) ==23755== ==23755== Conditional jump or move depends on uninitialised value(s) ==23755== at 0xD51D720: ??? (in /opt/dart-bcon-mipi/lib/basler-daA2500-60mci-imx8.cti) ==23755== by 0xD51D973: ??? (in /opt/dart-bcon-mipi/lib/basler-daA2500-60mci-imx8.cti) ==23755== by 0xD553C57: ??? (in /opt/dart-bcon-mipi/lib/basler-daA2500-60mci-imx8.cti) ==23755== by 0xD5279D3: ??? (in /opt/dart-bcon-mipi/lib/basler-daA2500-60mci-imx8.cti) ==23755== by 0xD51903F: ??? (in /opt/dart-bcon-mipi/lib/basler-daA2500-60mci-imx8.cti) ==23755== by 0xD50D7A3: ??? (in /opt/dart-bcon-mipi/lib/basler-daA2500-60mci-imx8.cti) ==23755== by 0xD50D837: ??? (in /opt/dart-bcon-mipi/lib/basler-daA2500-60mci-imx8.cti) ==23755== by 0xD338B7B: ??? (in /opt/dart-bcon-mipi/lib/basler-daA2500-60mci-imx8.cti) ==23755== by 0xD316A6B: ??? (in /opt/dart-bcon-mipi/lib/basler-daA2500-60mci-imx8.cti) ==23755== by 0xD3128EB: ??? (in /opt/dart-bcon-mipi/lib/basler-daA2500-60mci-imx8.cti) ==23755== by 0xD2EB46B: ??? (in /opt/dart-bcon-mipi/lib/basler-daA2500-60mci-imx8.cti) ==23755== by 0xD303013: IFOpenDevice (in /opt/dart-bcon-mipi/lib/basler-daA2500-60mci-imx8.cti) ==23755== Uninitialised value was created by a stack allocation ==23755== at 0xD518CAC: ??? (in /opt/dart-bcon-mipi/lib/basler-daA2500-60mci-imx8.cti) ==23755== ==23755== Conditional jump or move depends on uninitialised value(s) ==23755== at 0xD51D760: ??? (in /opt/dart-bcon-mipi/lib/basler-daA2500-60mci-imx8.cti) ==23755== by 0xD51D973: ??? (in /opt/dart-bcon-mipi/lib/basler-daA2500-60mci-imx8.cti) ==23755== by 0xD553C57: ??? (in /opt/dart-bcon-mipi/lib/basler-daA2500-60mci-imx8.cti) ==23755== by 0xD5279D3: ??? (in /opt/dart-bcon-mipi/lib/basler-daA2500-60mci-imx8.cti) ==23755== by 0xD51903F: ??? (in /opt/dart-bcon-mipi/lib/basler-daA2500-60mci-imx8.cti) ==23755== by 0xD50D7A3: ??? (in /opt/dart-bcon-mipi/lib/basler-daA2500-60mci-imx8.cti) ==23755== by 0xD50D837: ??? (in /opt/dart-bcon-mipi/lib/basler-daA2500-60mci-imx8.cti) ==23755== by 0xD338B7B: ??? (in /opt/dart-bcon-mipi/lib/basler-daA2500-60mci-imx8.cti) ==23755== by 0xD316A6B: ??? (in /opt/dart-bcon-mipi/lib/basler-daA2500-60mci-imx8.cti) ==23755== by 0xD3128EB: ??? (in /opt/dart-bcon-mipi/lib/basler-daA2500-60mci-imx8.cti) ==23755== by 0xD2EB46B: ??? (in /opt/dart-bcon-mipi/lib/basler-daA2500-60mci-imx8.cti) ==23755== by 0xD303013: IFOpenDevice (in /opt/dart-bcon-mipi/lib/basler-daA2500-60mci-imx8.cti) ==23755== Uninitialised value was created by a stack allocation ==23755== at 0xD518CAC: ??? (in /opt/dart-bcon-mipi/lib/basler-daA2500-60mci-imx8.cti) ```
stefanklug commented 1 year ago

Thanks for the valgrind report. We will look into the issue.

stefanklug commented 1 year ago

@simoberny Could you provide more information on the exact versions you are using? In the valgrind log it is called "basler-daA2500-60mci-imx8.cti". But the producer in this layer is named "basler-daA2500-60mci.cti". You can get more details by executing the cti file as binary (e.g. ./basler-daA2500-60mci-imx8.cti )

simoberny commented 1 year ago
GenTLProducer Copyright (C) 2021 Basler AG
Version 1.6.4-imx8+dev20210705054912
Tag: -none-
Commit: 4958644e
Date: Mon, 05 Jul 2021 06:06:38 +0000

Link to the Variscite custom Yocto using it: Variscite CEP Guide and version