Page MenuHome

Fix 'BLI_task_parallel_mempool' keeping 'user_chunk' unchanged
ClosedPublic

Authored by Germano Cavalcante (mano-wii) on Jul 28 2021, 8:10 PM.

Details

Summary

When BLI_task_parallel_mempool does not use threading, the
userdata_chunk is allocated locally simulating a TLS.

However func_reduce is not called and the original chunk is ignored.

This patch resolves this issue by using the original userdata_chunk.

task_parallel_iterator_no_threads is another function that doesn't call
func_reduce and apparently ignores userdata_chunk_local in the main
iterator.

This fixes T90131

Ref rB14f3b2cdad2d7b00ce3ea27bf8eb0087ac2a6cbd

Diff Detail

Repository
rB Blender

Event Timeline

Germano Cavalcante (mano-wii) requested review of this revision.Jul 28 2021, 8:10 PM
Germano Cavalcante (mano-wii) created this revision.
  • Rebase
  • Use original userdata_chunk
This revision was not accepted when it landed; it landed in state Needs Review.Jul 29 2021, 4:39 PM
This revision was automatically updated to reflect the committed changes.