Bug 1163821 - Current timer implementation has no way to avoid some races
Summary: Current timer implementation has no way to avoid some races
Keywords:
Status: CLOSED WONTFIX
Alias: None
Product: GlusterFS
Classification: Community
Component: core
Version: mainline
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
Assignee: Xavi Hernandez
QA Contact:
URL:
Whiteboard:
Depends On:
Blocks: 1163822
TreeView+ depends on / blocked
 
Reported: 2014-11-13 14:33 UTC by Xavi Hernandez
Modified: 2016-11-23 07:28 UTC (History)
1 user (show)

Fixed In Version:
Clone Of:
: 1163822 (view as bug list)
Environment:
Last Closed: 2016-11-23 07:28:19 UTC
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Embargoed:


Attachments (Terms of Use)

Description Xavi Hernandez 2014-11-13 14:33:28 UTC
Description of problem:

With the current implementation of timers in gluster, there are some situations that cannot be handled in a safe way. This could lead to race conditions, causing crashes or other unexpected side effects.

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

Additional info:

A clear example is the release of resources after cancelling a timer (the timer could have not been really cancelled and the callback will run anyway but the caller of gf_timer_call_cancel() has no way to know it).

Additionally, it's not possible to determine if a timer callback has been executed or not, or synchronize with it and know if it has been executed successfully.

Comment 1 Anand Avati 2014-12-19 12:27:57 UTC
REVIEW: http://review.gluster.org/9316 ([WIP] libglusterfs: Improved timer implementation) posted (#1) for review on master by Xavier Hernandez (xhernandez)

Comment 2 Anand Avati 2015-01-08 10:15:54 UTC
REVIEW: http://review.gluster.org/9316 ([WIP] libglusterfs: Improved timer implementation) posted (#2) for review on master by Xavier Hernandez (xhernandez)

Comment 3 Mike McCune 2016-03-28 23:46:11 UTC
This bug was accidentally moved from POST to MODIFIED via an error in automation, please see mmccune with any questions

Comment 4 Xavi Hernandez 2016-11-23 07:28:19 UTC
Timer implementation has already been fixed in some places to avoid the major problems, so this patch is not needed anymore.


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