linux kernel 에서 module 을 사용해서 insmod(), rmmod() 할 수 있잖아요?
가령 test.ko 라는 모듈이 있을 때,
[ linux buildin kernel ]
char *g_ptr = NULL;
EXPORT_SYMBOL(g_ptr);
[ test.ko ]
extern char *g_ptr;
g_ptr = kmalloc(10);
memcpy(g_ptr, "ABCD", 5);
위와 같은 형태로 되었을 때, g_ptr 을 해제하지 않고 rmmod test.ko 가 되었을 때
나중에 커널이미지에서 g_ptr 을 참조하면 어떻게 되나요?
printk("%s \n", g_ptr);
을 하면 g_ptr 은 아직 유효한 메모리라서 "ABCD" 찍히나요?
아니면 잘못된 메모리 참조로 패닉이 나나요?
회원들의 조언 부탁드립니다.