From 81bb620d64256998b861bc677c2435bf64d04f44 Mon Sep 17 00:00:00 2001 From: UbitUmarov Date: Mon, 21 Jan 2019 01:43:35 +0000 Subject: ubode try remove a legacy lock, that is nasty --- OpenSim/Region/PhysicsModules/Ode/OdeScene.cs | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) (limited to 'OpenSim/Region/PhysicsModules/Ode/OdeScene.cs') diff --git a/OpenSim/Region/PhysicsModules/Ode/OdeScene.cs b/OpenSim/Region/PhysicsModules/Ode/OdeScene.cs index 1b68105..c9bc754 100644 --- a/OpenSim/Region/PhysicsModules/Ode/OdeScene.cs +++ b/OpenSim/Region/PhysicsModules/Ode/OdeScene.cs @@ -124,7 +124,7 @@ namespace OpenSim.Region.PhysicsModule.ODE /// /lib/x86_64-linux-gnu/libpthread.so.0(+0xfc60) [0x7f03c9849c60] /// .../opensim/bin/libode-x86_64.so(_Z12dCollideCCTLP6dxGeomS0_iP12dContactGeomi+0x92) [0x7f03b44bcf82] /// - internal static Object UniversalColliderSyncObject = new Object(); +// internal static Object UniversalColliderSyncObject = new Object(); internal static Object SimulationLock = new Object(); /// @@ -498,6 +498,8 @@ namespace OpenSim.Region.PhysicsModule.ODE public OdeScene(Scene pscene, IConfigSource psourceconfig, string pname, string pversion) { + SafeNativeMethods.AllocateODEDataForThread(~0U); + m_config = psourceconfig; m_frameWorkScene = pscene; @@ -878,7 +880,7 @@ namespace OpenSim.Region.PhysicsModule.ODE { int count; - lock (OdeScene.UniversalColliderSyncObject) +// lock (OdeScene.UniversalColliderSyncObject) { // We do this inside the lock so that we don't count any delay in acquiring it if (CollectStats) @@ -2867,7 +2869,7 @@ namespace OpenSim.Region.PhysicsModule.ODE tempTick = tempTick2; } - lock(SimulationLock) +// lock(SimulationLock) SafeNativeMethods.WorldQuickStep(world, ODE_STEPSIZE); if (CollectStats) -- cgit v1.1