You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Describe the bug
tx_thread_module_kernel_stack_start is allocated at _txm_module_manager_thread_create from the object pool, but is not released at thread delete function (it is deleted upon module stop when all objects of the module are deleted)
To Reproduce
Run from module:
while(1)
{
status = txm_module_object_allocate(<thread_ptr>, sizeof(TX_THREAD));
assert(TX_SUCCESS == status);
status = tx_thread_create(<thread_ptr>, "my thread", <my_thread_func>, 0, <stack_ptr>,
<stack size>, <priority>, <priority>, <time slice>, TX_DONT_START);
assert(TX_SUCCESS == status);
status = tx_thread_terminate(<thread_ptr>);
assert(TX_SUCCESS == status);
// This system call deallocating also <thread_ptr>, so will need to allocate it afterward
tx_thread_delete(<thread_ptr>);
assert(TX_SUCCESS == status);
}
Expected behavior
tx_thread_module_kernel_stack_start should be released upon thread delete.
Impact
Can leak object pool out of memory, which cause no more option to create OS objects from module
Logs and console output
Additional context
The text was updated successfully, but these errors were encountered:
Describe the bug
tx_thread_module_kernel_stack_start is allocated at _txm_module_manager_thread_create from the object pool, but is not released at thread delete function (it is deleted upon module stop when all objects of the module are deleted)
To Reproduce
Run from module:
Expected behavior
tx_thread_module_kernel_stack_start should be released upon thread delete.
Impact
Can leak object pool out of memory, which cause no more option to create OS objects from module
Logs and console output
Additional context
The text was updated successfully, but these errors were encountered: