Paolo Bonzini <pbonz...@redhat.com> writes: > On 10/08/2015 18:36, Paolo Bonzini wrote: >>> > diff --git a/target-arm/translate.c b/target-arm/translate.c >>> > index 69ac18c..960c75e 100644 >>> > --- a/target-arm/translate.c >>> > +++ b/target-arm/translate.c >>> > @@ -11166,6 +11166,8 @@ static inline void >>> > gen_intermediate_code_internal(ARMCPU *cpu, >>> > >>> > dc->tb = tb; >>> > >>> > + tb_lock(); >> This locks twice, I think? Both cpu_restore_state_from_tb and >> tb_gen_code (which calls cpu_gen_code) take the lock. How does it work? >> > > ... ah, the lock is recursive! > > I think this can be avoided. Let's look at it next week.
I take it your around on the Tuesday (Fred and I arrive Monday evening). Shall we pick a time or hunt for each other in the hacking room? > > Paolo -- Alex Bennée