The traditional method is to restore the original instruction replaced by
the breakpoint in text, single-step over that instruction, then restore the
breakpoint in text, then continue. That method requires all-stop so that
while you are stepping the thread that just hit the breakpoint, you can't
Oleg Now, to continue the tracee, gdb does not restore the
Oleg original instruction. Instead, it
Oleg - writes this insn into _start code
Oleg - changes regs-ip to point to this insn
Oleg - does single-step to execute this insn
Oleg - changes regs-ip