On Monday 26 November 2007, Jan Kratochvil wrote: > Hi, > > this testcase: > http://people.redhat.com/jkratoch/dabr-lost.c > > reproduces a PPC DABR kernel bug. The variable `variable' should not get > modified as the thread modifying it should be caught by its DABR: > > $ ./dabr-lost > TID 30914: DABR 0x10012a77 NIP 0x80f6ebb318 > TID 30915: DABR 0x10012a77 NIP 0x80f6ebb318 > TID 30916: DABR 0x10012a77 NIP 0x80f6ebb318 > TID 30914: hitting the variable > TID 30915: hitting the variable > TID 30916: hitting the variable > variable found = 30916, caught TID = 30914 > TID 30916: DABR 0x10012a77 > Variable got modified by a thread which has DABR still set! >
This sounds like a bug recently reported by Uli Weigand. BenH said he'd take a look, but it probably fell under the table. The problem found by Uli is that on certain processors (Cell/B.E. in his case), the DABRX register needs to be set in order for the DABR to take effect. Arnd <>< _______________________________________________ Linuxppc-dev mailing list Linuxppc-dev@ozlabs.org https://ozlabs.org/mailman/listinfo/linuxppc-dev