• Russell King's avatar
    [ARM] Add restart block infrastructure · a19b3e7a
    Russell King authored
    Add the necessary infrastructure to handle restartable syscalls via
    the restart_block method.  This isn't perfect, since we are unable
    to modify the syscall number with ARM executables (it's typically
    encoded into the instruction in the text segment) so instead we
    build some code on the user space stack.
    
    There is a potential problem - what happens if we are sleeping,
    someone suspends us, resume (we continue to sleep via the restart
    block method) suspend and then resume again?  We will build two
    sets of restart code on the user stack.  This is probably a little
    inefficient, but it should be harmless.
    a19b3e7a
unistd.h 17.4 KB