Bug 1788252 - Seeing crashes in timeout_callback functions
Summary: Seeing crashes in timeout_callback functions
Keywords:
Status: CLOSED UPSTREAM
Alias: None
Product: Restraint
Classification: Retired
Component: general
Version: 0.1.43
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: 0.1.44
Assignee: Carol Bouchard
QA Contact:
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2020-01-06 20:10 UTC by Carol Bouchard
Modified: 2020-01-21 19:54 UTC (History)
5 users (show)

Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2020-01-21 19:54:30 UTC
Embargoed:


Attachments (Terms of Use)
core-details (3.58 KB, text/plain)
2020-01-08 13:16 UTC, Carol Bouchard
no flags Details
Unit Test Details (1003 bytes, text/plain)
2020-01-08 14:14 UTC, Carol Bouchard
no flags Details


Links
System ID Private Priority Status Summary Last Updated
Beaker Project Gerrit 6719 0 None MERGED restraintd crash in timeout_callback functions 2020-01-29 13:37:35 UTC

Description Carol Bouchard 2020-01-06 20:10:09 UTC
Description of problem:
Seeing restraintd crashes with 0.1.43 version with the backtrace:

#0  task_heartbeat_callback (user_data=0x902a0960) at task.c:493
#1  0x000000008000f130 in task_timeout_cb (user_data=<optimized out>, time_remain=0x9029be98) at task.c:549
#2  0x0000000080014136 in process_timeout_callback (user_data=0x9029be80, 
    user_data@entry=<error reading variable: value has been optimized out>) at process.c:350
#3  0x0000000080276464 in g_timeout_dispatch (source=0x902ab770, callback=<optimized out>, 
    user_data=<optimized out>) at gmain.c:4650
#4  0x00000000802758b0 in g_main_dispatch (context=0x902785c0) at gmain.c:3177
#5  g_main_context_dispatch (context=context@entry=0x902785c0) at gmain.c:3830
#6  0x0000000080275c2a in g_main_context_iterate (context=0x902785c0, block=block@entry=1, 
    dispatch=dispatch@entry=1, self=<optimized out>) at gmain.c:3903
#7  0x0000000080275fb0 in g_main_loop_run (loop=0x9028dee0) at gmain.c:4099
#8  0x000000008000b3f4 in main (argc=1, argv=0x3ffde9ff7f8) at server.c:702

When pid is 0, the process is dead and so should be the timeout handler.
gdb) print *process_data
$13 = {
  command = 0x9029bb00, 
  environ = 0x0, 
  path = 0x90349840 "", 
  max_time = 27600, 
  pid = 0, 
  fd = -1, 
  pid_result = 9, 
  io_handler_id = 0, 
  io = 0x9042e190, 
  pid_handler_id = 13953, 
  finish_handler_id = 49210, 
  timeout_handler_id = 0, 
  localwatchdog = 1, 
  timeout_callback = 0x8000f108 <task_timeout_cb>, 
  io_callback = 0x8000ed58 <task_io_callback>, 
  finish_callback = 0x8000f470 <task_finish_callback>, 
  user_data = 0x902a0960, 
  error = 0x0, 
  cancellable = 0x90274c20, 
  cancel_handler = 13956
}




Version-Release number of selected component (if applicable):
0.1.43

How reproducible:
Need to get this information from the customer.

Steps to Reproduce:
1.
2.
3.

Actual results:


Expected results:


Additional info:

Comment 1 Carol Bouchard 2020-01-08 13:16:43 UTC
Created attachment 1650708 [details]
core-details

This provides details on core analysis.

Comment 2 Carol Bouchard 2020-01-08 14:14:15 UTC
Created attachment 1650717 [details]
Unit Test Details

Provide unit test doc


Note You need to log in before you can comment on or make changes to this bug.