Gustavo Jose de Sousa
9a100afede
AP_HAL_Linux: Thread: add doc about rounding function
2016-05-20 16:31:15 -03:00
Lucas De Marchi
359417d544
AP_HAL_Linux: Thread: make sure pointer is aligned
...
Implementation of alloca() is very much architecture and compiler
dependent. Avoid the case in which it could return a non-aligned
pointer, which would mean Thread::_poison_stack() would do the wrong
thing.
2016-05-20 16:31:15 -03:00
Lucas De Marchi
7e49d0c53f
AP_HAL_Linux: Thread: fix alignment warning
...
../../libraries/AP_HAL_Linux/Thread.cpp: In member function ‘void Linux::Thread::_poison_stack()’:
../../libraries/AP_HAL_Linux/Thread.cpp:87:31: warning: cast from ‘uint8_t* {aka unsigned char*}’ to ‘uint32_t* {aka unsigned int*}’ increases required alignment of target type [-Wcast-align]
for (p = (uint32_t *) end; p > curr; p--) {
^
../../libraries/AP_HAL_Linux/Thread.cpp:93:31: warning: cast from ‘uint8_t* {aka unsigned char*}’ to ‘uint32_t* {aka unsigned int*}’ increases required alignment of target type [-Wcast-align]
for (p = (uint32_t *) end; p < curr; p++) {
^
../../libraries/AP_HAL_Linux/Thread.cpp:98:39: warning: cast from ‘uint8_t* {aka unsigned char*}’ to ‘uint32_t* {aka unsigned int*}’ increases required alignment of target type [-Wcast-align]
_stack_debug.start = (uint32_t *) begin;
^
../../libraries/AP_HAL_Linux/Thread.cpp:99:37: warning: cast from ‘uint8_t* {aka unsigned char*}’ to ‘uint32_t* {aka unsigned int*}’ increases required alignment of target type [-Wcast-align]
_stack_debug.end = (uint32_t *) end;
^
2016-05-20 16:31:15 -03:00
Lucas De Marchi
18af4da690
AP_HAL_Linux: Thread: fix warning regarding shadow member
...
../../libraries/AP_HAL_Linux/Thread.cpp: In member function ‘void Linux::Thread::_poison_stack()’:
../../libraries/AP_HAL_Linux/Thread.cpp:63:20: warning: declaration of ‘start’ shadows a member of 'this' [-Wshadow]
uint8_t *end, *start, *curr;
^
2016-05-20 16:31:15 -03:00
Lucas De Marchi
b2d4da4b0a
AP_HAL_Linux: Thread: allow to set stack size
...
This allows the code that is creating the thread to set the size of the
stack.
2016-05-12 13:35:23 -03:00
Lucas De Marchi
f5f4aa7c21
AP_HAL_Linux: Thread: allow to debug stack usage
2016-05-12 13:35:23 -03:00
Lucas De Marchi
48e81c8589
AP_HAL_Linux: Thread: add PeriodicThread helper
...
This is a helper class to run a single periodic function like the ones
used in the scheduler.
2016-02-12 23:42:34 -02:00
Lucas De Marchi
0282ebb8ff
AP_HAL_Linux: add method to check caller same as thread
2016-02-12 23:42:34 -02:00
Lucas De Marchi
66e6cd60d8
AP_HAL_Linux: Thread: allow to override run method
2016-02-12 23:42:34 -02:00
Lucas De Marchi
3e0a83ede9
AP_HAL_Linux: add Thread abstraction class
2016-02-12 23:42:34 -02:00