[Armadillo:04101] Re: Armadillo-220 でのsetitimer
nakamura
email@hidden
2009年 3月 6日 (金) 16:49:38 JST
中村です。
> 原因わかりました。setitimer()のコードに off by oneのバグがあったようで
> す。パッチを添付します。
>
> http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commitdiff;h=d912d1ff218195c248c770eb677726695e07aa40
この、カーネルのitimer.cパッチをあて、
添付していただいたyashiさんのテストコード、私のテストコード、とも、
正常に(↓のように10ms繰り上がりで)動作することを確認しました。
> ちなみに、現在 a220が採用しているカーネルではタイマーの精度が 10msなの
> で 10-19msを指定すると 10ms分繰り上がって 20msになります。9999usまでの
> 指定であれば、10msでシグナルが発生します。
こういうものだと思って、希望の時間から1us引いた値をセットして
使うことにします。
希望時間より1us少なくしたテストもOKでした。
また、10msよりも大きい50msや100msなども希望通り動いてくれています。
ありがとうございました。
--
なかむら
armadillo メーリングリストの案内