<feed xmlns='http://www.w3.org/2005/Atom'>
<title>threadx.git/ports/cortex_m4/gnu/src, branch master</title>
<subtitle>Unnamed repository; edit this file 'description' to name the repository.</subtitle>
<id>http://cgit.235523.xyz/threadx.git/atom/ports/cortex_m4/gnu/src?h=master</id>
<link rel='self' href='http://cgit.235523.xyz/threadx.git/atom/ports/cortex_m4/gnu/src?h=master'/>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/threadx.git/'/>
<updated>2026-04-29T13:10:57Z</updated>
<entry>
<title>Fixed race condition and message loss in Cortex-M ports (#523)</title>
<updated>2026-04-29T13:10:57Z</updated>
<author>
<name>Frédéric Desbiens</name>
<email>frederic.desbiens@eclipse-foundation.org</email>
</author>
<published>2026-04-29T13:10:57Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/threadx.git/commit/?id=33efad3fee3414aef0d99e416361226b8568fd26'/>
<id>urn:sha1:33efad3fee3414aef0d99e416361226b8568fd26</id>
<content type='text'>
* Fixed race condition and message loss in Cortex-M GNU, AC6, and IAR ports (#516)

- Added compiler memory barriers to BASEPRI management functions in tx_port.h.
- Added architectural barriers (DSB/ISB) to scheduler return paths in tx_port.h and tx_thread_system_return.S to prevent fall-through before context switch.
- These changes address spurious thread resumption and lost messages, especially when TX_NOT_INTERRUPTABLE is enabled.
- These changes ensure that pending interrupts (specifically PendSV) are recognised before subsequent instructions are executed, following Kairalite's feedback and ARM architectural guidelines.

 Assisted-by: Gemini (Gemini 2.0 Flash)

-----

* Added a comment in common/tx_queue_cleanup to document why the NI path omits revalidation guards

- In `TX_NOT_INTERRUPTABLE` mode, the caller keeps interrupts disabled across the entire cleanup call, so the race window that makes the guards necessary in the interruptable path cannot occur. Add a comment explaining this, and noting that all paths that resume a suspended thread clear tx_thread_suspend_cleanup before calling
_tx_thread_system_ni_resume, making double-cleanup impossible.

This prevents future false-positive suggestions (e.g. from AI tools) to add redundant checks to the NI path.

Relates to: eclipse-threadx/threadx#516

Co-authored-by: Copilot &lt;223556219+Copilot@users.noreply.github.com&gt;</content>
</entry>
<entry>
<title>Updated copyright headers and version number constants (#509)</title>
<updated>2026-03-05T09:46:30Z</updated>
<author>
<name>Frédéric Desbiens</name>
<email>frederic.desbiens@eclipse-foundation.org</email>
</author>
<published>2026-03-05T09:46:30Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/threadx.git/commit/?id=c3259a216026372e3833dd8996a68f77e8595fbd'/>
<id>urn:sha1:c3259a216026372e3833dd8996a68f77e8595fbd</id>
<content type='text'>
* Updated version number constants

* Removed revision history from all files

* Added Eclipse ThreadX contributors' copyright header </content>
</entry>
<entry>
<title>Update copyright.</title>
<updated>2024-01-29T05:51:15Z</updated>
<author>
<name>Bo Chen (from Dev Box)</name>
<email>boche@microsoft.com</email>
</author>
<published>2024-01-29T05:51:15Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/threadx.git/commit/?id=8276bcf71142197e09551e29f1779299fa591ec7'/>
<id>urn:sha1:8276bcf71142197e09551e29f1779299fa591ec7</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Release 6.2.1 on 08 Mar 2023. Expand to see details.</title>
<updated>2023-03-08T08:26:22Z</updated>
<author>
<name>Tiejun Zhou</name>
<email>tizho@microsoft.com</email>
</author>
<published>2023-03-08T08:26:22Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/threadx.git/commit/?id=2aa19f3de0b6cf09bb9dca78c8a53fe337b8f0f7'/>
<id>urn:sha1:2aa19f3de0b6cf09bb9dca78c8a53fe337b8f0f7</id>
<content type='text'>
cee19603d Include tx_user.h conditionally.
e40e08007 Update owners
d69641273 Update release date and version
394aee52f Add tx_user.h to GNU port assembly files
5cca2ddd0 RISC-V 64 bit port for Microchip
e0f2c373c Link Winmm.lib that required by the high-resolution timer.
6af472a68 Update Win32 port with high resolution timer.
aea7b556a Add DMB ISH barrier inst in ARMv8-A SMP scheduler
19091a262 Add .section .preamble to m3 m4 m7 module ports
ced60e1b7 Add missing parenthesis in ports assembly file
309dc77ca Modules Cortex-A7 IAR new port
c752a4063 Modules Cortex-A7 GNU new port
dc224b90f Fix race condition in tx_thread_wait_abort and update regression test
6e261f5b7 create threadx cmsis-pack
</content>
</entry>
<entry>
<title>Release 6.1.12</title>
<updated>2022-07-26T02:04:40Z</updated>
<author>
<name>Yuxin Zhou</name>
<email>yuxzho@microsoft.com</email>
</author>
<published>2022-07-26T02:04:40Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/threadx.git/commit/?id=8c3c08f10826c4d5332a6d8e2fdf014b793a456a'/>
<id>urn:sha1:8c3c08f10826c4d5332a6d8e2fdf014b793a456a</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Release 6.1.11</title>
<updated>2022-04-20T05:07:02Z</updated>
<author>
<name>Yuxin Zhou</name>
<email>yuxzho@microsoft.com</email>
</author>
<published>2022-04-20T05:07:02Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/threadx.git/commit/?id=cef9cb22a5e2b9bca56074c5e627225ec0dd3d73'/>
<id>urn:sha1:cef9cb22a5e2b9bca56074c5e627225ec0dd3d73</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Release 6.1.10</title>
<updated>2022-01-29T00:24:03Z</updated>
<author>
<name>Yuxin Zhou</name>
<email>yuxzho@microsoft.com</email>
</author>
<published>2022-01-29T00:24:03Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/threadx.git/commit/?id=f7f0957188d48ec5278107dc8fbd2de747fda1b8'/>
<id>urn:sha1:f7f0957188d48ec5278107dc8fbd2de747fda1b8</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Release 6.1.8</title>
<updated>2021-07-28T07:24:02Z</updated>
<author>
<name>Yuxin Zhou</name>
<email>yuxzho@microsoft.com</email>
</author>
<published>2021-07-28T07:24:02Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/threadx.git/commit/?id=d0dab582506f132690b35b36ffea129ad51110b0'/>
<id>urn:sha1:d0dab582506f132690b35b36ffea129ad51110b0</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Release 6.1.7</title>
<updated>2021-06-02T06:45:05Z</updated>
<author>
<name>Bo Chen</name>
<email>boche@microsoft.com</email>
</author>
<published>2021-06-02T06:45:05Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/threadx.git/commit/?id=f5056f4923410b99c87ab909d24ae77bf41923b6'/>
<id>urn:sha1:f5056f4923410b99c87ab909d24ae77bf41923b6</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Release 6.1.5</title>
<updated>2021-03-05T05:38:33Z</updated>
<author>
<name>Yuxin Zhou</name>
<email>yuxzho@microsoft.com</email>
</author>
<published>2021-03-05T05:38:33Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/threadx.git/commit/?id=10a7932b9d8a9f6f36523cb2f6edf13aa8dee6be'/>
<id>urn:sha1:10a7932b9d8a9f6f36523cb2f6edf13aa8dee6be</id>
<content type='text'>
</content>
</entry>
</feed>
