Re: Firewire blues

From: Gerald Heinig (gheinig_at_syskonnect.de)
Date: 02/14/05

  • Next message: Gerald Heinig: "Re: Firewire blues"
    Date: Mon, 14 Feb 2005 17:19:17 +0100
    To: Stephan Uphoff <ups@tree.com>
    
    

    Hi Stephan,

    first off, thanks very much for your continuing help on this. It's very
    much appreciated.

    I compiled a kernel with exactly the same options that you cited below.
    I tried booting it and it stops before the kernel probe routines and
    waits for the FireWire GDB connect.
    I can't understand how you managed to reboot the target machine without
    it entering the debugger and waiting for the remote gdb attach. My
    machine refuses to do anything else.
    I tried unsetting boot_ddb and boot_gdb in the loader, as well as
    clearing the -d and -g flags in the boot_flags variable. No deal, it
    still stops and waits for the remote gdb attach.
    When I try to attach from the debug machine, gdb complains about
    operation not supported.

    Also, I don't understand how your command line

    kgdb -r :5555 -t 11-22-33-44-55...

    can work. I just get

    ':5555: no such file or directory'

    when I try that. The kgdb manpage also states that it needs a device
    after the -r option, so I presume your kgdb version works somewhat
    differently to mine.

    I tried the following devices after kgdb's -r option:

    /dev/fwmem0.0, /dev/fw0, /dev/net/fwe0, /dev/net/fwip0

    None worked.

    I tried taking the dcons/dcons_crom options out of the kernel and
    loading the corresponding modules before booting the kernel. This sort
    of worked in that I could then start a dconschat session on the debug
    machine and enter the ddb debugger. Switching to gdb didn't work, since
    the gdb backend was missing. When the kernel booted, it complained about
    there being no debug ports for gdb present, so it didn't enable the gdb
    backend support.

    Stephan Uphoff wrote:
    >
    >
    > OK - I finally managed to try this on a newly installed 5.3-RELEASE.
    >
    > I copied the GENERIC config file (to GENERIC.debug) and added a few
    > lines
    >
    > diff -u GENERIC GENERIC.debug
    > --- GENERIC Sun Oct 24 14:02:52 2004
    > +++ GENERIC.debug Mon Feb 14 03:15:21 2005
    > @@ -24,6 +24,14 @@
    > cpu I686_CPU
    > ident GENERIC
    >
    > +makeoptions DEBUG=-g # Build kernel with gdb(1)
    > debug symbols
    > +options KDB # Enable kernel debugger
    > support.
    > +options DDB # Support DDB.
    > +options GDB # Support remote GDB.
    > +options ALT_BREAK_TO_DEBUGGER
    > +device dcons
    > +device dcons_crom
    > +
    > # To statically compile in device wiring instead of /boot/device.hints
    > #hints "GENERIC.hints" # Default places to look for
    > devices.
    >

    This is pretty much what I had before.

    >
    > Then configured/compiled/installed the GENERIC.debug kernel.
    > Copied the kernel.debug file in the GENERIC.debug compile directory to
    > the debug station and rebooted the target machine.

    Why does your machine boot without waiting for a debug connection? With
    the debug options mentioned above, my kernel waits for the remote
    Firewire gdb connection here, which doesn't work.
    Are there any loader flags I have to set?

    >
    > After reboot I set the default debugger to gdb
    >
    > target# sysctl -w debug.kdb.current=gdb
    > and entered the debugger
    > target# sysctl -w debug.kdb.enter=1
    >
    >
    > On the debugging station I entered
    > debug 1# dconschat -br -G 5555 -t <firewire address of target>
    >
    > and then in another window
    > debug 2# kgdb -r :5555 kernel.debug
    ---------------------------^^^^^

    This doesn't work on my system: kgdb complains about ':5555 : no such
    file or directory'

    >
    > And it just worked for me.
    > I have to admit that my debugging machine is not 5.3 .. but I believe I
    > used the same setup with pre 5.3 userland before.
    >
    > Let me know if you can repeat my steps.
    > If not then I can set up a 5.3 debugging station in the next days.

    Thanks again for your patience.

    Cheers,
    Gerald

    _______________________________________________
    freebsd-hackers@freebsd.org mailing list
    http://lists.freebsd.org/mailman/listinfo/freebsd-hackers
    To unsubscribe, send any mail to "freebsd-hackers-unsubscribe@freebsd.org"


  • Next message: Gerald Heinig: "Re: Firewire blues"

    Relevant Pages