L4/Fiasco kernel debugger (jdb) and step over command

Adam Lackorzynski adam at os.inf.tu-dresden.de
Thu Dec 28 00:29:03 CET 2017

On Wed Dec 27, 2017 at 18:33:16 +0300, Valery V. Sedletski wrote:
> On 27.12.2017 13:05, Matthias Lange wrote:
> > Hi Valery,
> > 
> > > On 26. Dec 2017, at 17:54, Valery V. Sedletski <_valerius at mail.ru> wrote:
> > > 
> > > Hi. I'm trying to debug my program with jdb. (I'm using the old L4/Fiasco / L4Env, not the current Fiasco.OC / L4Re). I enabled the permanent single step mode (with the S+ command) and a permanent show the Thread Control Block (with the t+ command) option. So, I was able to single-step with "g" command. Also, I found "jr" (go until return (ret or iret) is encountered) and "jb" (go until the next branch instruction, like jmp/call/int) commands, but they don't seem to work. When I enter them, I see only a single step to the next instruction. Are these two commands broken? How do I step over a "call"/"int" instruction?
> > Fiasco/L4Env has been outdated for almost 10 years now and hasn’t been maintained since then. Sorry, but here we are unable to help you with your problem.
> Yes, I know that  it's outdated now.
> > Are there any reasons you chose Fiasco/L4Env over Fiasco.OC/L4Re?
> My program is based on L4Env. I'm porting it to L4Re now. But first I need
> to fix some bug and then continue porting it to L4Re. I think, someone could
> remember some problems existed with L4/Fiasco kernel debugger. Also,
> Fiasco.OC debugger may be very similar, so I expected someone could help me.
> The problem is that I cannot find any commands similar to "step over"
> command. There are "jb" (continue to the next branch instruction) and "jr"
> (continue until next return instruction), but they don't seem to work. They
> just do a single stepping. Does still anybody remember how could I step over
> a "call" instruction? Maybe, in Fiasco.OC it's similar? Or, in Fiasco, it
> was completely broken in the end?

Indeed, jdb's functionality is still pretty similar here, including
non-functionalities. Would you have a chance to run your code within
QEMU and attach gdb to QEMU so that you could do your debugging?


More information about the l4-hackers mailing list