Page MenuHome

Laplacian smooth on instanced objects leads to crash
Closed, ResolvedPublic

Description

System Information
Ubuntu 12.04 and nvidia GeForce G 103M/PCIe/SSE2

Blender Version
Broken: (2.69.10 dd684f5)

Short description of error
Crash when laplacian smooth modifier is active on two instances of an object.

Exact steps for others to reproduce the error

  1. Duplicate Linked (ALT + D) the initial cube
  2. Add a laplacian smooth modifier on both cubes
  3. Bum!

Looks like it happens when nlEnd is called in function laplaciansmoothModifier_do, I could not investigate any further.

Event Timeline

Paolo Acampora (pkrime) set Type to Bug.
Paolo Acampora (pkrime) created this task.
Paolo Acampora (pkrime) raised the priority of this task from to Needs Triage by Developer.

Probably caused by recent introduction of multithreading in the depgraph. It appears the laplacian-smooth modifier uses the OpenNL library in a non-threadsafe way. This is a problem with the global "current state" of OpenNL, i'll have to investigate if we can create explicit contexts for OpenNL instead, otherwise the modifiers would have to use an ugly mutex to prevent concurrent execution ...

Lukas Toenne (lukastoenne) triaged this task as Confirmed, Medium priority.

how fast, thank you! :)