summaryrefslogtreecommitdiff
path: root/include/rtthread.h
AgeCommit message (Collapse)Author
2024-06-27[doc][doxygen] Fix hook struct error.supperthomas
Signed-off-by: supperthomas <[email protected]>
2024-06-26[doc][doxygen] Fix doxygen struct error.supperthomas
Signed-off-by: supperthomas <[email protected]>
2024-06-13[kservice] Enhance support for backtrace service (#9037)Shell
[feat] Enhance support for backtrace service rt_backtrace_formatted_print() and rt_backtrace_to_buffer() to help debug routines. Also, following modification are included: - make rt_backtrace_frame patchable with weak attr - replace lwp backtrace with sync output Signed-off-by: Shell <[email protected]>
2024-05-28[arm64] add hw thread self (#8942)Shell
* [libcpu] arm64: Add hardware thread_self support This patch introduces hardware-based thread self-identification for the AArch64 architecture. It optimizes thread management by using hardware registers to store and access the current thread's pointer, reducing overhead and improving overall performance. Changes include: - Added `ARCH_USING_HW_THREAD_SELF` configuration option. - Modified `rtdef.h`, `rtsched.h` to conditionally include `critical_switch_flag` based on the new config. - Updated context management in `context_gcc.S`, `cpuport.h` to support hardware-based thread self. - Enhanced `scheduler_mp.c` and `thread.c` to leverage the new hardware thread self feature. These modifications ensure better scheduling and thread handling, particularly in multi-core environments, by minimizing the software overhead associated with thread management. Signed-off-by: Shell <[email protected]> * fixup: address suggestion * fixup: rt_current_thread as global * scheduler: add cpu object for UP scheduler Also, maintain the rt_current_thread in cpu object on UP scheduler. --------- Signed-off-by: Shell <[email protected]>
2024-05-17[smart] select console device dynamically (#8949)Shell
* [smart] select console device dynamically - Fixed compiler warning on terminal subsystem for `components/lwp/terminal/terminal.h` - Updated default console setup to dynamically select an appropriate tty device based on the configured console device name. Signed-off-by: Shell <[email protected]> * fixup: remove useless codes --------- Signed-off-by: Shell <[email protected]>
2024-05-11[include/rtthread.h] rt_thread_close函数声明应当与RT_USING_HEAP无关Yang Xijing
2024-05-08[src] add rt_hw_cpu_id() wrapper API (#8894)Shell
* [src] add rt_hw_cpu_id() wrapper API rt_hw_cpu_id() is an unsafe API which should not be used by most codes directly. It's error-prone because it must be used in proper context, otherwise it can lead to errors and unpredictable behavior. This patch adds a wrapper API for rt_hw_cpu_id() to address this risk. It includes the context-checking functionality and provides a safer alternative for obtaining CPU IDs, ensuring that it is used correctly within the appropriate context. Signed-off-by: Shell <[email protected]> * fixup UMP * update API & comment * ci: cpp_check --------- Signed-off-by: Shell <[email protected]>
2024-05-06[src][Kconfig]make RT_ASSERT independent of RT_USING_DEUBGzms123456
2024-05-01[kernel] add rt_thread_close()Shell
* [thread] Add rt_thread_close() This patch introduces a new function `rt_thread_close()` to enhances the usability and maintainability by providing a dedicated mechanism for closing threads. - A new function `rt_thread_close()` is added to the API, providing a standardized approach for closing threads. - The `rt_thread_close()` function removes a thread from the thread queue, updates its status to indicate closure, and performs the thread timer detaching which is a embedded timer in thread object. - Additionally, the `rt_thread_detach()` function is modified to utilize `rt_thread_close()` internally, streamlining the thread detachment process. Signed-off-by: Shell <[email protected]>
2024-04-20[kernel] move errno functions into klibcMeco Man
2024-04-19add cpu upShell
2024-04-19[src] Fixup UP irq_spinlockShell
Use scheduler lock in up irq_spinlock to avoid scheduling during spinlock. Signed-off-by: Shell <[email protected]>
2024-04-19fix for art-pi smartxiao-mang
2024-04-19fix for art-pi smartxiao-mang
2024-03-20[kernel] remove redundant _scheduler_stack_checkShell
2024-03-20[kernel] move std libc related to rtklibc.hMeco Man
2024-02-23🎯 Sync smart & scheduler codes (#8537)Shell
Signed-off-by: Shell <[email protected]> Co-authored-by: xqyjlj <[email protected]>
2024-02-20[ci] open ci check with function declaration warning (#8546)Yuqiang Wang
2024-02-19[kernel] fix some strict compiling warningsMeco Man
2024-01-16[kservice] MT-safe output support (kprintf/kputs)Shell
Signed-off-by: Shell <[email protected]>
2024-01-09[kernel] fixup of data racing accessing percpu objects (#8475)Shell
Signed-off-by: Shell <[email protected]>
2024-01-02[kernel] support for hook listShell
Signed-off-by: Shell <[email protected]>
2024-01-02[kernel] Add hook for malloc servicesShell
Including the patch for memory allocation, testsuites and fixups of static analysis. Signed-off-by: Shell <[email protected]>
2023-12-22✨ feat: spinlock should lock sched (#8360)xqyjlj
2023-11-21[libc] add RT_USING_INTERNAL_LIBC_ONLY macroMeco Man
This option is for RT-Thread Nano version. If select this option, it will not compile components/libc folder and only use tool chain internal libc. Normally, the tool chain internal is only cover ISO standard (e.g. armcc), but some tool chains' internal libc will cover more than ISO standard (e.g. newlib).
2023-10-26[ctime] fixup of data racing (#8187)Shell
Signed-off-by: Shell <[email protected]>
2023-10-25🎈 perf: perf rt_hw_interrupt_disable/enable (#8042)xqyjlj
Signed-off-by: Shell <[email protected]> Co-authored-by: Shell <[email protected]>
2023-10-21[kservice] improve backtrace service in kernel (#8144)Shell
Signed-off-by: Shell <[email protected]>
2023-10-20restore smp macro define. (#8151)geniusgogo
2023-10-17Sync dfs lwp (#8123)geniusgogo
2023-10-14[smart] Replace irq disable/enable codes in futex (#7941)Shell
Signed-off-by: Shell <[email protected]>
2023-09-19[kernel] fix interruptible typoMeco Man
2023-09-08[posix]修复消息队列返回长度异常 (#8014)zhkag
2023-07-26[debug] fix the error when disable RT_USING_DEBUGMeco Man
2023-07-23clean up rtthread.h (#7843)Man, Jianting (Meco)
2023-07-22[debug] 整理debug宏并增加RT_DEBUGING_CONTEXT (#7805)Man, Jianting (Meco)
2023-07-13【dd2.0】Support the Core API for dd2.0 (#7791)ErikChanHub
2023-07-01[include][dbg]update: delete rtdebug.h (#7759)Shicheng Chu
2023-06-26[src][components][include]消息队列支持优先级 (#7382)zhkag
2023-06-21[Kernel] message 可以返回消息的实际大小 (#7709)zhkag
2023-05-20[atomic] add stdc atomic detection. (#7536)Bernard Xiong
2023-05-17[include][src] Add API to get object name and thread name (#7507)Fan Yang
Signed-off-by: Fan YANG <[email protected]> Co-authored-by: Man, Jianting (Meco) <[email protected]>
2023-05-01[Better style] Unify the function declaration and definition paramete… (#7432)dejavudwh
2023-02-07rt_device_write/read return data type as rt_ssize_tMeco Man
rt_ssize_t can give negative error code, which follows the unix style correctly
2023-02-02[doxygen] Fix some warnings in doxygen (#6899)tuduweb
2022-12-16[rt-smart] 弱化 RT_USING_LWP,使用 RT_USING_SMART 作为宏配置 (#6740)guo
* [dfs] sync cromfs * [rt-smart]Weaken RT_USING_LWP, use RT_USING_SMART as macro configuration * [format] fix some format issue.
2022-12-03sync branch rt-smart. (#6641)guo
* Synchronize the code of the rt mart branch to the master branch. * TTY device * Add lwP code from rt-smart * Add vnode in DFS, but DFS will be re-write for rt-smart * There are three libcpu for rt-smart: * arm/cortex-a, arm/aarch64 * riscv64 Co-authored-by: Rbb666 <[email protected]> Co-authored-by: zhkag <[email protected]>
2022-11-06Merge pull request #6523 from BernardXiong/nested_mutexBernard Xiong
[Kernel] Add nested mutex feature
2022-10-25[compiler] 增加SConscript依赖标志 AddDepend (#6534)Man, Jianting (Meco)
* [compiler] 增加SConscript依赖标志 AddDepend * RT_USING_NEWLIB->RT_USING_NEWLIBC RT_USING_ARM_LIBC->RT_USING_ARMLIBC * 删除过时的板载测试例程 * [gd32] 移除无用的反汇编文件 * [bsp]移除老旧bsp中对RT_USING_NEWLIBC的手动宏定义
2022-10-16[Kernel] Add prioceiling feature in mutexBernard Xiong