On 28 August 2017 at 01:29, 임영재 youngjae24.lim@samsung.com wrote:
Hello.
My name is youngjae
I am enabling coresight to gather perf information through coresight.
I have some techincal problem.
I need a help.
My device has Kernel version - 4.9.39
I did it as below.
I cloned 4.9 version in Linaro opencsd git
git clone https://github.com/Linaro/OpenCSD.git
git checkout origin/perf-opencsd-4.9
I complied perf tool using NDK
After pushing the perf tool into the device, I obtained perf.data
echo 1 > /sys/devices/platform/1e005000.etf1/1e005000.etf1/enable_sink
./perf record -e cs_etm/timestamp,cycacc,@1e005000.etf1/u -C 0-3 -o perf_etf1.data --per-thread taskset f uname
echo 1 > /sys/devices/platform/1e004000.etf0/1e004000.etf0/enable_sink
./perf record -e cs_etm/timestamp,cycacc,@1e004000.etf0/u -C 4-7 -o perf_etf0.data --per-thread taskset f0 uname
I compiled openCSD library and off target perf tool.
I saw CoreSight ETM Trace data using perf report
. ... CoreSight ETM Trace data: size 2560 bytes
0: I_ASYNC : Alignment Synchronisation. 12: I_TRACE_INFO : Trace Info.; INFO=0x0 17: I_ADDR_L_64IS0 : Address, Long, 64 bit, IS0.; Addr=0xFFFFFF8008961430; 26: I_ASYNC : Alignment Synchronisation. 40: I_TRACE_INFO : Trace Info.; INFO=0x0 43: I_ADDR_L_64IS0 : Address, Long, 64 bit, IS0.; Addr=0xFFFFFF8008961904;
- I injected it as below
./perf inject --I perf_etf1.data --o inj_etf1.data --itrace=il64 –strip
=> Success. But, after executing perf report, I got below error.
Error: Selected -b but no branch data. Did you call perf record without -b? # To display the perf.data header info, please use --header/--header-only options.
Sebastian, can you help us here?
After compling higher perf tool - v4.12, I checked below fact. It shows nr of branch stack is 0.
0 18446744073709551615 0x99658 [0x38]: PERF_RECORD_SAMPLE(IP, 0x2): -1/-1: 0 period: 0 addr: 0 ... branch stack: nr:0 ... thread: :-1:-1 ...... dso: <not found>
I don't know what the reason is.
Could you help me?
etm configuration problem?
./perf inject --I perf_etf0.data --o inj_etf0.data --itrace=il64 –strip
=> Fail. I checked the problem. TRCIDR8 of ETM of core4 ~ core7 is 6.
This means max speculation depth. OpenCSD doesn't support max speculation depth.
So, we cannot use ETM of core4 ~ core7. Do you know when openCSD support max speculation depth?
If openCSD cannot support max speculation depth, we cannot gather etm information of core4 ~ core7.
My question is two.
What should I do to get nr of branch stack?
Who knows when openCSD will support max speculation depth?
Thank you.
Best Regards
Youngjae.
- etm information
0x1a8 [0x148]: PERF_RECORD_AUXTRACE_INFO type: 3 Header version 0 PMU type/num cpus 30064771076 Snapshot 0 Magic number 4629771061636907072 CPU 0 TRCCONFIGR 268439552 TRCTRACEIDR 16 TRCIDR0 671092385 TRCIDR1 1090581536 TRCIDR2 536875144 TRCIDR8 0 TRCAUTHSTATUS 204 Magic number 4629771061636907072 CPU 1 TRCCONFIGR 268439552 TRCTRACEIDR 18 TRCIDR0 671092385 TRCIDR1 1090581536 TRCIDR2 536875144 TRCIDR8 0 TRCAUTHSTATUS 204 Magic number 4629771061636907072 CPU 2 TRCCONFIGR 268439552 TRCTRACEIDR 20 TRCIDR0 671092385 TRCIDR1 1090581536 TRCIDR2 536875144 TRCIDR8 0 TRCAUTHSTATUS 204 Magic number 4629771061636907072 CPU 3 TRCCONFIGR 268439552 TRCTRACEIDR 22 TRCIDR0 671092385 TRCIDR1 1090581536 TRCIDR2 536875144 TRCIDR8 0 TRCAUTHSTATUS 204 Header version 0 PMU type/num cpus 30064771076 Snapshot 0 Magic number 4629771061636907072 CPU 4 TRCCONFIGR 268439552 TRCTRACEIDR 24 TRCIDR0 134220961 TRCIDR1 1392571392 TRCIDR2 268436616 TRCIDR8 6 TRCAUTHSTATUS 204 Magic number 4629771061636907072 CPU 5 TRCCONFIGR 268439552 TRCTRACEIDR 26 TRCIDR0 134220961 TRCIDR1 1392571392 TRCIDR2 268436616 TRCIDR8 6 TRCAUTHSTATUS 204 Magic number 4629771061636907072 CPU 6 TRCCONFIGR 268439552 TRCTRACEIDR 28 TRCIDR0 134220961 TRCIDR1 1392571392 TRCIDR2 268436616 TRCIDR8 6 TRCAUTHSTATUS 204 Magic number 4629771061636907072 CPU 7 TRCCONFIGR 268439552 TRCTRACEIDR 30 TRCIDR0 134220961 TRCIDR1 1392571392 TRCIDR2 268436616 TRCIDR8 6 TRCAUTHSTATUS 204
perf report --dump --stdio
. ... CoreSight ETM Trace data: size 2560 bytes 0: I_ASYNC : Alignment Synchronisation. 12: I_TRACE_INFO : Trace Info.; INFO=0x0 17: I_ADDR_L_64IS0 : Address, Long, 64 bit, IS0.; Addr=0xFFFFFF8008961430; 26: I_ASYNC : Alignment Synchronisation. 40: I_TRACE_INFO : Trace Info.; INFO=0x0 43: I_ADDR_L_64IS0 : Address, Long, 64 bit, IS0.; Addr=0xFFFFFF8008961904; 52: I_ATOM_F3 : Atom format 3.; NEN 53: I_ATOM_F3 : Atom format 3.; NNE 54: I_ATOM_F3 : Atom format 3.; NNN 55: I_ATOM_F3 : Atom format 3.; ENN 56: I_ATOM_F5 : Atom format 5.; NENEN 57: I_ATOM_F5 : Atom format 5.; ENENE 58: I_ATOM_F5 : Atom format 5.; NENEN 59: I_ATOM_F5 : Atom format 5.; ENENE 60: I_ATOM_F3 : Atom format 3.; NEN 64: I_ATOM_F3 : Atom format 3.; NNE 65: I_ATOM_F3 : Atom format 3.; NNN 66: I_ATOM_F3 : Atom format 3.; ENN 67: I_ATOM_F3 : Atom format 3.; NEN 68: I_ATOM_F3 : Atom format 3.; NNE 69: I_ATOM_F5 : Atom format 5.; NENEN 70: I_ATOM_F3 : Atom format 3.; NNE 71: I_ATOM_F5 : Atom format 5.; NENEN 72: I_ATOM_F5 : Atom format 5.; ENENE 73: I_ATOM_F5 : Atom format 5.; NENEN 74: I_ATOM_F5 : Atom format 5.; ENENE 75: I_ATOM_F5 : Atom format 5.; NENEN 76: I_ATOM_F5 : Atom format 5.; ENENE 77: I_ATOM_F3 : Atom format 3.; NEN 78: I_ATOM_F3 : Atom format 3.; NNE 80: I_ATOM_F5 : Atom format 5.; NENEN 81: I_ATOM_F5 : Atom format 5.; ENENE 82: I_ATOM_F5 : Atom format 5.; NENEN 83: I_ATOM_F5 : Atom format 5.; ENENE 84: I_ATOM_F5 : Atom format 5.; NENEN 85: I_ATOM_F5 : Atom format 5.; ENENE 86: I_ATOM_F5 : Atom format 5.; NENEN 87: I_ATOM_F3 : Atom format 3.; NNE 88: I_ATOM_F5 : Atom format 5.; NENEN 89: I_ATOM_F5 : Atom format 5.; ENENE 90: I_ATOM_F3 : Atom format 3.; NEN 91: I_ATOM_F3 : Atom format 3.; NNE 92: I_ATOM_F5 : Atom format 5.; NENEN 93: I_ATOM_F5 : Atom format 5.; ENENE 94: I_ATOM_F3 : Atom format 3.; NEN 96: I_ATOM_F3 : Atom format 3.; NNE 97: I_ATOM_F3 : Atom format 3.; NEN 98: I_ATOM_F3 : Atom format 3.; NNE 99: I_ATOM_F3 : Atom format 3.; NEE 100: I_ATOM_F4 : Atom format 4.; NNNN 101: I_ATOM_F6 : Atom format 6.; EEEN 102: I_ATOM_F3 : Atom format 3.; NNE 103: I_ATOM_F1 : Atom format 1.; E 104: I_ADDR_L_64IS0 : Address, Long, 64 bit, IS0.; Addr=0x00000076F64A1B50; 114: I_ATOM_F2 : Atom format 2.; EE 115: I_ADDR_L_32IS0 : Address, Long, 32 bit, IS0.; Addr=0xF65EE2C0; 120: I_ATOM_F2 : Atom format 2.; NE 121: I_ADDR_L_32IS0 : Address, Long, 32 bit, IS0.; Addr=0xF67DD370; 126: I_ATOM_F2 : Atom format 2.; NE 128: I_ADDR_S_IS0 : Address, Short, IS0.; Addr=0xF67DD390 ~[0x190] 130: I_ATOM_F3 : Atom format 3.; ENN 131: I_ATOM_F2 : Atom format 2.; NE 132: I_TIMESTAMP : Timestamp.; Updated val = 0xf6000 136: I_ATOM_F1 : Atom format 1.; E 137: I_ADDR_L_32IS0 : Address, Long, 32 bit, IS0.; Addr=0xF64A1B94; 142: I_ATOM_F2 : Atom format 2.; EE 144: I_ADDR_L_32IS0 : Address, Long, 32 bit, IS0.; Addr=0xF66430C0; 149: I_ATOM_F2 : Atom format 2.; EE 150: I_ADDR_L_32IS0 : Address, Long, 32 bit, IS0.; Addr=0xF663F5A0; 155: I_ATOM_F3 : Atom format 3.; NNN 156: I_ATOM_F1 : Atom format 1.; E 157: I_ADDR_L_32IS0 : Address, Long, 32 bit, IS0.; Addr=0xF66430E4; 163: I_ATOM_F3 : Atom format 3.; EEE 164: I_ATOM_F1 : Atom format 1.; E 165: I_ADDR_L_32IS0 : Address, Long, 32 bit, IS0.; Addr=0xF663BE00; 170: I_ATOM_F3 : Atom format 3.; EEN 171: I_ATOM_F3 : Atom format 3.; EEN 172: I_ATOM_F4 : Atom format 4.; NNNN 173: I_ATOM_F3 : Atom format 3.; EEN 174: I_ATOM_F3 : Atom format 3.; NEE 176: I_ATOM_F3 : Atom format 3.; NNE 177: I_ATOM_F3 : Atom format 3.; ENN 178: I_ATOM_F3 : Atom format 3.; EEN 179: I_ATOM_F3 : Atom format 3.; NEE 180: I_ATOM_F3 : Atom format 3.; NNE 181: I_ATOM_F3 : Atom format 3.; ENN 182: I_ATOM_F3 : Atom format 3.; EEN 183: I_ATOM_F3 : Atom format 3.; NEE 184: I_ATOM_F3 : Atom format 3.; NNE 185: I_ATOM_F3 : Atom format 3.; ENN 186: I_ATOM_F3 : Atom format 3.; EEN 187: I_ATOM_F3 : Atom format 3.; NEE 188: I_ATOM_F3 : Atom format 3.; NNE 189: I_ATOM_F3 : Atom format 3.; ENN 192: I_ATOM_F3 : Atom format 3.; EEN 193: I_ATOM_F3 : Atom format 3.; NEE 194: I_ATOM_F3 : Atom format 3.; NNE 195: I_ATOM_F3 : Atom format 3.; ENN 196: I_ATOM_F3 : Atom format 3.; ENE 197: I_ADDR_L_32IS0 : Address, Long, 32 bit, IS0.; Addr=0xF6642AF8; 202: I_ATOM_F3 : Atom format 3.; EEE 203: I_ATOM_F1 : Atom format 1.; E 204: I_ADDR_L_32IS0 : Address, Long, 32 bit, IS0.; Addr=0xF65FFA40; 210: I_ATOM_F2 : Atom format 2.; EE 211: I_ADDR_L_32IS0 : Address, Long, 32 bit, IS0.; Addr=0xF6642B58; 216: I_ATOM_F3 : Atom format 3.; ENE 217: I_ADDR_S_IS0 : Address, Short, IS0.; Addr=0xF6643100 ~[0x3100] 220: I_ATOM_F3 : Atom format 3.; ENE 221: I_ATOM_F5 : Atom format 5.; ENENE 222: I_ATOM_F3 : Atom format 3.; EEN 224: I_ATOM_F3 : Atom format 3.; EEN 225: I_ATOM_F6 : Atom format 6.; EEEEN 226: I_ATOM_F3 : Atom format 3.; ENN 227: I_ATOM_F3 : Atom format 3.; NEE 228: I_ATOM_F2 : Atom format 2.; NE 229: I_ADDR_S_IS0 : Address, Short, IS0.; Addr=0xF66456D4 ~[0x56D4] 232: I_ATOM_F3 : Atom format 3.; ENE 233: I_ADDR_S_IS0 : Address, Short, IS0.; Addr=0xF66456E0 ~[0xE0] 235: I_ATOM_F3 : Atom format 3.; NEN 236: I_ATOM_F3 : Atom format 3.; NNE 237: I_ATOM_F3 : Atom format 3.; ENE 238: I_ADDR_MATCH : Exact Address Match., [1] 240: I_ATOM_F3 : Atom format 3.; ENE 241: I_ADDR_MATCH : Exact Address Match., [1] 242: I_ATOM_F3 : Atom format 3.; NNE 243: I_ATOM_F5 : Atom format 5.; ENENE 244: I_ATOM_F3 : Atom format 3.; ENE 245: I_ATOM_F3 : Atom format 3.; ENN 246: I_ATOM_F3 : Atom format 3.; EEN 247: I_ATOM_F1 : Atom format 1.; E 248: I_ADDR_S_IS0 : Address, Short, IS0.; Addr=0xF6645B40 ~[0x5B40] 251: I_ATOM_F5 : Atom format 5.; NEEEE 252: I_ADDR_S_IS0 : Address, Short, IS0.; Addr=0xF6642F84 ~[0x2F84] 256: I_ATOM_F4 : Atom format 4.; NNNN 257: I_ATOM_F1 : Atom format 1.; E 258: I_ADDR_S_IS0 : Address, Short, IS0.; Addr=0xF6643118 ~[0x3118] 261: I_ATOM_F2 : Atom format 2.; EE 262: I_ADDR_L_32IS0 : Address, Long, 32 bit, IS0.; Addr=0xF663F960; 267: I_ATOM_F3 : Atom format 3.; NNE 268: I_ATOM_F1 : Atom format 1.; E 269: I_ADDR_L_32IS0 : Address, Long, 32 bit, IS0.; Addr=0xF6643128; 275: I_ATOM_F1 : Atom format 1.; E 276: I_ADDR_L_32IS0 : Address, Long, 32 bit, IS0.; Addr=0xF64A1BB8; 281: I_ATOM_F2 : Atom format 2.; EE 282: I_ADDR_L_32IS0 : Address, Long, 32 bit, IS0.; Addr=0xF65EF290; 288: I_ATOM_F3 : Atom format 3.; NNE 289: I_ADDR_L_32IS0 : Address, Long, 32 bit, IS0.; Addr=0xF64A1BC4; 294: I_ATOM_F2 : Atom format 2.; EE 295: I_ADDR_L_32IS0 : Address, Long, 32 bit, IS0.; Addr=0xF65EF164;
CoreSight mailing list CoreSight@lists.linaro.org https://lists.linaro.org/mailman/listinfo/coresight