Skip to content
SimonKagstrom edited this page Nov 26, 2014 · 87 revisions

Release critical (permanent list)

  • Fix PowerPC dlopen stuff (both build and run)
  • Test on 32-bit systems
  • Correct unit test failures
  • Change filename CRC into one based on path, not contents
  • Update man page
  • Update ChangeLog

Python engine

  • Map last line of a multi-line string to the first on assignments
  • Handle backslashes
  • On exceptions, it seems the covered data is NULL:ed??
  • Use a C python module and skip the FIFO stuff altogether...
  • Accumulation of data is sometimes broken, unclear why

Ptrace engine

  • solib: Keep current LD_PRELOAD (and add test for it)
  • Use kernel 3.1 PTRACE_SEIZE, PTRACE_INTERRUPT instead of attach?
  • Implement ARM-support
  • 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)

BASH engine

  • Update shcov bug reports that have been fixed with kcov

ELF parser

  • Rewrite to use libbfd
  • Show unreachable code somehow (e.g., to detect goto fail; goto fail; dead code-type of errors)
  • Add --verify option which disassembles symbols before setting breakpoints: Throw away entries in the middle of instructions

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

  • Add --merge option to just merge multiple output directories
  • Add robot framework test for --include/exclude-path.
  • 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
  • Make ptrace build optional
  • Provide a hash-bang binary that does kcov collection (for python, shell etc)
Clone this wiki locally