Re: [Qemu-devel] [PATCH] linux-user: Fix locking order in fork_start()

2018-01-19 Thread Laurent Vivier
Le 04/12/2017 à 15:22, Peter Maydell a écrit : > Our locking order is that the tb lock should be taken > inside the mmap_lock, but fork_start() grabs locks the > other way around. This means that if a heavily multithreaded > guest process (such as Java) calls fork() it can deadlock, > with the thre

Re: [Qemu-devel] [PATCH] linux-user: Fix locking order in fork_start()

2017-12-06 Thread Alex Bennée
Peter Maydell writes: > Our locking order is that the tb lock should be taken > inside the mmap_lock, but fork_start() grabs locks the > other way around. This means that if a heavily multithreaded > guest process (such as Java) calls fork() it can deadlock, > with the thread that called fork()

Re: [Qemu-devel] [PATCH] linux-user: Fix locking order in fork_start()

2017-12-05 Thread Paolo Bonzini
On 04/12/2017 15:22, Peter Maydell wrote: > Our locking order is that the tb lock should be taken > inside the mmap_lock, but fork_start() grabs locks the > other way around. This means that if a heavily multithreaded > guest process (such as Java) calls fork() it can deadlock, > with the thread th

[Qemu-devel] [PATCH] linux-user: Fix locking order in fork_start()

2017-12-04 Thread Peter Maydell
Our locking order is that the tb lock should be taken inside the mmap_lock, but fork_start() grabs locks the other way around. This means that if a heavily multithreaded guest process (such as Java) calls fork() it can deadlock, with the thread that called fork() stuck in fork_start() with the tb l