Project

General

Profile

Actions

Bug #2668

closed

osmo-stp: endless loop in osmo_timer_del()

Added by laforge over 6 years ago. Updated about 6 years ago.

Status:
Closed
Priority:
Urgent
Assignee:
Target version:
-
Start date:
11/20/2017
Due date:
% Done:

100%

Spec Reference:

Description

When using current osmo-stp master, I quite frequently get it into a state where it consumes 100% CPU and infinite loops in osmo_timer_del()

120     void osmo_timer_del(struct osmo_timer_list *timer)
(gdb) bt full
#0  osmo_timer_del (timer=0x560cea1e4468) at timer.c:120
No locals.
#1  0x00007fdcfc1c2fb5 in osmo_timers_update () at timer.c:253
        current_time = {tv_sec = 1511203899, tv_usec = 890291}
        node = <optimized out>
        timer_eviction_list = {next = 0x560cea1e4480, prev = 0x560cea1e4480}
        this = 0x560cea1e4468
        work = <optimized out>
#2  0x00007fdcfc1c35e5 in osmo_select_main (polling=<optimized out>) at select.c:250
        readset = {__fds_bits = {0 <repeats 16 times>}}
        writeset = {__fds_bits = {0 <repeats 16 times>}}
        exceptset = {__fds_bits = {0 <repeats 16 times>}}
        rc = <optimized out>
        no_time = {tv_sec = 0, tv_usec = 0}
#3  0x0000560ce974f2a3 in main (argc=1, argv=0x7ffe918b4768) at stp_main.c:208
        rc = <optimized out>
(gdb) q

So somehow, we're corrupting the timer list :/

Actions #1

Updated by laforge over 6 years ago

  • Status changed from New to Resolved
  • % Done changed from 0 to 100

It seems that https://gerrit.osmocom.org/4939 solves the problem. More testing required to be sure.

Actions #2

Updated by laforge about 6 years ago

  • Status changed from Resolved to Closed
Actions

Also available in: Atom PDF

Add picture from clipboard (Maximum size: 48.8 MB)