On Sun, Dec 17, 2023 at 02:33:18PM +0100, Alexander Klimov wrote:
> Hello devs!
>
> This year dump(8) already crashed three times.
> Fortunately that produced core dumps.
> But unfortunately debugging symbols are missing:
>
> tower# find /raid1/backups/tower -name dump.core
> /raid1/backups/tower/2023/05/26/dump.core
> /raid1/backups/tower/2023/09/21/dump.core
> /raid1/backups/tower/2023/12/14/dump.core
> tower# gdb /sbin/dump /raid1/backups/tower/2023/05/26/dump.core
> GNU gdb 6.3
> 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 "amd64-unknown-openbsd7.4"...
> (no debugging symbols found)
>
>
> warning: exec file is newer than core file.
> Core was generated by `dump'.
> Program terminated with signal 11, Segmentation fault.
> #0 0x000005e01d161fef in ?? ()
> (gdb) bt
> #0 0x000005e01d161fef in ?? ()
> #1 0x000005e01d161b67 in ?? ()
> #2 0x000005e01d15cacb in ?? ()
> #3 0x000005e01d15ac22 in ?? ()
> #4 0x0000000000000000 in ?? ()
> (gdb) quit
> tower# gdb /sbin/dump /raid1/backups/tower/2023/09/21/dump.core
> GNU gdb 6.3
> 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 "amd64-unknown-openbsd7.4"...
> (no debugging symbols found)
>
>
> warning: exec file is newer than core file.
> Core was generated by `dump'.
> Program terminated with signal 11, Segmentation fault.
> #0 0x00000fe3f655dfef in ?? ()
> (gdb) bt
> #0 0x00000fe3f655dfef in ?? ()
> #1 0x00000fe3f655db67 in ?? ()
> #2 0x00000fe3f6558acb in ?? ()
> #3 0x00000fe3f6556c22 in ?? ()
> #4 0x0000000000000000 in ?? ()
> (gdb) quit
> tower# gdb /sbin/dump /raid1/backups/tower/2023/12/14/dump.core
> GNU gdb 6.3
> 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 "amd64-unknown-openbsd7.4"...
> (no debugging symbols found)
>
> Core was generated by `dump'.
> Program terminated with signal 11, Segmentation fault.
> #0 0x000008e920ed287f in ?? ()
> (gdb) bt
> #0 0x000008e920ed287f in ?? ()
> #1 0x000008e920ed23f7 in ?? ()
> #2 0x000008e920ecd2bb in ?? ()
> #3 0x000008e920ecb3f2 in ?? ()
> #4 0x0000000000000000 in ?? ()
> (gdb) quit
> tower#
>
> Re-building the userland gave me a /usr/obj/sbin/dump/dump
> with some debug info at least:
>
> mp/dump /raid1/backups/tower/2023/05/26/dump.core
> <
> GNU gdb 6.3
> 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 "amd64-unknown-openbsd7.4"...
>
> warning: exec file is newer than core file.
> Core was generated by `dump'.
> Program terminated with signal 11, Segmentation fault.
> #0 0x000005e01d161fef in searchdir ()
> (gdb) bt
> #0 0x000005e01d161fef in searchdir ()
> #1 0x000005e01d161b67 in mapdirs ()
> #2 0x000005e01d15cacb in main ()
> (gdb) info line
> No line number information available.
> (gdb) quit
> /backups/tower/2023/09/21/dump.core
> <
> GNU gdb 6.3
> 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 "amd64-unknown-openbsd7.4"...
>
> warning: exec file is newer than core file.
> Core was generated by `dump'.
> Program terminated with signal 11, Segmentation fault.
> #0 0x00000fe3f655dfef in searchdir ()
> (gdb) bt
> #0 0x00000fe3f655dfef in searchdir ()
> #1 0x00000fe3f655db67 in mapdirs ()
> #2 0x00000fe3f6558acb in main ()
> (gdb) info line
> No line number information available.
> (gdb) quit
> /backups/tower/2023/12/14/dump.core
> <
> GNU gdb 6.3
> 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 "amd64-unknown-openbsd7.4"...
>
> warning: exec file is newer than core file.
> Core was generated by `dump'.
> Program terminated with signal 11, Segmentation fault.
> #0 0x000008e920ed287f in searchdir ()
> (gdb) bt
> #0 0x000008e920ed287f in searchdir ()
> #1 0x000008e920ed23f7 in mapdirs ()
> #2 0x000008e920ecd2bb in main ()
> (gdb) info line
> No line number information available.
> (gdb) quit
> tower#
>
> No line nr, no locals, ...
>
> Before you ask: yes, strip -s /usr/obj/sbin/dump/dump
> produces a binary equal to /sbin/dump.
>
> IMAO strange: bt output got shorter, but it isn't nonsense now.
> Any ideas or more gdb commands I shall try?
>
> Best,
> A/K
>
Rebuild with
cd /usr/src/sbin/dump
make obj
make clean
DEBUG=-g make
And then run gdb again.
-Otto