옛날에 그냥 전역변수 값 읽어다 쓰고 그랬는데..
사실 문제가 있는 방법이었다.
다음 함수를 쓰는 것이 정확한 방법인갑다.
링크는 뭐야.. 그냥 시스템 콜 추가한 것인가..
jiffies_to_usecs() // us로 읽는다.
jiffies_to_msecs() // ms 로 읽는다.
get_jiffies_64 () // 그냥 틱 값을 읽는다.
반대로 msec_to_jiffies, usec_to_jiffies도 쓰는 듯.
일반적이라면 HZ 상수가 100 이므로 1틱은 10m이지만,
요즘은 뭔가 정밀 타이머도 제공하는 것 같고..
잘 모르겠다;
del_timer(&tsi->timer);
tsi->timer.expires = get_jiffies_64() + 20/(1000/msecs_to_jiffies(1000));
tsi->timer.function = do_ts_timer;
tsi->timer.data = (unsigned long)tsi;
add_timer(&tsi->timer);
... 라고 쓰고 아키별 함수 원형 깠더니 걍 jiffies 리턴... 뭥미..