Commit Graph

79 Commits

Author SHA1 Message Date
zhkag a6a9b0dfcb
[components][posix] 完善 posix 接口消息队列 (#7395) 2023-05-05 18:14:07 +08:00
geniusgogo 18c452e4dd
fix lwp _load_script. (#7405) 2023-04-28 11:49:05 +08:00
zhkag 550b9282f9
[syscall] lwp_syscall 中 rt_err_t 改为 sysret_t (#7374) 2023-04-26 19:12:30 +08:00
xiao-mang c043657353
fork子进程时,lwp_struct_copy函数增加拷贝working_directory功能 (#7380) 2023-04-26 17:21:00 +08:00
Shell 470454d201
[components/mm] support for scalable memory management (#7277)
* [mm/page] multi-list page manager
[mm/page] page debugger
[libcpu/aarch64] hugepage support

* [quality] remove void-arith

* [format] remove kasan codes
2023-04-22 23:59:11 +08:00
张世争 3f442bbe4a
[lwp_ipc] support file descriptor transmit (#7318) 2023-04-21 13:42:05 +08:00
Bernard Xiong 9600b75b55
[DFS] prepare for dfs_v2.0 (#7200)
* [DFS] prepare for dfs_v2. dfs_fd -> dfs_file; dfs_fnode -> dfs_vnode.

* [BSP] fix code analysis warning

* [smart] fix the pointer overflow.

* code format

* [smart] fix the lwp->lwp_obj checking.
2023-04-08 22:25:51 +08:00
Shicheng Chu 93f3cb30e4
[kernel] 将rt_thread结构体改为显式继承rt_object (#7131) 2023-04-04 09:06:27 -04:00
Sparks-Pion accab17fa5
[HUST CSE IoTS&P Lab] [fix] check rt_mutex_create return value (#7169) 2023-04-04 00:33:10 -04:00
xqyjlj cd1e0a7901 feat(components): add statfs, statfs64, fstatfs, fstatfs64 support 2023-03-31 10:56:37 +08:00
xqyjlj e4bd8e00f0 feat(components/lwp/lwp.c): add OS env to default environ 2023-03-31 10:56:37 +08:00
xqyjlj 63c7d0ceb4 🐞 fix(components/lwp/lwp_syscall.c): fix sys_readlink 2023-03-31 10:56:37 +08:00
xqyjlj 157dc0959c feat(components): add uname support 2023-03-31 10:56:37 +08:00
xqyjlj c3b08d4288 feat(components/lwp/lwp_syscall.c): add sys_lstat support
temporarily use sys_stat. should be replaced by sys_lstat if symbolic link are implemented
2023-03-31 10:56:37 +08:00
Shell eec78d9f5d
[rt-smart] testcase & improvements for memory management (#7099)
* [utest/mm] add testcase for create/init
format codes of create/init in components/mm

* [libcpu/aarch64] fix user stack check routine

* [kservice] export API for utest

* [utest/mm] testcase for aspace_map
format & modify the files under components/mm related with aspace_map

* [lwp/user_mm] add user_map_varea for mmap feature

* [mm] rename rt_mm_fault_try_fix to rt_aspace_fault_try_fix

* [utest/mm] testcase for synchronization

* [mm] modify unmap api to improve throughput

* [utest/mm] testcases for cache and varea map

* [format] remove extra space

* [utest/mm] fix testcase problem in header

* [lwp] extend map_user_varea with a flag

* [utest/mm] testcase for lwp_map_user_varea

* [libcpu/arm/cortex-a] fix kernel space layout

* [utest/mm] adjust for armv7 arch
2023-03-30 08:25:15 +08:00
Shell dd2f1a795a
[rt-smart] fix competition on aspace (#7064)
* [mm] mmu operations should be wrapped by _aspace_bst_insert & _aspace_bst_remove to avoid competition on page table

* [lwp] may not return null on failed
2023-03-19 14:41:50 +08:00
Shell 18a14cc935
[rt-smart] move sys_cacheflush to lwp_syscall.c (#7048)
* [syscall] move sys_cacheflush to lwp_syscall.c

* [syscall] improve assertion

* [format] rename to rt_ctassert

* [debug] modified ct assertion on mm_page.c
2023-03-17 15:11:38 +08:00
Meco Man dfddd79b24 [errno code][-RT_EINVAL] fix that use RT_EINVAL without - 2023-03-16 20:21:43 -04:00
Shell fcc01a617d
[rt-smart] Fix return value in syscall (#7045)
* [timer] fix sys return value to avoid outdated errno

* [rtdef] add wrap to stringify

* [syscall] return value in rt errno should be recycle immediately after call to posix layer

* [syscall] return type of syscall should be long
errno should be recycle immediately after call to rt posix layer to avoid
outdated value

* [format] move prototype to header file

* [fix] futex definition conflict
2023-03-13 19:09:34 +08:00
wangxiaoyao 34bf77b8e3 [format] 2023-03-11 19:01:33 +08:00
wangxiaoyao cb60ef2c86 [lwp] clear vnode in fd after free 2023-03-11 19:01:33 +08:00
wangxiaoyao 672966cc41 [lwp] arch should recycle resource it allocated 2023-03-11 19:01:33 +08:00
wangxiaoyao d1ed1c06cb [timer] use int pointer to interpret notify func in sevp 2023-03-02 15:48:46 +08:00
wangxiaoyao 31bfc855c1 [syscall][fix] kernel overwrite ustack data in timer create 2023-03-02 15:48:46 +08:00
zhkag 111a5b88cb smart select POSIX timer clock 2023-03-01 00:37:20 +08:00
wangxiaoyao fef2607764 [lwp] save virtual addr in shm structure 2023-02-25 20:05:59 +08:00
geniusgogo d3553e7220 fixed fstat/stat/readlink syscall. 2023-02-25 17:07:20 +08:00
Shell 382e9bcac7
[rt-smart] handling kernel from accessing unmapped user stack (#6957)
[rt-smart] handling kernel from accessing unmapped user stack
2023-02-24 14:52:16 +08:00
wangxiaoyao 484a0d602e [fixup] add cache maintenance ops;
fix bugs on cache maintenance when starting user app
2023-02-21 08:48:49 +08:00
wangxiaoyao 855aef9c9c [mm] distinguish NULL and MAP_FAILED 2023-02-21 08:48:49 +08:00
Bernard Xiong 0ea687e0cb [lwP] fix _m_lock in posix mutex 2023-02-21 08:47:00 +08:00
zhkag 657cbfdac7 修复编译警告 2023-02-09 15:21:17 +08:00
Meco Man f58d3c5200 rt_device_write/read return data type as rt_ssize_t
rt_ssize_t can give negative error code, which follows the unix style correctly
2023-02-07 21:43:57 -05:00
geniusgogo 890c1c9264 fixed syscall errno return. 2023-02-07 12:05:48 -05:00
Shell b2402029b2
[rt-smart][fix/lwp] don't restore terminal for background lwp (#6847)
* [fix/lwp] don't restore term for background lwp
2023-01-13 09:48:43 +08:00
wangxiaoyao 93dd8c6c6e [rt-smart] fix warnings 2023-01-10 09:37:22 +08:00
Meco Man 9bc68d26a4 format Kconfig and sconscript 2023-01-08 22:52:13 -05:00
Shell 7450ef6c4d
[rt-smart] kernel virtual memory management layer (#6809)
synchronize virtual memory system works.
adding kernel virtual memory management layer for page-based MMU enabled architecture
porting libcpu MMU codes
porting lwp memory related codes
2023-01-08 21:08:55 -05:00
zhkag 7f9ccd3c80 格式化代码 2023-01-09 09:32:07 +08:00
zhkag 7fc3b2d7b5 添加 sys_mq_close 函数 2023-01-09 09:32:07 +08:00
zhkag ce308cd965 更新 mq syscall 2023-01-09 09:32:07 +08:00
guo 68ca9f07a6
[rt-smart] 弱化 RT_USING_LWP,使用 RT_USING_SMART 作为宏配置 (#6740)
* [dfs] sync cromfs

* [rt-smart]Weaken RT_USING_LWP, use RT_USING_SMART as macro configuration

* [format] fix some format issue.
2022-12-16 18:38:28 +08:00
Man, Jianting (Meco) 99bdf978d7
[rtdef] use lower-case to define attributes (#6728)
* [rtdef] rename RT_WEAK attribute as rt_weak

* [rtdef] rename RT_USED attribute as rt_used

* [rtdef] rename RT_SECTION attribute as rt_section

* [rtdef] rename ALIGN attribute as rt_align

* [legacy] add RT_USED ALIGN RT_SECTION RT_WEAK as legacy support
2022-12-11 13:12:03 -05:00
Shell e991be9c51
[smart][risc-v/libcpu] port rv64 cpu code (#6704)
* [risc-v/libcpu] porting Smart & RTOS
* [fix] rv64 plic
* [risc-v/rv64] remove macro in rtdef
2022-12-10 22:16:42 +08:00
zhkag 2e488e0440
[rt-smart]同步 gitee nanosleep 修复 (#6710) 2022-12-08 10:02:40 -05:00
guo ecf2d82159
sync branch rt-smart. (#6641)
* 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 <zhangbingru@rt-thread.com>
Co-authored-by: zhkag <zhkag@foxmail.com>
2022-12-03 12:07:44 +08:00
Meco Man c9878aacd2 [scons][iar] 将IAR的PLATFORM字段由iar调整为iccarm
将路径更新为IAR最新版本的路径
2022-06-09 07:01:59 +08:00
Man, Jianting (Meco) a514b3bd16
[components][kconfig] 整理Kconfig目录名称和结构 (#5698) 2022-03-25 23:07:18 +08:00
geniusgogo 658b2c1027 fix 32bit & 64bit value to pointer interconvert. 2022-01-28 11:35:10 +08:00
liukangcc 3d2e23ec1c [update] move dfs_posix.h to legacy/dfs/dfs_posix.h 2022-01-14 23:09:32 +08:00