Blender Git Loki
Git Commits -> Revision d9d1a09
Revision d9d1a09 by Lukas Toenne (depsgraph_refactor) June 4, 2014, 10:49 (GMT) |
Scheduler fixes: Initialize mutexes correctly and make sure decrementing the pending_links count in nodes is an atomic operation. Also moved the child scheduling function into depsgraph eval, where it is protected by a spin lock to avoid race conditions on num_pending_links == 0. NOTE: Apparently there is still a Heisenbug regarding this condition, but reproducing only works sporadically, have to investigate ... |
Commit Details:
Full Hash: d9d1a09233c21a804a54487eef4669265d7457dc
Parent Commit: ac5f92c
Lines Changed: +55, -22
6 Modified Paths:
/source/blender/depsgraph/CMakeLists.txt (+1, -0) (Diff)
/source/blender/depsgraph/intern/depsgraph_eval.cpp (+34, -5) (Diff)
/source/blender/depsgraph/intern/depsgraph_eval.h (+6, -0) (Diff)
/source/blender/depsgraph/intern/depsnode_operation.h (+1, -0) (Diff)
/source/blender/depsgraph/util/depsgraph_util_task.cpp (+12, -15) (Diff)
/source/blender/depsgraph/util/depsgraph_util_task.h (+1, -2) (Diff)
/source/blender/depsgraph/intern/depsgraph_eval.cpp (+34, -5) (Diff)
/source/blender/depsgraph/intern/depsgraph_eval.h (+6, -0) (Diff)
/source/blender/depsgraph/intern/depsnode_operation.h (+1, -0) (Diff)
/source/blender/depsgraph/util/depsgraph_util_task.cpp (+12, -15) (Diff)
/source/blender/depsgraph/util/depsgraph_util_task.h (+1, -2) (Diff)