> A non-fatal signal being delivered to a task which is > in the middle of a page fault may well end up in an > infinite loop, attempting to handle the page fault and > failing forever. > > On seeing NOPAGE, the fault handler believes the PTE > is in the page table, so does nothing before it returns > to arch code. It will end up returning to userspace if > the signal is non-fatal, at which point it'll go right > back into the page fault handler, and mutex_lock_interruptible() > will immediately fail. So we've converted a sleeping lock > into the most expensive spinlock. > > I don't think the graphics drivers really want to be > interrupted by any signal. I think they want to be > interruptible by fatal signals and should use the > mutex_lock_killable / fatal_signal_pending family of > functions. So mutex_lock_interruptible() is replaced > by mutex_lock_killable() > Matthew, are we going to fix similar issues in all drivers as part of this clean up ? _______________________________________________ dri-devel mailing list dri-devel@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/dri-devel