Valgrind Memcheck: Different ways to lose your memory
The Red Hat Developer blog posted an article I wrote. Valgrind Memcheck: Different ways to lose your memory.
It explains the different kinds of memory leaks (definitely, reachable, possibly and indirectly). Why which kinds are reported and/or marked as errors by default or not. How to generate suppressions. And how to run things in a way that is most helpful in a regression test suite.
It also includes some C code examples that will make you want to run screaming away to a more memory safe language. But till then, please make sure to run valgrind on your code.