linux related concepts - Jong0504/linux-kernel GitHub Wiki

Detect Memory Leak

  • use kmemleak subsystem
  1. enable kmemleak module
  2. insert kmemleak module to test

Memory Allocate

  • kmalloc don't guarantee physical continuous memory

  • dma buffer: use alloc_pages_exact

  • reserved pages

  • config_kmemcheck=y

  • virtual address-->swap out

  • irq, non-irq context

  • kernel lock

bottom half:

  • workq --> non-irq context

  • tasklet --> irq context

  • execute_in_process_context

preempt

  • need to have different priority for each process
  • support multi-processor and SMP to increase performance