FreeRTOS-Kernel/portable
Paul Hollinsky f9f0208daa POSIX Port: Round up stack sizes correctly on macOS
On macOS, pthread_attr_setstacksize requires the stack size to be a multiple of
the system page size.

The previous changes here assumed the use of pthread_attr_setstack, however
the transition to pthread_attr_setstacksize means we can avoid rounding the
pxEndOfStack pointer.

This is additionally positive because pxEndOfStack was actually being rounded
in the wrong direction -- it ought to have been rounded down (_trunc) instead of
up due to the stack growth direction. In my case this actually caused pxEndOfStack
to end up after pxTopOfStack, which underflowed and created a huge stack size
request + EXC_BAD_ACCESS in pthread_create.

Signed-off-by: Paul Hollinsky <paulhollinsky@gmail.com>
2024-10-20 10:21:10 -07:00
..
ARMClang Normalize line endings and whitespace in source files 2022-11-29 15:38:47 -08:00
ARMv8M Remove error for 16 MPU resgion from IAR ports (#1149) 2024-09-23 10:39:29 +05:30
BCC/16BitDOS Use Regex for Copyright Year in Header Check (#1002) 2024-02-26 09:26:42 -08:00
CCRH/F1Kx Add CC-RH port for Renesas F1Kx devices (#1100) 2024-08-09 11:21:21 +05:30
CCS Remove hardware dependence in portmacros.h (#1112) 2024-08-19 11:31:30 +05:30
CodeWarrior Use Regex for Copyright Year in Header Check (#1002) 2024-02-26 09:26:42 -08:00
Common Update MPU prototypes (#1150) 2024-09-30 11:41:52 +05:30
GCC [Fixed the Issue] Fixed the Issue#1102 of RL78 of the Context switch issue. https://github.com/FreeRTOS/FreeRTOS-Kernel/issues/1102 (#1157) 2024-10-15 11:09:45 +05:30
IAR [Fixed the Issue] Fixed the Issue#1102 of RL78 of the Context switch issue. https://github.com/FreeRTOS/FreeRTOS-Kernel/issues/1102 (#1157) 2024-10-15 11:09:45 +05:30
Keil Normalize line endings and whitespace in source files 2022-11-29 15:38:47 -08:00
MemMang Refine heap_5 heap protector (#1146) 2024-09-19 10:36:52 +05:30
MikroC/ARM_CM4F Update broken links in readme and comments (#1110) 2024-08-05 16:00:47 +05:30
MPLAB Use Regex for Copyright Year in Header Check (#1002) 2024-02-26 09:26:42 -08:00
MSVC-MingW Pend a yield in portPRE_TASK_DELETE_HOOK (#1132) 2024-08-29 08:51:35 -07:00
oWatcom/16BitDOS Use Regex for Copyright Year in Header Check (#1002) 2024-02-26 09:26:42 -08:00
Paradigm/Tern_EE Use Regex for Copyright Year in Header Check (#1002) 2024-02-26 09:26:42 -08:00
Renesas Use Regex for Copyright Year in Header Check (#1002) 2024-02-26 09:26:42 -08:00
Rowley Use Regex for Copyright Year in Header Check (#1002) 2024-02-26 09:26:42 -08:00
RVDS Update broken links in readme and comments (#1110) 2024-08-05 16:00:47 +05:30
SDCC/Cygnal Use Regex for Copyright Year in Header Check (#1002) 2024-02-26 09:26:42 -08:00
Softune Use Regex for Copyright Year in Header Check (#1002) 2024-02-26 09:26:42 -08:00
Tasking/ARM_CM4F Use Regex for Copyright Year in Header Check (#1002) 2024-02-26 09:26:42 -08:00
template Add Noreturn attribute in template port for static analysis (#1060) 2024-05-16 21:11:05 +05:30
ThirdParty POSIX Port: Round up stack sizes correctly on macOS 2024-10-20 10:21:10 -07:00
WizC/PIC18 Use Regex for Copyright Year in Header Check (#1002) 2024-02-26 09:26:42 -08:00
CMakeLists.txt Update CMakeLists.txt to proper name for the ports (#1129) 2024-08-22 10:03:58 +05:30
readme.txt Normalize line endings and whitespace in source files 2022-11-29 15:38:47 -08:00

Each real time kernel port consists of three files that contain the core kernel
components and are common to every port, and one or more files that are
specific to a particular microcontroller and/or compiler.


+ The FreeRTOS/Source/Portable/MemMang directory contains the five sample
memory allocators as described on the https://www.FreeRTOS.org WEB site.

+ The other directories each contain files specific to a particular
microcontroller or compiler, where the directory name denotes the compiler
specific files the directory contains.



For example, if you are interested in the [compiler] port for the [architecture]
microcontroller, then the port specific files are contained in
FreeRTOS/Source/Portable/[compiler]/[architecture] directory.  If this is the
only port you are interested in then all the other directories can be
ignored.