Re: questions on CONFIG_PPC_ADV_DEBUG_REGS, DBCR0_BRT, and DBCR0_ACTIVE_EVENTS
From: shiva7 <hidden>
Date: 2014-05-20 13:07:01
Thanks again Scott. /> Any idea whether the DBCR0 BRT bit actually works(??),
Do you have reason to believe that it might not? /
I'm facing a strange problem which was not there on server processor. Let me try to give brief flow. Server : Set BE bit (thru system call or sigreturn) for specific thread -> for every branch -> trace exception -> Normal exception prolog (STD_EXCEPTION_COMMON) SRR0 and SRR1 Embedded/BOOKE: Set DE & BRT bit (thru system call or sigreturn) for specific thread -> for every branch taken -> Debug exception -> DEBUG_DEBUG prolog -> return_dbg_except DSRR0 & DSRR1 In server case, able to capture the branches as expected, but wherein BOOKE though branch taken exception are generated, at the certain stage (mostly after turn on BRT & DE bit) user process is deviated (not taking the same flow as like server) and leading to different corruption/unexpected behavior. /> And also, anything special required for "server" family application code
porting here ?? as because in server family the trace exception used to viz NORMAL exception proglog and uses SRR0 and SRR1 but in this ISA/embedded case have dedicated DEBUG_DEBUG prolog and dedicated registers DSRR0 and DSRR1.
IIRC the branch taken mechanism does have different semantics than the equivalent mechanism on server. You can find discussion of this in the archives. :-) /
Most of the discussions so far I have surfed are related to branch taken/fall through(not taken) semantics related. But, in general, if I have an application running on server where tracing was based on BE bit and same can run on e500mc with DE & BRT combination? Thanks In Advance. -- View this message in context: http://linuxppc.10917.n7.nabble.com/questions-on-CONFIG-PPC-ADV-DEBUG-REGS-DBCR0-BRT-and-DBCR0-ACTIVE-EVENTS-tp70147p82485.html Sent from the linuxppc-dev mailing list archive at Nabble.com.