[PATCH 2/3] drm/scheduler: Don't call wait_event_killable for signaled process.

Andrey Grodzovsky Andrey.Grodzovsky at amd.com
Wed Apr 25 14:21:45 UTC 2018

On 04/25/2018 09:55 AM, Oleg Nesterov wrote:
> On 04/24, Eric W. Biederman wrote:
>> Let me respectfully suggest that the wait_event_killable on that code
>> path is wrong.
> I tend to agree even if I don't know this code.
> But if it can be called from f_op->release() then any usage of "current" or
> signals looks suspicious. Simply because "current" can be completely irrelevant
> task which does the last fput(), say, cat /proc/pid/fdinfo/... or even a kernel
> thread.
> Oleg.

So what you say is that switching to current->PF_EXITING as indication 
of a reason why I am
here (drm_sched_entity_fini) is also a bad idea, but we still want to be 
able to exit immediately
and not wait for GPU jobs completion when the reason for reaching this 
code is because of KILL
signal to the user process who opened the device file. With termination 
from fput   it seems impossible...
But thinking more about it, any task still referencing this file and 
putting down the reference and is not
exiting due to SIGKILL will just have to go through the  slow path - 
wait for jobs completion on GPU (with some TO).



More information about the amd-gfx mailing list