[PATCH v5] um: Enable preemption in UML
Johannes Berg
johannes at sipsolutions.net
Fri Sep 22 01:41:42 PDT 2023
>
> Yes, but when does the fork actually happen?
>
Looking further at this, now I'm confused as to why it doesn't happen
_all_ the time.
I think this has pretty much always been wrong, just now we actually
notice it?
Basically, when we create a new thread (really just mm I think), we say
the first thing that has to run there is fork_handler(), which
initialises things the first time around. This calls force_flush_all()
But of course it's called from __schedule(), which has
preemption/interrupts disabled. So you can't do mmap_read_lock()?
But I'm confused as to why it doesn't seem happen all the time?
johannes
More information about the linux-um
mailing list