kirancodes.me
To Proof Maintenance & Beyond!

Context- and path-sensitive memory leak detection

Yichen Xie, Alex Aiken

Abstract

We present a context- and path-sensitive algorithm for detecting memory leaks in programs with explicit memory management. Our leak detection algorithm is based on an underlying escape analysis: any allocated location in a procedure P that is not deallocated in P and does not escape from P is leaked. We achieve very precise context- and path-sensitivity by expressing our analysis using boolean constraints. In experiments with six large open source projects our analysis produced 510 warnings of which 455 were unique memory leaks, a false positive rate of only 10.8%. A parallel implementation improves performance by over an order of magnitude on large projects; over five million lines of code in the Linux kernel is analyzed in 50 minutes.

BibTeX
@inproceedings{Xie-Aiken:FSE05,
  author    = {Yichen Xie and
               Alex Aiken},
  title     = {Context- and path-sensitive memory leak detection},
  booktitle = {{ESEC/SIGSOFT} {FSE}},
  pages     = {115--125},
  publisher = {{ACM}},
  year      = {2005},
}

Related papers