linfeng
7c28051e8c
chore: update toolchain version to 2024-11-05 ( #1031 )
...
* chore: update toolchain version to 2024-11-05
* update dragon reach to e945c217b3
* update dog to 6f2c0c8f12
---------
Co-authored-by: longjin <longjin@DragonOS.org>
2024-11-11 21:29:15 +08:00
LoGin
7b0ef10895
ci: change rust src to crates-io-index while using GitHub workflow ( #1023 )
...
Signed-off-by: longjin <longjin@DragonOS.org>
2024-10-31 01:05:34 +08:00
linfeng
fae6e9ade4
feat(ebpf):[WIP] add eBPF support ( #948 )
...
* feat(kprobe): Add basic kprobe support for x86_64
* feat: add ebpf support (#912 )
- 实现bpf()一部分命令,包括几种基本map,相关的helper函数
- 实现部分perf相关的数据结构
- 暂时为文件实现简单mmap
- 实现一个使用kprobe统计syscall 调用次数的ebpf程序
对eBPF支持程度(基本):
- 简单的eBPF程序(没有指定特殊的Map)
- 使用内核已经实现的Map的eBPF程序
- 可以和kprobe配合使用
- 内核Map相关的接口定义已经实现,添加新的Map较为简单
不支持的功能:
- 区分不同的eBPF程序类型(Network/Cgroup)并限定可调用的helper函数集
- 与内核其它跟踪机制配合(tracepoint)
- 其它helper和Map
todo
- [ ] 修改mmap,需要讨论,因为这个和块缓存层相关
- [x] 添加文档
- [x] 修复可能的错误
- [x] 增加rbpf版本信息
* feat: add /sys/devices/system/cpu/possible file
* feat: add /sys/devices/system/cpu/online
2024-10-25 15:59:57 +08:00
LoGin
40db1e61da
ci: add-bpf-linker-to-ci-image ( #972 )
...
Signed-off-by: longjin <longjin@DragonOS.org>
2024-10-12 01:20:43 +08:00
LoGin
415e46ea47
build: Remove DragonOS_GCC And make CI use docker image ( #954 )
...
* build: 不再需要x86_64-elf-gcc的支持
* ci: 添加ci用的docker镜像
* 切换workflow到构建用的容器上
---------
Signed-off-by: longjin <longjin@DragonOS.org>
2024-10-10 00:59:50 +08:00
Chiichen
fe7d4d588c
ci: enable ci workflow on branches other than master ( #891 )
2024-08-14 23:28:37 +08:00
裕依
bc6f0a967c
移除relibc和old libc以及旧的shell ( #529 )
...
移除relibc和old libc以及旧的shell
2024-03-04 14:20:01 +08:00
Jomo
8d72b68da9
实现内核日志系统 ( #489 )
...
* 实现写日志和读取日志,并且能够在用户态下执行dmesg命令查看日志
* 通过klogctl实现dmesg
* 改用ConstGenericRingBuffer作内核缓冲区
* 更改缓冲区容量
* 将能够输出到控制台的日志级别改为日志级别枚举类,使用SpinLock控制KMSG,使用枚举类定义SYSLOG_ACTION,将do_syslog系统调用接口放在syscall.rs
* fix warning
* 完善do_syslog注释
* 将KMSG接入kinfo、kdebug等
* fix warning
* 修复显示的秒数不正确,·以及无法通过CI的问题
2024-01-24 16:13:15 +08:00
LoGin
43ef2a0d2b
添加riscv64的github workflow ( #499 )
...
* 添加riscv64的github workflow
2024-01-21 18:45:07 +08:00
LoGin
91e9d4ab55
实现unified-init库,支持收集初始化函数到一个数组,并统一初始化 ( #474 )
...
* 添加“统一初始化”的过程宏,并把SystemError独立成crate
* 使用unified-init来初始化fbmem
* 更新workflow,增加内核自动化静态测试
2023-12-25 23:12:27 +08:00
LoGin
9a367aa7eb
添加github workflow,检查代码是否已经格式化 ( #342 )
...
* 添加github workflow,检查代码是否已经格式化
2023-08-24 18:50:52 +08:00
login
ab5c8ca46d
重构系统调用模块 ( #267 )
...
* 完成系统调用模块重构
* 更新github workflow
2023-05-24 17:05:33 +08:00
login
7285c927d9
添加dadk支持 ( #263 )
...
* 引入dadk,使用dadk0.1.1来编译test-relibc程序
* 由于gitee仓库体积限制导致无法继续使用gitee上的rust索引,因此更换为清华源
* github workflow的环境中,安装dadk
* Auto configure dragonos rust toolchain
2023-05-11 16:17:58 +08:00
login
b11bb1b256
固定编译工具链、修复由于新版rust编译器问题导致的报错。 ( #258 )
...
* 固定编译工具链、修复由于新版rust编译器问题导致的报错。
* 完善github workflow环境配置
2023-05-07 22:20:33 +08:00
login
82762007da
Update makefile.yml
2022-12-23 18:11:47 +08:00
login
b975025ec8
Update makefile.yml
2022-12-23 11:45:19 +08:00
login
ad2bb74d94
Update makefile.yml
2022-12-23 11:21:22 +08:00
login
beb12a188b
Update makefile.yml
2022-12-23 10:57:39 +08:00
login
d65c527730
Update makefile.yml ( #121 )
2022-12-22 22:58:28 +08:00
login
2813126e31
新增rust ffi ( #77 )
...
* 引入cargo
* 取消对Cargo.lock的跟踪
* 解决vscode报错问题
* new: rust的代码能够调用c语言的printk_color
* 1、将原本run.sh的工作拆解,变为几个不同的make命令
2、在docker镜像中编译rust
* 更改workflow
* update workflow
* new: 解决workflow无法通过编译的问题
2022-11-11 15:35:37 +08:00
login
5e023cf791
Update makefile.yml
2022-11-11 15:21:45 +08:00
login
e44795008f
Update makefile.yml ( #80 )
2022-11-11 15:18:13 +08:00
login
ec5fb84b61
Update makefile.yml
2022-11-11 15:08:09 +08:00
login
6d9dff5f1f
Revert "Update makefile.yml ( #78 )" ( #79 )
...
This reverts commit badc7d238f2341e844a90be3e357e5dd77a447fc.
2022-11-11 15:07:48 +08:00
login
badc7d238f
Update makefile.yml ( #78 )
2022-11-11 15:05:52 +08:00
login
2057c77f5a
Create makefile.yml
2022-07-25 18:26:08 +08:00