Re: diff for gdb
> Date: Sat, 21 Dec 2019 13:42:43 +0100 > From: Alexander Bluhm > > On Sat, Dec 21, 2019 at 04:10:03PM +0900, YASUOKA Masahiko wrote: > > When I debug kernel with kernel core, backtrace command ends around > > alltraps_kern_meltdown(). The following diff fixes this problem. > > I remember having that problem, too. > > > ok? > > OK bluhm@ Makes sense to me as well. ok kettenis@ > > > Teach gdb that the trap frame should be used for for > > alltraps_kern_meltdown() > > > > Index: gnu/usr.bin/binutils/gdb/amd64obsd-tdep.c > > === > > RCS file: /cvs/src/gnu/usr.bin/binutils/gdb/amd64obsd-tdep.c,v > > retrieving revision 1.13 > > diff -u -p -r1.13 amd64obsd-tdep.c > > --- gnu/usr.bin/binutils/gdb/amd64obsd-tdep.c 21 Oct 2019 13:09:52 > > - 1.13 > > +++ gnu/usr.bin/binutils/gdb/amd64obsd-tdep.c 21 Dec 2019 06:52:03 > > - > > @@ -463,6 +463,7 @@ amd64obsd_trapframe_sniffer (const struc > >|| (name[0] == 'X' && strncmp(name, "Xipi_", 5) != 0) > >|| (strcmp (name, "alltraps") == 0) > >|| (strcmp (name, "alltraps_kern") == 0) > > + || (strcmp (name, "alltraps_kern_meltdown") == 0) > >|| (strcmp (name, "intr_fast_exit") == 0) > >|| (strcmp (name, "intr_exit_recurse") == 0))); > > } > >
Re: diff for gdb
On Sat, Dec 21, 2019 at 04:10:03PM +0900, YASUOKA Masahiko wrote: > When I debug kernel with kernel core, backtrace command ends around > alltraps_kern_meltdown(). The following diff fixes this problem. I remember having that problem, too. > ok? OK bluhm@ > Teach gdb that the trap frame should be used for for > alltraps_kern_meltdown() > > Index: gnu/usr.bin/binutils/gdb/amd64obsd-tdep.c > === > RCS file: /cvs/src/gnu/usr.bin/binutils/gdb/amd64obsd-tdep.c,v > retrieving revision 1.13 > diff -u -p -r1.13 amd64obsd-tdep.c > --- gnu/usr.bin/binutils/gdb/amd64obsd-tdep.c 21 Oct 2019 13:09:52 - > 1.13 > +++ gnu/usr.bin/binutils/gdb/amd64obsd-tdep.c 21 Dec 2019 06:52:03 - > @@ -463,6 +463,7 @@ amd64obsd_trapframe_sniffer (const struc > || (name[0] == 'X' && strncmp(name, "Xipi_", 5) != 0) > || (strcmp (name, "alltraps") == 0) > || (strcmp (name, "alltraps_kern") == 0) > +|| (strcmp (name, "alltraps_kern_meltdown") == 0) > || (strcmp (name, "intr_fast_exit") == 0) > || (strcmp (name, "intr_exit_recurse") == 0))); > }
diff for gdb
When I debug kernel with kernel core, backtrace command ends around alltraps_kern_meltdown(). The following diff fixes this problem. ok? Teach gdb that the trap frame should be used for for alltraps_kern_meltdown() Index: gnu/usr.bin/binutils/gdb/amd64obsd-tdep.c === RCS file: /cvs/src/gnu/usr.bin/binutils/gdb/amd64obsd-tdep.c,v retrieving revision 1.13 diff -u -p -r1.13 amd64obsd-tdep.c --- gnu/usr.bin/binutils/gdb/amd64obsd-tdep.c 21 Oct 2019 13:09:52 - 1.13 +++ gnu/usr.bin/binutils/gdb/amd64obsd-tdep.c 21 Dec 2019 06:52:03 - @@ -463,6 +463,7 @@ amd64obsd_trapframe_sniffer (const struc || (name[0] == 'X' && strncmp(name, "Xipi_", 5) != 0) || (strcmp (name, "alltraps") == 0) || (strcmp (name, "alltraps_kern") == 0) + || (strcmp (name, "alltraps_kern_meltdown") == 0) || (strcmp (name, "intr_fast_exit") == 0) || (strcmp (name, "intr_exit_recurse") == 0))); }