리눅스 모듈의 kmalloc()수행 정보 출력하기

nadalsh의 이미지

안녕하세요!!

리눅스 모듈을 하나 만들어서 kmalloc() kfree()를 수행하고.
kmalloc()이 실제로 수행되는 slab.c를 수정하여 kmalloc을 부른 모듈이름과 할당된 메모리 크기 등의 정보를
printk문으로 출력해보고 싶은데.. 가능할까요??

수정해야 되는 부분이나 관련 문서 등.. 조언 부탁드립니다. ^^

cats96의 이미지

void * kmalloc (size_t size, int flags)

할당사이즈는 size_t size로 알수있는데...

호출한모듈이름은 알수있는방법이 없을듯한데요...

U.Yeon.O의 이미지

kmalloc 이 정의되어 있는 header file 에 아래와 같은 define 문을 사용하면 어떨까요?

#define kmalloc(size, flag) do { \
printk("%s blah...\n", __FILE__ , ... ); \
kmalloc(size, floag); \
} while(0)

물론 전체 커널을 다시 빌드해야 합니다.