0
这样看来,从nanosleep()
在kernel/time/hrtimer.c
的来源和restart_syscall()
的联机帮助,为了使nanosleep()
与信号后,正确的超时重新启动,这样可以节省一些国家为current_thread_info()->restart_block
,返回ERESTART_RESTARTBLOCK
并且信号在信号处理程序返回执行此操作后,传递代码将安排restart_syscall()
被调用。但是:ERESTART_RESTARTBLOCK和restart_syscall混乱
- 对于一个系统调用,
current_thread_info()->restart_block
只有空间,那么在递归信号的情况下会发生什么? - 在调用信号处理程序之前,ARM和x86信号传递代码会重置
current_thread_info()->restart_block
。 - ARM信号传输代码不安排调用
restart_syscall()
,而是将返回码设置为-EINTR
。
我在这段代码的目的或功能方面的错误在哪里?