ltp测试套件-timer_settime_5-2分析记录

timer_settime_5-2用例地址:

https://github.com/linux-test-project/ltp/blob/master/testcases/open_posix_testsuite/conformance/interfaces/timer_settime/5-2.c

错误log输出:

conformance/interfaces/timer_settime/timer_settime_5-2: execution: FAILED: Output: 
signal was not sent

原因分析:

测试源码中使用了一个DATEINPAST宏来作为参数,来设定timer的超时时间,timer超时后会向进程发送一个ALARM信号,程序会在10秒内检测是否收到信号,收到即测试通过。但是测试用例中,这个宏转换成年月日是:2002-11-12 19:12:38。如果当前时间与这个时间差距较大就会测试失败。(而且ltp代码上注释的时间是错误的)
    单板没有实时时钟芯片,系统时间是默认是1970年,所以要等个40来年,才能触发信号,10秒内肯定收不到!

解决方法:
    修改测试用例,设置一下系统时间,date -s "2002-11-12 19:12:34",在进行测试。

猜你喜欢

转载自blog.csdn.net/y33988979/article/details/82256460
今日推荐