Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

segfault in vtimer update shortterm #132

Closed
mehlis opened this issue Aug 13, 2013 · 6 comments
Closed

segfault in vtimer update shortterm #132

mehlis opened this issue Aug 13, 2013 · 6 comments
Labels
Type: bug The issue reports a bug / The PR fixes a bug (including spelling errors)

Comments

@mehlis
Copy link
Contributor

mehlis commented Aug 13, 2013

should this be possible?

Program received signal SIGSEGV, Segmentation fault.

0x0804f385 in update_shortterm () at vtimer.c:65
65      hwtimer_next_absolute = shortterm_queue_root.next->priority;
Missing separate debuginfos, use: debuginfo-install glibc-2.17-11.fc19.i686
(gdb) bt
#0  0x0804f385 in update_shortterm () at vtimer.c:65
#1  0x0804f4c0 in vtimer_callback (ptr=0x0) at vtimer.c:142
#2  0x080610c9 in multiplexer (source=3) at hwtimer.c:48
#3  0x080628d4 in hwtimer_isr_timer () at hwtimer_cpu.c:145
#4  0x0804993b in native_irq_handler () at irq_cpu.c:294
#5  0x490fdcbb in makecontext () from /lib/libc.so.6
#6  0x00000000 in ?? ()

@ghost ghost assigned OlegHahm and LudwigKnuepfer Aug 13, 2013
@LudwigKnuepfer
Copy link
Member

This is a not reliably reproducible error... I'm hoping to understand it someday. Not sure if vtimer or native hwtimer is to blame.

@LudwigKnuepfer
Copy link
Member

Might be related to system time (clock).

@LudwigKnuepfer
Copy link
Member

It appears that waiting a bit (up to about two minutes) makes the immediate problem go away.. (hence the system clock guess).

PS:
Most probable explanation:
The bug gets bored easily when not being the center of attention and it will go haunt someone else ;-)

@mehlis
Copy link
Contributor Author

mehlis commented Aug 17, 2013

a starting point for debugging can be:

  static int update_shortterm(void)
  {
+    if (!shortterm_queue_root.next) {
+        DEBUG("!shortterm_queue_root.next");
+        return 0;
+    }
+

@LudwigKnuepfer
Copy link
Member

#374

@mehlis
Copy link
Contributor Author

mehlis commented Dec 14, 2013

fixed in #374

@mehlis mehlis closed this as completed Dec 14, 2013
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Type: bug The issue reports a bug / The PR fixes a bug (including spelling errors)
Projects
None yet
Development

No branches or pull requests

3 participants