[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Bug in powerpc gdb?



-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Till Straumann <strauman@slac.stanford.edu> writes:

> Roger.

Hi!

> just dug around in gdb's guts and came up with a new
> patch. It seemed to fix the simple test case (test::testmethod)
> with gcc (GCC) 3.3.5 (Debian 1:3.3.5-13) / gdb-6.3 (stock).
>
> If you have the time, please let me know if it works.

*Much* much improved.

Before:

hardknott:/home/rleigh/projects/schroot/schroot# LD_LIBRARY_PATH=/usr/lib/debug gdb ./schroot
GNU gdb 6.3-debian
Copyright 2004 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB.  Type "show warranty" for details.
This GDB was configured as "powerpc-linux"...Using host libthread_db library "/usr/lib/debug/libthread_db.so.1".

(gdb) break sbuild_session_setup_chroot
Breakpoint 1 at 0x100129fc: file sbuild-session.c, line 491.
(gdb) run -c sid-snap
Starting program: /home/rleigh/projects/schroot/schroot/schroot -c sid-snap

Breakpoint 1, sbuild_session_setup_chroot (session=0x1004e770,
    session_chroot=0x1004bf60, setup_type=SBUILD_CHROOT_SETUP_START,
    error=0x7fade548) at sbuild-session.c:491
491       g_return_val_if_fail(SBUILD_IS_SESSION(session), FALSE);
(gdb) bt
#0  sbuild_session_setup_chroot (session=0x1004e770,
    session_chroot=0x1004bf60, setup_type=SBUILD_CHROOT_SETUP_START,
    error=0x7fade548) at sbuild-session.c:491
#1  0x10014488 in sbuild_session_run (session=0x1004e770, error=0x10054788)
    at sbuild-session.c:1064
#2  0x10015304 in sbuild_cclosure_marshal_BOOLEAN__BOXED (closure=0x1004e0e0,
    return_value=0x7fade680, n_param_values=Variable "n_param_values" is not available.
) at sbuild-marshallers.c:162
#3  0x0fa7d9dc in g_type_class_meta_marshal (closure=0x1004e770,
    return_value=0x7fade680, n_param_values=2, param_values=0x7fade790,
    invocation_hint=0x7fade6a0, marshal_data=0x48) at gclosure.c:569
#4  0x0fa7e2c0 in IA__g_closure_invoke (closure=0x1004e0e0,
    return_value=0x7fade680, n_param_values=2, param_values=0x7fade790,
    invocation_hint=0x7fade6a0) at gclosure.c:492
#5  0x0fa7e2c0 in IA__g_closure_invoke (closure=0x1004e0e0,
    return_value=0x7fade680, n_param_values=2, param_values=0x7fade790,
    invocation_hint=0x7fade6a0) at gclosure.c:492
#6  0x0fa7e2c0 in IA__g_closure_invoke (closure=0x1004e0e0,
    return_value=0x7fade680, n_param_values=2, param_values=0x7fade790,
    invocation_hint=0x7fade6a0) at gclosure.c:492
#7  0x0fa7e2c0 in IA__g_closure_invoke (closure=0x1004e0e0,
    return_value=0x7fade680, n_param_values=2, param_values=0x7fade790,
    invocation_hint=0x7fade6a0) at gclosure.c:492
#8  0x0fa7e2c0 in IA__g_closure_invoke (closure=0x1004e0e0,
- ---Type <return> to continue, or q <return> to quit---
    return_value=0x7fade680, n_param_values=2, param_values=0x7fade790,
    invocation_hint=0x7fade6a0) at gclosure.c:492
#9  0x0fa7e2c0 in IA__g_closure_invoke (closure=0x1004e0e0,
    return_value=0x7fade680, n_param_values=2, param_values=0x7fade790,
    invocation_hint=0x7fade6a0) at gclosure.c:492
#10 0x0fa7e2c0 in IA__g_closure_invoke (closure=0x1004e0e0,
    return_value=0x7fade680, n_param_values=2, param_values=0x7fade790,
    invocation_hint=0x7fade6a0) at gclosure.c:492
#11 0x0fa7e2c0 in IA__g_closure_invoke (closure=0x1004e0e0,
    return_value=0x7fade680, n_param_values=2, param_values=0x7fade790,
    invocation_hint=0x7fade6a0) at gclosure.c:492
Previous frame inner to this frame (corrupt stack?)
(gdb)

After:

hardknott:/home/rleigh/projects/schroot/schroot# LD_LIBRARY_PATH=/usr/lib/debug gdb ./schroot
GNU gdb 6.3-debian
Copyright 2004 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB.  Type "show warranty" for details.
This GDB was configured as "powerpc-linux-gnu"...Using host libthread_db library "/usr/lib/debug/libthread_db.so.1".

(gdb) break sbuild_session_setup_chroot
Breakpoint 1 at 0x100129fc: file sbuild-session.c, line 491.
(gdb) run -c sid-snap
Starting program: /home/rleigh/projects/schroot/schroot/schroot -c sid-snap

Breakpoint 1, sbuild_session_setup_chroot (session=0x1004e770,
    session_chroot=0x1004bf60, setup_type=SBUILD_CHROOT_SETUP_START,
    error=0x7fc04548) at sbuild-session.c:491
491       g_return_val_if_fail(SBUILD_IS_SESSION(session), FALSE);
(gdb) bt
#0  sbuild_session_setup_chroot (session=0x1004e770,
    session_chroot=0x1004bf60, setup_type=SBUILD_CHROOT_SETUP_START,
    error=0x7fc04548) at sbuild-session.c:491
#1  0x10014488 in sbuild_session_run (session=0x1004e770, error=0x10054788)
    at sbuild-session.c:1064
#2  0x10015304 in sbuild_cclosure_marshal_BOOLEAN__BOXED (closure=0x1004e0e0,
    return_value=0x7fc04680, n_param_values=Variable "n_param_values" is not available.
) at sbuild-marshallers.c:162
#3  0x0fa7d9dc in g_type_class_meta_marshal (closure=0x1004e770,
    return_value=0x7fc04680, n_param_values=2, param_values=0x7fc04790,
    invocation_hint=0x7fc046a0, marshal_data=0x48) at gclosure.c:569
#4  0x0fa7e2c0 in IA__g_closure_invoke (closure=0x1004e0e0,
    return_value=0x7fc04680, n_param_values=2, param_values=0x7fc04790,
    invocation_hint=0x7fc046a0) at gclosure.c:492
#5  0x0fa91f28 in signal_emit_unlocked_R (node=0x1004e138, detail=0,
    instance=0x1004e770, emission_return=0x7fc04738,
    instance_and_params=0x7fc04790) at gsignal.c:2523
#6  0x0fa932a4 in IA__g_signal_emit_valist (instance=Variable "instance" is not available.
) at gsignal.c:2254
#7  0x0fa939cc in IA__g_signal_emit (instance=Variable "instance" is not available.
) at gsignal.c:2288
#8  0x10006644 in sbuild_auth_run (auth=0x1004e770, error=0x7fc04a2c)
    at sbuild-auth.c:1141
#9  0x10016680 in main (argc=Variable "argc" is not available.
) at schroot.c:250
(gdb)

I'm not sure why some variables are "not available", but at least it
can now correctly walk through the stack.


Many thanks for that--it's a *big* improvement!


Regards,
Roger

- -- 
Roger Leigh
                Printing on GNU/Linux?  http://gimp-print.sourceforge.net/
                Debian GNU/Linux        http://www.debian.org/
                GPG Public Key: 0x25BFB848.  Please sign and encrypt your mail.
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.2 (GNU/Linux)
Comment: Processed by Mailcrypt 3.5.8+ <http://mailcrypt.sourceforge.net/>

iD8DBQFDb8ceVcFcaSW/uEgRAnoYAKCeNrOssafnZw41C73B18ry3GKHCACfX3Ux
5PEsriqlvgHhtG4YebLQq8I=
=Lc75
-----END PGP SIGNATURE-----



Reply to: