[PATCH v5] um: Enable preemption in UML

Johannes Berg johannes at sipsolutions.net
Fri Sep 22 01:43:10 PDT 2023


On Fri, 2023-09-22 at 10:41 +0200, Johannes Berg wrote:
> > 
> > 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?
> 

Haha, no, I'm an idiot - should've checked earlier. __might_resched()
has a ratelimit on this print ... :)

johannes



More information about the linux-um mailing list