You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Steps to reproduce:
Step 1: rr replay x264-2 -s 50505 -k
Step 3: Attach to rr and add some breakpionts. It works fine.
Step 4: Disabling any breakpoint causes all breakpoints lost.
However in older GDB versions break-delete didn't take an argument and instead just cleared all breakpoints, which might be happening here. Can you check what happens if you manually run -break-delete <num> first on some breakpoint from the i b list to see if it properly deletes? If you enter an invalid number it might be possible that it could clear all breakpoints, you should check for this behavior.
Try enabling debug output ("showDevDebugOutput": true, "printCalls": true) and check if it actually runs break-delete on the correct breakpoint IDs.
-break-delete 2
{"token":28,"outOfBandRecord":[],"resultRecords":{"resultClass":"done","results":[]}}
i b
Num Type Disp Enb Address What
1 breakpoint keep y <MULTIPLE>
1.1 y 0x000055bad7a20d6a in x264_8_macroblock_analyse at encoder/analyse.c:3038
1.2 y 0x000055bad7b4e186 in x264_10_macroblock_analyse at encoder/analyse.c:3038
3 breakpoint keep y <MULTIPLE>
3.1 y 0x000055bad79318c5 in x264_8_encoder_encode at encoder/encoder.c:3763
3.2 y 0x000055bad79536c7 in x264_10_encoder_encode at encoder/encoder.c:3763
4 breakpoint keep y <MULTIPLE>
4.1 y 0x000055bad7936e61 in x264_8_lookahead_get_frames at encoder/lookahead.c:234
4.2 y 0x000055bad7958c4c in x264_10_lookahead_get_frames at encoder/lookahead.c:234
5 breakpoint keep y <MULTIPLE>
5.1 y 0x000055bad7a4ff45 in clip_qscale at encoder/ratecontrol.c:2234
5.2 y 0x000055bad7b7d58b in clip_qscale at encoder/ratecontrol.c:2234
6 breakpoint keep y <MULTIPLE>
stop only if h->sh.i_type == 2 (target evals)
6.1 y 0x000055bad7a506ca in clip_qscale at encoder/ratecontrol.c:2317
6.2 y 0x000055bad7b7dd10 in clip_qscale at encoder/ratecontrol.c:2317
7 breakpoint keep y 0x000055bad78fc591 in main at x264.c:378
breakpoint already hit 1 time
Try enabling debug output ("showDevDebugOutput": true, "printCalls": true) and check if it actually runs break-delete on the correct breakpoint IDs.
Could you explain how i can enable this?
Here is the log of disable and enable a breakpoint.
Activity
WebFreak001 commentedon Jul 10, 2020
Does
rroffer a MI backend?I use the break-delete MI command to remove a breakpoint, see
code-debug/src/backend/mi2/mi2.ts
Line 576 in f292348
However in older GDB versions break-delete didn't take an argument and instead just cleared all breakpoints, which might be happening here. Can you check what happens if you manually run
-break-delete <num>first on some breakpoint from thei blist to see if it properly deletes? If you enter an invalid number it might be possible that it could clear all breakpoints, you should check for this behavior.Try enabling debug output (
"showDevDebugOutput": true, "printCalls": true) and check if it actually runs break-delete on the correct breakpoint IDs.kvinwang commentedon Jul 10, 2020
-break-delete <num>can properly delete it.Could you explain how i can enable this?Here is the log of disable and enable a breakpoint.
WebFreak001 commentedon Jul 10, 2020
ah I see it sends break-delete without any ID, probably because the breakpoint is undefined at that code.
It's a severe bug that there is no validation for undefined but it's also important to find out why it's undefined in the first place for you.
kvinwang commentedon Jul 13, 2020
Actually, the
clearBreakPointsis called instead ofremoveBreakPoint.Clear breakpoints only within the same file.
[-]Breakpionts lost.[/-][+]breakpoints get deleted during disabling[/+]