Issue was introduced by svn rev56273 and was caused by
both smokeModifier_do and smokeModifier_reset (which is
called from smokeModifier_do) do mutex lock/unlock.
This lead to quite undefined behavior caused by the same
thread released mutex twice.
Solved by not locking mutex from inside routines calling
from smokeModifier_process -- mutex is locked in parent
function anyway.