linux kernel 에서 메모리 누수가 납니다.
글쓴이: trymp / 작성시간: 목, 2020/07/16 - 11:15오전
kernel 3.x.x 커널을 사용중인데요.
어떤 action 도 없이 그냥 가만히 놔두어도 2~3 일 후에 200MB 정도가 slab 에서 사라집니다.
kmalloc-8192 가 꾸준히 증가하던데요.
어떤쪽에서 해당 메모리를 할당하는지 위치를 못 찾겠습니다.
이런 특정 slab 을 사용하는 콜 위치를 trace 할 수 있는 방법이 있을까요?
어떤 부분에서 호출하고 계속 메모리를 누수시키는지 찾고 싶습니다.
조언해 주시면 감사하겟습니다.
Forums:
https://brunch.co.kr/@alden
https://brunch.co.kr/@alden/28
위에 보면 slab 메모리 누수의 발생과 이를 해결하는 과정을 설명한게 있네요.
이처럼 의심가는 서비스 하나하나 strace 같은 것으로 추적 해보는 방법..
그리고, 현재 상황을 최대한 자세히 설명 주셔야 뭔가 답변이 가능하지 않나 생각합니다.
#include <com.h> <C2H5OH.h> <woman.h>
do { if (com) hacking(); if (money) drinking(); if (women) loving(); } while (1);
CONFIG_DEBUG_KMEMLEAK 컨피그를 사용해보세요
CONFIG_DEBUG_KMEMLEAK 컨피그를 사용하시면, 메모리 누수 현상을 확인할 수 있습니다.
자세한 내용은 아래 링크를 참고하세요.
[Kernel] memory leak - debug
http://rousalome.egloos.com/9964079
(개인블로그)
http://rousalome.egloos.com
댓글 달기