Am 09.08.2018 um 19:39 schrieb Andrey Grodzovsky:
SIGKILL isn't processed as long as any thread of the application is still inside the kernel. That's why we have wait_event_killable().

Can you tell me where is this happening ? What i see is in the code is that do_group_exit calls zap_other_threads which just adds SIGKILL to signal sets of other threads in group and sends a wake up. Then do_exit will close all FDs for current thread and so .flush will be called, when last thread drops it's refcount for the FD .release will be called.

Good question, I have not the slightest idea.

Killed processes certainly doesn't die until all threads return from kernel space, but I'm not 100% sure if that happens before or after the flush.



dri-devel mailing list

Reply via email to