0
동적 타이머를 사용하는 커널 (2.6.28) 모듈을 작성하고 있습니다. 다음과 같이 timer_list 구조를 사용하고 있습니다.Linux 커널 모듈 timer_list를 사용하면 시스템이 손상 될 수 있습니다.
struct timer_list our_timer;
init_timer(&our_timer);
our_timer.function = handleFlowTimer;
our_timer.expires = jiffies + 2000;
our_timer.data = 0;
add_timer(&our_timer);
void handleFlowTimer(unsigned long data)
{
//do nothing
}
타이머가 만료 될 때까지 약 2 초 동안 정상적으로 작동합니다. 그런 다음 시스템이 충돌합니다. 또한 같은 결과로 다음과 같이 시도했습니다.
struct timer_list our_timer = TIMER_INITIALIZER(handleFlowTimer, 0, 0);
mod_timer(&our_timer, jiffies + 2000);
어떤 도움을 주시면 감사하겠습니다!
하, 그냥 알아 낸 후 당신의 반응을 보았습니다. 젠장! 감사! –