fix incorrect loop-again logic on async threads

This commit is contained in:
Ryan Fleury
2025-09-19 16:41:49 -07:00
parent 8fa01d3e30
commit 53054e5add
3 changed files with 6 additions and 5 deletions
+2 -2
View File
@@ -193,11 +193,11 @@ async_thread_entry_point(void *params)
if(!ins_atomic_u32_eval(&async_loop_again))
{
MutexScope(async_tick_start_mutex) cond_var_wait(async_tick_start_cond_var, async_tick_start_mutex, os_now_microseconds()+100000);
if(lane_idx() == 0)
}
else if(lane_idx() == 0)
{
async_loop_again = 0;
}
}
#if defined(CONTENT_H)
c_tick();
#endif
+1
View File
@@ -97,6 +97,7 @@ tex_texture_from_hash_topology(Access *access, U128 hash, TEX_Topology topology)
n->v.top = topology;
tex_shared->req_count += 1;
}
cond_var_broadcast(async_tick_start_cond_var);
}
// rjf: node? -> grab & access