On Wednesday 28 November 2007, Jan Kratochvil wrote: > Please be aware DABR works fine if the same code runs just 1 (always) or > 2 (sometimes) threads. It starts failing with too many threads running: > > $ ./dabr-lost > TID 32725: DABR 0x1001279f NIP 0xfecf41c > TID 32726: DABR 0x1001279f NIP 0xfecf41c > TID 32725: hitting the variable > variable found = -1, caught TID = 32725 > TID 32726: hitting the variable > variable found = -1, caught TID = 32726 > The kernel bug did not get reproduced - increase THREADS. > > As I did not find any code in that kernel touching DABRX its value should not > be dependent on the number of threads running. >
Right, this is a different problem from the one reported by Uli. From what I can tell, your problem is that you set the DABR only in one thread, so the other threads don't see it. DABR is saved in the thread_struct, so setting it in one thread doesn't have an impact on any other thread. Arnd <>< _______________________________________________ Linuxppc-dev mailing list Linuxppc-dev@ozlabs.org https://ozlabs.org/mailman/listinfo/linuxppc-dev