Начиная с версии 1.1.2 RSBAC предоставляет собственные функции управления
памятью. Также, при включенной поддержке REG, эти функции экспортируются
для модулей.
В версиях ядра с 2.4.0 отдельные участки памяти используются как память
kmalloc-стиля для предоставления лучшего контроля над использованием
памяти через /proc/slabinfo.
Все функции определены здесь:
#include <rsbac/rkmem.h>
rsbac_kmalloc функционирует как kmalloc со вторым параметром GFP_KERNEL.
void * rsbac_kmalloc (size_t size);
rsbac_kfree использован как kfree - проверьте пожалуйста, что вы
не вызываете его с неправильными указателями
void rsbac_kfree (const void *objp);
rsbac_vkmalloc ассигнует через rsbac_kmalloc для малых размеров
(до RSBAC_MAX_KMALLOC) и через vmalloc для больших размеров. Когда
используется vmalloc, то в *vmalloc_used_p он помещает булевое
значение TRUE или FALSE
void * rsbac_vkmalloc
(size_t size, boolean * vmalloc_used_p);
Для высвобождения такой памяти используется rsbac_vkfree. Для получения
типа памяти требуется булевое значение vmalloc_used от rsbac_vkmalloc