Skip to content
Simon Kagstrom edited this page Apr 13, 2015 · 87 revisions

Release critical (permanent list)

  • Correct unit test failures
  • Update man page
  • Update ChangeLog

Python engine

  • Map last line of a multi-line string to the first on assignments
  • Handle backslashes
  • Use a C python module and skip the FIFO stuff altogether...

Ptrace engine

  • solib: Keep current LD_PRELOAD (and add test for it)
  • Use kernel 3.1 PTRACE_SEIZE, PTRACE_INTERRUPT instead of attach?
  • Make portable to FreeBSD, Mac OS X

Kernel engine

  • Test with larger modules
  • Oops... Maybe use trace-kprobes.c instead...
  • kprobe-coverage: Use S_IRUGO etc
  • kprobe-coverage: Only allow one to open the show file
  • See if something can be done about .init.text, .exit.text
  • Use select() to avoid hanging on input from the kernel (allows output generation while waiting)

ELF parser

  • Rewrite to use libbfd (if possible...)
  • Show unreachable code somehow (e.g., to detect goto fail; goto fail; dead code-type of errors)

Server mode

  • Separate output dir and database dir for --report-only
  • Make it possible to supply multiple binaries for --report-only
  • Produce database files of addresses-to-instrument so that binaries without symbols can be used
  • (Above) --create-database
  • Add a shared library that can be LD_PRELOAD:ed for coverage

Output

  • File locking to avoid races

Web pages

  • Code highlighting
  • Make marked lines extend to the end of the line

Misc

  • Use uint64_t for addresses
  • Issue #21: Make ptrace build optional
  • Provide a hash-bang binary that does kcov collection (for python, shell etc)