I have do some test on you linuxator,and I lookup you code .it seems that there is still some­thing wrong with the lin­ux sig­nal emul .
I have two ques­tion about the signal.
1\ when we want to kill a sig­nal to a lin­ux process(linux_kill),signal like SIGKILL or SIGSTOP should be lin­ux process wide. that is mean we should depend on the “em “struct in a proc to find all the lin­ux thread in the proc ‚and kill them. but in your linuxtor,I find noth­ing to do with it.
2\ in nptl implemeta­tion, pthread_cancel will send SIGCANCEL(number is 32) to a thread. but there is noth­ing to do with it .so pthread_cancel is still not done with it.

I wish I can get answer