Skip to content
dbaluta edited this page Apr 30, 2013 · 17 revisions

Table of Contents

Office hours

  • Daniel, room EG106b
  • Friday, 10-12, 12-20

Project Plan

May

  • 3 - 10 May
    • try to figure out how to print filename of the traced function.
    • patch functions code to introduce additional information
    • analyze define_trace initial commit
    • can we add accounting information to kmemleak to keep track of allocated/freed memory

April

  • 26 - 3 May
    • place a tracepoint inside kmalloc and record stats (filename, size).
  • 19 - 26 April
    • Analyze CONFIG_SLAB_DEBUG and do the same for CONFIG_MEM_DEBUG
    • Try to tag memory by hooking in kmalloc code with an inline function that getters information about the context.
    • Analyze if tracepoints can do the same as above.
    • Is there any memory path allocation in kernel which does not appear in /proc/meminfo ?
  • 12 - 19 April
    • Propose solution for memory tagging
    • Add -f option for meminfo script
  • 5 - 12 April
    • Add wiki page with all memory allocation sources
    • To search for link with slub/slob/slab config
    • Understand and find the code for the fields in cat /proc/meminfo output
    • Check where top program gets its information (probably its /proc/meminfo)
    • Analyze if we can do slabtop per process
    • create a script for diff-ing two cat /proc/meminfo outputs.

March

  • 22 - 29 March
    • On demand call for dump_tasks (procfs or sysfs)
    • Tracepoints (Daniel to provide more info)
    • Push code for modules on repo.
    • Check for mm subsystem mailing list.
    • Determine all available sources for memory allocation (use dump_stack in __alloc_pages()).
  • 15 - 22 March
    • create a kernel module that generates an OOM
    • analyze the code for OOM Killer (check if possible to dynamically deactivate it).
    • check if OOM killer can be activated on demand to print memory info on all existing processes.
    • determine all available sources for memory allocation.
  • 8 - 15 March
    • identify sources for memory allocation in kernel
    • analyze source code for kmemleak
    • analyze ExAllocatePoolWithTag Windows function. Can we borrow some idea?
Clone this wiki locally