Commit Graph

192 Commits

Author SHA1 Message Date
Shell acfa74f078
[libcpu/arm] fix race condition with ldrex,strex (#7842)
Signed-off-by: Shell <smokewood@qq.com>
2023-07-25 14:07:44 +08:00
Shell 52d3637fba
[smart] fix possible memory leak (#7832)
Signed-off-by: Shell <smokewood@qq.com>
2023-07-22 10:30:29 +08:00
Shell 58e0ddf287
[component/lwp] support more feature of signal from IEEE Std 1003.1-2017 (#7828)
Signed-off-by: Shell <smokewood@qq.com>
2023-07-20 00:02:41 +08:00
GUI b424169e17
AArch64: fixup fpu storage's size in stack and append Q16 ~ Q31 (#7815)
Signed-off-by: GuEe-GUI <GuEe-GUI@github.com>
2023-07-15 15:21:23 +08:00
geniusgogo 2aa4510aa8
execute elf add executable permissions check. (#7769) 2023-07-03 19:25:59 +08:00
Shell 0b79bea7cd
[components/lwp] clear ref to parent on waitpid() (#7741)
Signed-off-by: shell <smokewood@qq.com>
2023-06-29 00:00:27 +08:00
Shell b66514686a
[components/tty] fix bug on foreground app switch (#7726) 2023-06-28 09:11:17 +08:00
yangfasheng b4e59bac4e
dfs v2 修改 fd_new 的 startfd 起始值为 0 ;修复 futex_wait 超时时间换算异常; (#7705)
Signed-off-by: yangfasheng <yangfasheng@live.com>
2023-06-20 23:09:58 +08:00
Bernard Xiong 99e80f8d33
[dfs] Add DFS v2.0 (#7606) 2023-06-10 21:35:25 +08:00
geniusgogo 0315c0dee7
add lstat&sysinfo....syscall. (#7555) 2023-05-23 22:43:38 +08:00
xiao-mang 065a3e1b3a
[component] add sys_mount and umount2 (#7516) 2023-05-17 16:30:05 +08:00
geniusgogo 0e4a3142a8
[component] add openat syscall. (#7488) 2023-05-15 20:40:27 +08:00
Shell b7554a70d2
[libcpu][component][debug] add debug info for gdb (#7033) 2023-05-14 23:48:16 +08:00
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
Meco Man ed09f38012 [libc] remove RT_USING_LIBC 2021-12-30 01:27:25 +08:00
Bernard Xiong 36d5154256
Merge pull request #5320 from mysterywolf/pse-master
[POSIX] move PSE branch to master
2021-12-05 13:16:39 +08:00
recan-li cf92ae747f fix: Fix compile warnings on qemu-vexpress-a9 platform (-Wimplicit-function-declaration) 2021-12-04 01:03:26 +08:00
Meco Man 7973ede5a8 增加RT_USING_POSIX_FS 2021-11-29 00:53:46 -05:00
Meco Man 74669b3f1d update vexpress-a9 2021-11-08 11:07:54 -05:00
Meco Man ee4b7916a3 [libc标准化]脱敏dfs_select.h 由标准sys/select.h代替 2021-09-22 16:45:21 -04:00
Meco Man c360688714 使用poll.h代替dfs_poll.h 2021-09-11 11:56:54 -04:00
Meco Man 3c05a4e719 [compoenets] auto & manual formatted 2021-03-08 18:19:04 +08:00
shaojinchun 1e7bd3d8a1 修改lwp支持中arm cortex-a的swi入口函数处理 2019-04-27 13:54:51 +08:00
armink fa4d4ab7cf Update all of debug log definition to DBG_TAG and DBG_LVL. 2019-04-12 10:18:57 +08:00
qz721 2eb1bef773 Make 'qemu-vexpress-a9' and 'imx6ul' use the same libcpu code. 2019-03-25 20:03:49 +08:00
shaojinchun b225764b84 fix lwp SConscript的头文件目录为空的问题;lwp把arm9改名成arm926 2019-03-14 17:28:44 +08:00
armink 0d7ba79219 Remove the DBG_COLOR and DBG_ENABLE definition. 2019-03-06 17:54:30 +08:00
Bernard Xiong 711c923614 [lwp] Fix compiling warning in lwP. 2019-01-13 14:25:52 +08:00
Bernard Xiong 9b9dc591f5 [lwp] Correct the change log. 2018-12-19 20:10:33 +08:00
shaojinchun 2b21d2316a 修改许可协议
修改cpu目录名及相关修改
2018-12-10 18:23:21 +08:00
shaojinchun a8953e9211 add lwp support 2018-12-10 16:44:48 +08:00
Bernard Xiong ab1a220eae [components] Remove lwP from v3.1.0 2018-09-01 12:03:32 +08:00
heyuanjie fd209cb880 [lwp]添加select系统调用 2018-08-12 20:26:16 +08:00
heyuanjie 43f718961e 添加网络syscall 2018-08-01 17:03:06 +08:00
heyuanjie 9cf65d0b28 添加网络系统调用 2018-08-01 15:44:33 +08:00
heyuanjie c79fbd373f [lwp]给thread添加lwp成员 2018-07-30 11:12:12 +08:00
armink 6cd8658dad [rtdbg] Change all DBG_SECTION_NAME to new format. 2018-07-11 10:23:19 +08:00
heyuanjie 8b8e448944 同步 2018-06-29 16:16:27 +08:00
heyuanjie 7d3af8e9ff 给lwp传递参数 2018-06-29 15:32:53 +08:00
heyuanjie a6e7b334e9 添加系统调用 2018-06-11 17:06:33 +08:00
heyuanjie e1be777adc 解除警告 2018-06-11 14:28:13 +08:00
heyuanjie 28b8e43181 去除lwp msh命令 2018-06-11 14:26:14 +08:00
Bernard Xiong bca65f30a9 [lwP] Add light weight process component. 2018-06-10 17:57:34 +08:00