Hello,

cache l2x info

segfaults. Openocd (master + Oleksij's cortex_a patches), which can be
found in the "openocd-crash-20150729-1" branch of:

http://git.pengutronix.de/?p=mkl/openocd.git

> [1666287.629172] openocd[18471]: segfault at 4 ip 0813beb6 sp bfb4afe0 error 
> 4 in openocd[8048000+214000]

> (gdb) info registers 
> eax            0x93b29b4        154872244
> ecx            0x93e8590        155092368
> edx            0x0      0
> ebx            0xbfb4b01c       -1078677476
> esp            0xbfb4afe0       0xbfb4afe0
> ebp            0xbfb4b01c       0xbfb4b01c
> esi            0x93e93f0        155096048
> edi            0x93e8590        155092368
> eip            0x813beb6        0x813beb6 <arm7a_l2x_cache_info_command+38>
> eflags         0x10213  [ CF AF IF RF ]
> cs             0x73     115
> ss             0x7b     123
> ds             0x7b     123
> es             0x7b     123
> fs             0x0      0
> gs             0x33     51

> #0  arm7a_handle_l2x_cache_info_command (armv7a_cache=0x93b2ec4, 
> armv7a_cache=0x93b2ec4, cmd_ctx=0x93e8590) at armv7a_cache_l2x.c:185
>         l2x_cache = 0x0
> #1  arm7a_l2x_cache_info_command (cmd=0xbfb4b01c) at armv7a_cache_l2x.c:231
>         target = <optimized out>
>         armv7a = 0x93b29b4
> #2  0x0808509f in run_command (num_words=1, words=0x93e93f0, c=0x93bac20, 
> context=0x93e8590) at command.c:613
>         cmd = {ctx = 0x93e8590, current = 0x93bac20, name = 0x93baa20 "info", 
> argc = 0, argv = 0x93e93f4}
>         retval = <optimized out>
> #3  script_command_run (interp=interp@entry=0x9388028, argc=<optimized out>, 
> argv=argv@entry=0xbfb4b118, c=0x93bac20, capture=true) at command.c:210
>         __func__ = "script_command_run"
>         nwords = 1
>         state = 0x93e92d8
>         cmd_ctx = 0x93e8590
> #4  0x080852c5 in command_unknown (interp=0x9388028, argc=3, argv=<optimized 
> out>) at command.c:1017
>         cmd_name = 0x93e9320 "ocd_cache"
>         cmd_ctx = 0x1
>         c = 0x93bac20
>         __func__ = "command_unknown"
>         found = true
>         start = 0xbfb4b118
>         count = <optimized out>
> #5  0x08160468 in JimInvokeCommand (interp=interp@entry=0x9388028, 
> objc=objc@entry=3, objv=objv@entry=0xbfb4b110) at jim.c:10200
>         retcode = <optimized out>
>         cmdPtr = 0x93ba4a0
> #6  0x08160f79 in Jim_EvalObj (interp=0x9388028, scriptObjPtr=0x93b0b68) at 
> jim.c:10650
>         argc = 3
>         j = <optimized out>
>         i = 4
>         script = 0x93e8718
>         token = 0x93e9398
>         retcode = 0
>         sargv = {0x93b0c60, 0x93b16e0, 0x93b8c40, 0x2, 0x93e9392, 0xbfb4b1e4, 
> 0x9388028, 0x8156ca2 <Jim_NewStringObjNoAlloc+18>}
>         argv = 0xbfb4b110
>         prevScriptObj = 0x93a61d0
> #7  0x08165074 in Jim_EvalCoreCommand (interp=0x9388028, argc=3, 
> argv=0xbfb4b1e0) at jim.c:12923
>         rc = <optimized out>
> #8  0x08160468 in JimInvokeCommand (interp=interp@entry=0x9388028, 
> objc=objc@entry=3, objv=objv@entry=0xbfb4b1e0) at jim.c:10200
>         retcode = <optimized out>
>         cmdPtr = 0x9389300
> #9  0x08160f79 in Jim_EvalObj (interp=0x9388028, scriptObjPtr=0x93a61d0) at 
> jim.c:10650
>         argc = 3
>         j = <optimized out>
>         i = 4
>         script = 0x93a62d8
>         token = 0x93a6300
>         retcode = 0
>         sargv = {0x93a6270, 0x93929c0, 0x9393820, 0x815dc3e 
> <Jim_SetVariableStr+78>, 0x9388028, 0x93b0b68, 0x93937e8, 0x8156739 
> <Jim_NewStringObj+57>}
>         argv = 0xbfb4b1e0
> 
>         prevScriptObj = 0x93a5f80
> #10 0x081644fa in Jim_CatchCoreCommand (interp=0x9388028, argc=1, 
> argv=0xbfb4b2e4) at jim.c:13925
>         exitCode = 0
>         i = <optimized out>
>         sig = 0
>         ignore_mask = <optimized out>
> #11 0x08160468 in JimInvokeCommand (interp=interp@entry=0x9388028, 
> objc=objc@entry=2, objv=objv@entry=0xbfb4b2e0) at jim.c:10200
>         retcode = <optimized out>
>         cmdPtr = 0x93897f8
> #12 0x08160f79 in Jim_EvalObj (interp=0x9388028, scriptObjPtr=0x93a5f80) at 
> jim.c:10650
>         argc = 2
>         j = <optimized out>
>         i = 3
>         script = 0x93a6198
>         token = 0x93a5888
>         retcode = 0
>         sargv = {0x93a5af8, 0x93a61d0, 0x1, 0x93937e8, 0x9388028, 0x4, 0x2, 
> 0x8155fdb <Jim_FreeObj+59>}
>         argv = 0xbfb4b2e0
>         prevScriptObj = 0x93a5978
> #13 0x08160fb6 in Jim_EvalObj (interp=0x9388028, scriptObjPtr=0x93a5978) at 
> jim.c:10583
>         wordtokens = 1
>         expand = 0
>         wordObjPtr = 0x0
>         argc = 3
>         j = 2
>         i = 3
>         script = 0x93a5e50
>         token = 0x93a5e78
>         retcode = 0
>         sargv = {0x93a5b20, 0x93a5f48, 0x9388028, 0x816191f 
> <Jim_GetBoolFromExpr+63>, 0xbfb4b418, 0x0, 0x939b070, 0x8158768 
> <Jim_CompareStringImmediate+40>}
>         argv = 0xbfb4b360
>         prevScriptObj = 0x93a5448
> #14 0x08165b80 in Jim_IfCoreCommand (interp=0x9388028, argc=5, 
> argv=0xbfb4b460) at jim.c:12055
>         boolean = 1
>         retval = <optimized out>
>         current = 2
>         falsebody = <optimized out>
> #15 0x08160468 in JimInvokeCommand (interp=interp@entry=0x9388028, 
> objc=objc@entry=5, objv=objv@entry=0xbfb4b460) at jim.c:10200
>         retcode = <optimized out>
>         cmdPtr = 0x9388e40
> #16 0x08160f79 in Jim_EvalObj (interp=0x9388028, scriptObjPtr=0x93a5448) at 
> jim.c:10650
>         argc = 5
>         j = <optimized out>
>         i = 6
>         script = 0x93a58e8
>         token = 0x93a5b60
>         retcode = 0
>         sargv = {0x93a59e8, 0x93a59b0, 0x93a5978, 0x93a5a98, 0x93a5ca8, 
> 0x9388028, 0x93a52b0, 0x8158768 <Jim_CompareStringImmediate+40>}
> 
>         argv = 0xbfb4b460
>         prevScriptObj = 0x9397f60
> #17 0x08165bff in Jim_IfCoreCommand (interp=0x9388028, argc=5, 
> argv=0xbfb4b560) at jim.c:12066
>         boolean = 0
>         retval = <optimized out>
>         current = 4
>         falsebody = <optimized out>
> #18 0x08160468 in JimInvokeCommand (interp=interp@entry=0x9388028, 
> objc=objc@entry=5, objv=objv@entry=0xbfb4b560) at jim.c:10200
>         retcode = <optimized out>
>         cmdPtr = 0x9388e40
> #19 0x08160f79 in Jim_EvalObj (interp=0x9388028, scriptObjPtr=0x9397f60) at 
> jim.c:10650
>         argc = 5
>         j = <optimized out>
>         i = 18
>         script = 0x93897a0
>         token = 0x93a4f48
>         retcode = 0
>         sargv = {0x93a5348, 0x93a5380, 0x93a53c0, 0x93a5410, 0x93a5448, 0x1, 
> 0x8, 0x0}
>         argv = 0xbfb4b560
>         prevScriptObj = 0x9393e78
> #20 0x08160379 in JimCallProcedure (interp=<optimized out>, cmd=0x93a46b8, 
> argc=4, argv=0xbfb4b660) at jim.c:10895
>         i = <optimized out>
>         callFramePtr = 0x939b070
>         d = <optimized out>
>         retcode = <optimized out>
>         optargs = 2
>         script = <optimized out>
>         argv = 0xbfb4b660
>         argc = 4
>         cmd = 0x93a46b8
>         interp = <optimized out>
> #21 0x0816049f in JimInvokeCommand (interp=interp@entry=0x9388028, 
> objc=objc@entry=4, objv=objv@entry=0xbfb4b660) at jim.c:10196
>         retcode = <optimized out>
>         cmdPtr = 0x93a46b8
> #22 0x08160f79 in Jim_EvalObj (interp=0x9388028, scriptObjPtr=0x9393e78) at 
> jim.c:10650
>         argc = 4
>         j = <optimized out>
>         i = 5
>         script = 0x93e8980
>         token = 0x93e8ab0
>         retcode = 0
>         sargv = {0x93980e0, 0x93afe08, 0x93b06a8, 0x9391e20, 0x93b1a82, 
> 0xbfb4b734, 0x9388028, 0x8156ca2 <Jim_NewStringObjNoAlloc+18>}
>         argv = 0xbfb4b660
>         prevScriptObj = 0x93b8fa0
> #23 0x08165074 in Jim_EvalCoreCommand (interp=0x9388028, argc=4, 
> argv=0xbfb4b730) at jim.c:12923
>         rc = <optimized out>
> #24 0x08160468 in JimInvokeCommand (interp=interp@entry=0x9388028, 
> objc=objc@entry=4, objv=objv@entry=0xbfb4b730) at jim.c:10200
>         retcode = <optimized out>
>         cmdPtr = 0x9389300
> #25 0x08160f79 in Jim_EvalObj (interp=0x9388028, scriptObjPtr=0x93b8fa0) at 
> jim.c:10650
>         argc = 4
>         j = <optimized out>
>         i = 5
>         script = 0x93aeec8
>         token = 0x93e8bf8
>         retcode = 0
>         sargv = {0x93afac0, 0x93983f8, 0x93910c0, 0x93afe58, 0x2, 0x0, 0x0, 
> 0x0}
>         argv = 0xbfb4b730
>         prevScriptObj = 0x939ac88
> #26 0x08160379 in JimCallProcedure (interp=<optimized out>, cmd=0x93ba588, 
> argc=3, argv=0xbfb4b830) at jim.c:10895
>         i = <optimized out>
>         callFramePtr = 0x9399910
>         d = <optimized out>
>         retcode = <optimized out>
>         optargs = 2
>         script = <optimized out>
>         argv = 0xbfb4b830
>         argc = 3
>         cmd = 0x93ba588
>         interp = <optimized out>
> #27 0x0816049f in JimInvokeCommand (interp=interp@entry=0x9388028, 
> objc=objc@entry=3, objv=objv@entry=0xbfb4b830) at jim.c:10196
>         retcode = <optimized out>
>         cmdPtr = 0x93ba588
> #28 0x08160f79 in Jim_EvalObj (interp=0x9388028, scriptObjPtr=0x939ac88) at 
> jim.c:10650
>         argc = 3
>         j = <optimized out>
>         i = 4
>         script = 0x93e8b30
>         token = 0x93e8908
>         retcode = 0
>         sargv = {0x93a92f8, 0x93acf18, 0x93a95b0, 0x8155674 
> <JimInsertHashEntry+180>, 0xb752dae7 <__GI___libc_malloc+7>, 0xb75e7edf 
> <__memcpy_ssse3_rep+31>, 0xe, 0x8156739 <Jim_NewStringObj+57>}
>         argv = 0xbfb4b830
>         prevScriptObj = 0x9388288
> #29 0x08162152 in Jim_EvalSource (interp=0x9388028, filename=0x0, lineno=0, 
> script=0x93e8d58 "cache l2x info") at jim.c:10972
>         retval = <optimized out>
>         scriptObjPtr = 0x939ac88
> #30 0x08084db9 in command_run_line (context=0x93e8590, line=0x93e8d58 "cache 
> l2x info") at command.c:656
>         retval = <optimized out>
>         retcode = 0
>         interp = 0x9388028
>         __func__ = "command_run_line"
> #31 0x0808163e in telnet_input (connection=0x93b0b38) at telnet_server.c:424
>         retval = <optimized out>
>         prev_line = <optimized out>
>         bytes_read = 1
>         buffer = 
> "\r\000>\th7?\t\000\000\000\000\313\372k\267Њ>\tL\272\264\277\371\021k\001 
> \363k\267\003\000\000\000\060\213>\t \344e\267 
> \025k\267\000\000\000\000\004\000\000\000\201\334k\267\250$<\tp\272\264-

> \277\060\213>\t\004\000\000\000h\356:\t\020%<\t`\352\000\000\371\256k\267\200OH\267\060\213>\t\004\000\000\000\001\000\000\000
>  
> `H\267\000\000\000\000\060\213>\t\004\000\000\000d\333k\267\000\340e\267\204%<\tl%<\t$\344Z\267l%<\t\374\331k\267\376\327k\267
>  
> \025k\267\000\000\000\000\370\343Z\267\000pl\267\223`k\267l%<\tP\344e\267kXk\267L`k\267\000pl\267p$<\t\000\000\000\000"...
>         buf_p = 0xbfb4ba01 ""
>         t_con = 0x93e8d50
>         command_context = 0x93e8590
>         __func__ = "telnet_input"
> #32 0x0807fc75 in server_loop (command_context=0x9388008) at server.c:473
>         c = 0x93b0b38
>         tv = {tv_sec = 0, tv_usec = 29415}
>         service = 0x93b8e98
>         poll_ok = true
>         read_fds = {fds_bits = {32768, 0 <repeats 31 times>}}
>         fd_max = <optimized out>
>         retval = <optimized out>
>         __func__ = "server_loop"
> #33 0x0804bf0d in openocd_thread (cmd_ctx=0x9388008, argv=0xbfb4bff4, argc=3) 
> at openocd.c:301
>         ret = <optimized out>
>         last_signal = <optimized out>
> #34 openocd_main (argc=3, argv=0xbfb4bff4) at openocd.c:338
>         cmd_ctx = 0x9388008
>         __func__ = "openocd_main"
> #35 0x0804b7b4 in main (argc=3, argv=0xbfb4bff4) at main.c:41

hth,
Marc
-- 
Pengutronix e.K.                  | Marc Kleine-Budde           |
Industrial Linux Solutions        | Phone: +49-231-2826-924     |
Vertretung West/Dortmund          | Fax:   +49-5121-206917-5555 |
Amtsgericht Hildesheim, HRA 2686  | http://www.pengutronix.de   |



Attachment: signature.asc
Description: OpenPGP digital signature

------------------------------------------------------------------------------
_______________________________________________
OpenOCD-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/openocd-devel

Reply via email to