memguard.9freebsd

Langue: en

Version: 308576 (debian - 07/07/09)

Section: 9 (Appels noyau Linux)


BSD mandoc

NAME

MemGuard - memory allocator for debugging purposes

SYNOPSIS

options DEBUG_MEMGUARD

DESCRIPTION

is a simple and small replacement memory allocator designed to help detect tamper-after-free scenarios. These problems are more and more common and likely with multithreaded kernels where race conditions are more prevalent.

Currently, can only take over Fn malloc , Fn realloc and Fn free for a particular malloc type.

EXAMPLES

To use for memory type compiled into the kernel, one has to add the following line to the /boot/loader.conf
 vm.memguard.desc=<memory_type>
 

Where memory_type is a short description of memory type to monitor. The short description of memory type is the second argument to MALLOC_DEFINE9, so one has to find it in the kernel source.

To use for memory type defined in a kernel module, one has to set vm.memguard.desc sysctl(8) variable before loading the module:

 sysctl vm.memguard.desc=<memory_type>
 

The vm.memguard.divisor boot-time tunable is used to scale how much of kmem_map one wants to allocate for . The default is 10, so kmem_size /10 bytes will be used. The kmem_size value can be obtained via the vm.kmem_size sysctl(8) variable.

SEE ALSO

sysctl(8), vmstat(8), contigmalloc(9), malloc(9), redzone(9)

HISTORY

first appeared in Fx 6.0 .

AUTHORS

An -nosplit was written by An Bosko Milekic Aq bmilekic@FreeBSD.org . This manual page was written by An Christian Brueffer Aq brueffer@FreeBSD.org .

BUGS

Currently, it is not possible to override UMA zone(9) allocations.