dfec072ecd
General description: kmemcheck is a patch to the linux kernel that detects use of uninitialized memory. It does this by trapping every read and write to memory that was allocated dynamically (e.g. using kmalloc()). If a memory address is read that has not previously been written to, a message is printed to the kernel log. Thanks to Andi Kleen for the set_memory_4k() solution. Andrew Morton suggested documenting the shadow member of struct page. Signed-off-by: Vegard Nossum <vegardno@ifi.uio.no> Signed-off-by: Pekka Enberg <penberg@cs.helsinki.fi> [export kmemcheck_mark_initialized] [build fix for setup_max_cpus] Signed-off-by: Ingo Molnar <mingo@elte.hu> [rebased for mainline inclusion] Signed-off-by: Vegard Nossum <vegardno@ifi.uio.no>
16 lines
436 B
C
16 lines
436 B
C
#ifndef ARCH__X86__MM__KMEMCHECK__SHADOW_H
|
|
#define ARCH__X86__MM__KMEMCHECK__SHADOW_H
|
|
|
|
enum kmemcheck_shadow {
|
|
KMEMCHECK_SHADOW_UNALLOCATED,
|
|
KMEMCHECK_SHADOW_UNINITIALIZED,
|
|
KMEMCHECK_SHADOW_INITIALIZED,
|
|
KMEMCHECK_SHADOW_FREED,
|
|
};
|
|
|
|
void *kmemcheck_shadow_lookup(unsigned long address);
|
|
|
|
enum kmemcheck_shadow kmemcheck_shadow_test(void *shadow, unsigned int size);
|
|
void kmemcheck_shadow_set(void *shadow, unsigned int size);
|
|
|
|
#endif
|