> On Jul 19, 2020, at 3:17 AM, Thomas Gleixner <t...@linutronix.de> wrote:
> 
> Andy Lutomirski <l...@kernel.org> writes:
>>> On Sat, Jul 18, 2020 at 7:16 AM Thomas Gleixner <t...@linutronix.de> wrote:
>>> Andy Lutomirski <l...@kernel.org> writes:
>>>> FWIW, TIF_USER_RETURN_NOTIFY is a bit of an odd duck: it's an
>>>> entry/exit word *and* a context switch word.  The latter is because
>>>> it's logically a per-cpu flag, not a per-task flag, and the context
>>>> switch code moves it around so it's always set on the running task.
>>> 
>>> Gah, I missed the context switch thing of that. That stuff is hideous.
>> 
>> It's also delightful because anything that screws up that dance (such
>> as failure to do the exit-to-usermode path exactly right) likely
>> results in an insta-root-hole.  If we fail to run user return
>> notifiers, we can run user code with incorrect syscall MSRs, etc.
> 
> Looking at it deeper, having that thing in the loop is a pointless
> exercise. This really wants to be done _after_ the loop.
> 

As long as we’re confident that nothing after the loop can set the flag again.

> Thanks,
> 
>        tglx

Reply via email to