081428c0 | 19-Nov-2024 |
linfeng <chenlinfeng25@outlook.com> |
feat: update to new backtrace lib (#1049)
* feat: update to new backtrace lib
* feat: enable unwind for riscv64
---------
Co-authored-by: longjin <longjin@DragonOS.org> |
0f094e50 | 12-Nov-2024 |
LoGin <longjin@DragonOS.org> |
fix: 修复了do execve 加载程序失败时,没能正确返回错误码给用户态的问题 (#1042)
* fix: 修复了do execve 加载程序失败时,没能正确返回错误码给用户态的问题 |
7c28051e | 11-Nov-2024 |
linfeng <chenlinfeng25@outlook.com> |
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
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>
show more ...
|
20c58101 | 11-Nov-2024 |
LoGin <longjin@DragonOS.org> |
fix: do_signal函数在处理SIG_KILL时,有一处pcb强引用未归零的问题 (#1039)
Signed-off-by: longjin <longjin@DragonOS.org> |
f5b20388 | 30-Oct-2024 |
codeironman <1553389239@qq.com> |
ospp project (feature) add namespace overlayfs cgroup (#949)
## 开发进展:
## namespace
- pid_namespace 基本实现,基于pid_struct等数据结构实现隔离
- mnt_namespace 基本实现,挂载点的隔离通过不同的挂载树来实现
- usernamespace 作为支持性的namesp
ospp project (feature) add namespace overlayfs cgroup (#949)
## 开发进展:
## namespace
- pid_namespace 基本实现,基于pid_struct等数据结构实现隔离
- mnt_namespace 基本实现,挂载点的隔离通过不同的挂载树来实现
- usernamespace 作为支持性的namespace,目前受限实现全局静态
## overlayfs
- 实现若干个文件系统的叠加,在mount中传入多个路径作为多个fs的mount路径以及最后merge层的fs路径
- copy-up机制的,除最上层外其他层为只读层,满足写时拷贝,需要修改的时候copy到上层修改
- whiteout特殊文件,用于标记在下层需要被删除的文件用来掩盖需要删除的文件
## cgroups
- 目前cgroups还处于框架阶段,之后具体实现具体的内存、CPU等子系统
show more ...
|
a9e28e9c | 26-Oct-2024 |
LoGin <longjin@DragonOS.org> |
fix: 临时修复键盘驱动与鼠标驱动冲突导致键盘无响应 (#1014)
暂时通过条件编译的方式解决. 目前认为是鼠标驱动问题,没有正确判断是不是自己的数据...
但是因为我们场景下,鼠标驱动几乎用不到,因此先条件编译屏蔽.
Signed-off-by: longjin <longjin@DragonOS.org> |
fae6e9ad | 25-Oct-2024 |
linfeng <chenlinfeng25@outlook.com> |
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相关的数据结构
- 暂时为文件实现简
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
show more ...
|
415e46ea | 09-Oct-2024 |
LoGin <longjin@DragonOS.org> |
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> |
59a6bcf6 | 09-Oct-2024 |
LoGin <longjin@DragonOS.org> |
feat: Add HVM boot support for x86_64 (#953)
Signed-off-by: longjin <longjin@DragonOS.org> |
d031d46f | 01-Oct-2024 |
LoGin <longjin@DragonOS.org> |
feat: 添加serial console,支持non-graphic启动 (#947)
Signed-off-by: longjin <longjin@dragonos.org> |
28fe4ad2 | 11-Sep-2024 |
黄铭涛 <114841534+1037827920@users.noreply.github.com> |
feat(driver/net): 将网络设备注册到sysfs, 添加设备类属性文件 (#919) |
db7c782a | 06-Sep-2024 |
LoGin <longjin@DragonOS.org> |
feat: 允许通过multiboot引导(直到acpi初始化报错) (#914) |
2b7818e8 | 05-Sep-2024 |
LoGin <longjin@DragonOS.org> |
feat: 添加对内核引导协议的抽象 (#913)
* 添加multiboot header
* head.S传参增加bootloader类型
* feat: 添加引导加载协议的抽象,并为multiboot2实现这个抽象.
* 把framebuffer的映射地址改为从early ioremap和mmio pool分配
* riscv64能运行 |
cf7f801e | 04-Sep-2024 |
MemoryShore <1353318529@qq.com> |
feat(mm): 简单实现fat文件系统的文件映射 (#840)
- 添加文件映射相关接口,目前已简单实现fat文件系统的私有映射和共享映射
- 添加msync系统调用(由于当前未实现脏页自动回写,需要手动调用msync进行同步)
- 简单实现PageCache(暂时使用HashMap进行文件页号与页的映射)
- 添加新的PageFlags标志结构,原PageFlags改名为Entry
feat(mm): 简单实现fat文件系统的文件映射 (#840)
- 添加文件映射相关接口,目前已简单实现fat文件系统的私有映射和共享映射
- 添加msync系统调用(由于当前未实现脏页自动回写,需要手动调用msync进行同步)
- 简单实现PageCache(暂时使用HashMap进行文件页号与页的映射)
- 添加新的PageFlags标志结构,原PageFlags改名为EntryFlags
- 参考linux使用protection_map映射表进行页面标志的获取
- 添加页面回收机制
- 添加页面回收内核线程
- 缺页中断使用的锁修改为irq_save; 添加脏页回写机制
- 修复do_cow_page死锁问题
- 访问非法地址时发送信号终止进程
- 修复重复插入反向vma表的错误
- 添加test_filemap文件映射测试程序
show more ...
|
dc9b4fea | 27-Aug-2024 |
LoGin <longjin@DragonOS.org> |
fix: pipe 读取/写入阻塞时,无法kill进程的问题 (#889) |
703ce5a7 | 27-Jul-2024 |
LoGin <longjin@DragonOS.org> |
fix: 修复由于升级到2024-07-23工具链之后,某些机器上面内核运行一直fault的问题。 (#870)
* fix: 修复由于升级到2024-07-23工具链之后,某些机器上面内核运行一直fault的问题。 |
816ee5ae | 25-Jul-2024 |
LoGin <longjin@DragonOS.org> |
refactor: 删除过时的va-pa转换函数,改为统一使用MMArch (#862) |
bd70d2d1 | 24-Jul-2024 |
LoGin <longjin@DragonOS.org> |
chore: 将工具链更新到2024-07-23 (#864)
* chore: 将工具链更新到2024-07-23 |
af097f9f | 16-Jul-2024 |
黄铭涛 <114841534+1037827920@users.noreply.github.com> |
fix(time): modify update wall time (#836)
更改了时间子系统的update_wall_time函数,通过读取当前周期数,计算delta值进行更新,而不是通过传入delta值进行更新 |
6f189d27 | 27-Jun-2024 |
linfeng <chenlinfeng25@outlook.com> |
feat(time): Add syscall support for utime* (#838)
* feat(vfs): Add syscall support for utime*
impl sys_utimensat
impl sys_utimes
add utimensat test
fix some warning
* fix(vfs): Verify point
feat(time): Add syscall support for utime* (#838)
* feat(vfs): Add syscall support for utime*
impl sys_utimensat
impl sys_utimes
add utimensat test
fix some warning
* fix(vfs): Verify pointer validity
* fix: remove bad cfg
show more ...
|
de199e3c | 28-May-2024 |
MemoryShore <105195940+MemoryShore@users.noreply.github.com> |
feat(mm): 修复mmap未延迟分配内存的问题 (#837)
* 20240524 3:40
* 20240527 0010
* 修复mmap未延迟分配内存的问题
* Revert "Merge branch 'patch-add-file-mapping' into patch-fix-mmap"
This reverts commit 8eb687c60b43
feat(mm): 修复mmap未延迟分配内存的问题 (#837)
* 20240524 3:40
* 20240527 0010
* 修复mmap未延迟分配内存的问题
* Revert "Merge branch 'patch-add-file-mapping' into patch-fix-mmap"
This reverts commit 8eb687c60b43831d7e9614bca0af41e8f2175ae8, reversing
changes made to 33e9f0b34f9dc35a47757137a29605e51052a26e.
show more ...
|
bde08cde | 16-May-2024 |
Mingtao Huang <114841534+1037827920@users.noreply.github.com> |
feat(driver/pci): 完善pci root结构体,增加portio的pci配置空间访问 (#818)
* feat(driver/pci): 完善pci root结构体,增加portio的pci配置空间访问 |
2eab6dd7 | 16-May-2024 |
曾俊 <110876916+ZZJJWarth@users.noreply.github.com> |
feat(log): 将内核日志统一为新的logger (#814) |
236e88d5 | 13-May-2024 |
LoGin <longjin@DragonOS.org> |
fix(driver/apic_timer): 修复local apic timer初始化顺序导致的在某些云服务器上无法收到中断的bug (#815) |
0102d69f | 01-May-2024 |
LoGin <longjin@DragonOS.org> |
feat:(riscv/intr) 实现riscv plic驱动,能处理外部中断 (#799)
* feat:(riscv/intr) 实现riscv plic驱动,能处理外部中断
- 实现riscv plic驱动,能处理外部中断
- 能收到virtio-blk的中断
- 实现fasteoi interrupt handler |