← Back to team overview

kicad-developers team mailing list archive

Re: How much do we care about small memory leaks?


The short answer is a lot.  I know the OS will clean up allocated memory
on application close but this lackadaisical attitude is not good
programming practice.  Chances are if you are not concerned about
cleaning up memory on application close, then you are probably not very
concerned about memory management in general.  Cleaning up these memory
leaks makes it easier to quickly identify new memory leaks when they
occur since it lowers the noise in memory leak reports.

On 5/29/20 2:39 PM, Simon Richter wrote:
> Hi,
> FWIW, I've been running the tests with memory checking enabled on both
> Linux and Windows (MSVC), and we have several leaks there already, some
> from us, some from wxWidgets, some from Gtk, some from Python, and
> apparently some from Boost.Test. I don't exactly trust DrMemory yet, it
> seems to sometimes show false positives, but I couldn't yet create
> simple test cases that have the same false positives.
> Since the test cases are low-level stuff with shallow call stacks, those
> should give excellent inroads into getting rid of a lot of memory
> checker noise.
> I've gotten a bit of pushback from the Gtk people on cleaning up their
> singletons, apparently they prefer to suppress valgrind messages after
> verifying that a particular object is supposed to leak.
> What is a bit annoying is that Jenkins seems to be unable to generate
> reports for this. We have summary information for our test cases in XML
> form, as well as log files from valgrind and DrMemory for individual
> cases, but these aren't yet archived or postprocessed.
> For report files (but only if no build is currently running :/)
> Linux:
> https://jenkins.simonrichter.eu/job/linux-kicad-head/ws/build/Testing/Temporary/
> (MemoryChecker.*.log)
> Windows:
> https://jenkins.simonrichter.eu/job/windows-kicad-msvc-head/build=release,cpu=amd64,label=msvc/ws/build/Testing/Temporary/DrMemory/
> Debug builds on Windows often run into timeouts because memory error
> report generation takes close to an hour for some tests. :/
>    Simon
> _______________________________________________
> Mailing list: https://launchpad.net/~kicad-developers
> Post to     : kicad-developers@xxxxxxxxxxxxxxxxxxx
> Unsubscribe : https://launchpad.net/~kicad-developers
> More help   : https://help.launchpad.net/ListHelp

Attachment: signature.asc
Description: OpenPGP digital signature