Opened 9 years ago

Closed 9 years ago

#5742 closed bug (fixed)

gdb starts kdl: PANIC: spurious debug exception in kernel mode

Reported by: lucian Owned by: bonefish
Priority: normal Milestone: R1
Component: System/Kernel Version: R1/Development
Keywords: Cc: mdisreali@…
Blocked By: Blocking:
Has a Patch: no Platform: All

Description

Running on haiku-nightly-hrev36330-x86gcc4-raw.zip in Qemu.

I've created a small program:

int main()
{
  printf("a");
  return 0;
}

And ran:

$ gcc -g a.c
$ gdb ./a.out
(gdb) start
(gdb) n

After hitting n I immediately went to KDL. The bug happens on more complex programs too and even on prebuilt programs: gdb `which StyleEdit`. 100% reproducibility.

In KDL continue will lead to a subsequent panic, ad nauseam.

The panic title: PANIC: spurious debug exception in kernel mode (no condition recognized). I'll attach a syslog as soon as I learn how to get one out from qemu.

Attachments (1)

haiku_r36330_closing_gdb_causes_kdl.txt (6.1 KB ) - added by Disreali 9 years ago.

Download all attachments as: .zip

Change History (7)

comment:1 by Disreali, 9 years ago

Cc: mdisreali@… added

i also experienced a couple instances of closing the gdb term would cause a kdl on hrev36330.

One was when Jukebox crashed. I select debug button, copied bt output and as some as I closed the gdb term, the system kdl-ed. I don't know it will help, but including the jukebox gdb

comment:2 by anevilyak, 9 years ago

Component: - GeneralSystem/Kernel
Owner: changed from nobody to bonefish
Status: newassigned

comment:3 by bonefish, 9 years ago

Status: assignedin-progress

comment:4 by lucian, 9 years ago

The hrev36340 commit fixes the unwanted trips to KDL. I'm not sure if this is another issue, or something related: stepping with n in gdb does not work, replying "cannot determine bounds of current function". continue however works.

comment:5 by lucian, 9 years ago

Disreali, can you check with the latest nightly image if your problem is solved too (to be sure they are the same issue, and not distinct)?

in reply to:  4 comment:6 by bonefish, 9 years ago

Resolution: fixed
Status: in-progressclosed

Replying to lucian:

The hrev36340 commit fixes the unwanted trips to KDL. I'm not sure if this is another issue, or something related: stepping with n in gdb does not work, replying "cannot determine bounds of current function". continue however works.

I've noticed that, too. gdb seems to have trouble with the syscall trampoline code. It is possible that special handling is needed for it, but not implemented. As long as debug info for the executed code is available it should work OK, though.

Note: See TracTickets for help on using tickets.