Bug 1028119 - dbus timeout
dbus timeout
Status: CLOSED CURRENTRELEASE
Product: Red Hat Enterprise Linux 7
Classification: Red Hat
Component: tuned (Show other bugs)
7.0
Unspecified Unspecified
unspecified Severity unspecified
: rc
: ---
Assigned To: Jaroslav Škarvada
Branislav Blaškovič
: Patch
Depends On:
Blocks:
  Show dependency treegraph
 
Reported: 2013-11-07 12:22 EST by Jaroslav Škarvada
Modified: 2014-06-18 03:34 EDT (History)
5 users (show)

See Also:
Fixed In Version: tuned-2.3.0-2.el7
Doc Type: Bug Fix
Doc Text:
Cause: There was an hidden race condition in the Tuned code since the beginning of the Tuned v2 development. Consequence: If the switch profile command was sent to the Tuned daemon quickly more times (e.g. twice) and the previous switch profile command wasn't yet finished, the race condition may occur and the deadlock may trigger. In the deadlocked state the Tuned daemon stopped responding to further commands and had to be killed by the operator. Fix: The Tuned code was modified for the deadlock not to occur any more. Result: Multiple quick requests can be processed now and the Tuned daemon still responds.
Story Points: ---
Clone Of:
Environment:
Last Closed: 2014-06-13 07:00:37 EDT
Type: Bug
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)
Proposed fix (664 bytes, patch)
2013-11-07 17:34 EST, Jaroslav Škarvada
no flags Details | Diff

  None (edit)
Description Jaroslav Škarvada 2013-11-07 12:22:37 EST
Description of problem:
tuned-adm can timeout and tuned dies.

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

How reproducible:
Sometimes

Steps to Reproduce:
1. Run the reproducer

Actual results:
dbus timeout

Expected results:
No timeout

Additional info:
Older tuned seems also affected.

Reproducer:

PROFILES=(balanced latency-performance powersave throughput-performance virtual-guest virtual-host)

for (( i=0; i < 100; i++ ))
do
  p=${PROFILES[$(( RANDOM % ${#PROFILES[@]} ))]}
  echo "iter: $i, profile: $p"
  tuned-adm profile $p
done
Comment 1 Jaroslav Škarvada 2013-11-07 12:24:51 EST
The source of this problem is currently unclear to me. I am working on it
Comment 2 Jaroslav Škarvada 2013-11-07 16:34:23 EST
I got it, there is race condition in the start/stop code. The race is there since the beginning of the tuned-2 development.
Comment 3 Jaroslav Škarvada 2013-11-07 16:36:53 EST
Simple reproducer:
tuned-adm profile balanced && tuned-adm profile balanced
Comment 4 Jaroslav Škarvada 2013-11-07 17:34:17 EST
Created attachment 821328 [details]
Proposed fix
Comment 7 Branislav Blaškovič 2013-11-19 05:25:14 EST
I cannot reproduce this with tuned-2.3.0-3.el7.noarch either.
Marking as VERIFIED.
Comment 8 Ludek Smid 2014-06-13 07:00:37 EDT
This request was resolved in Red Hat Enterprise Linux 7.0.

Contact your manager or support representative in case you have further questions about the request.

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