History log of /DragonOS/kernel/ (Results 1 – 25 of 842)
Revision Date Author Comments
(<<< Hide modified files)
(Show modified files >>>)
539ee3ea25-Nov-2024 linfeng <chenlinfeng25@outlook.com>

fix(backtrace):Use more reasonable compile options (#1056)

* fix(backtrace):Use more reasonable compile options

* 调整代码,同时解决rust analyzer未能提示warning的问题
---------

Co-authored-by: longjin <longj

fix(backtrace):Use more reasonable compile options (#1056)

* fix(backtrace):Use more reasonable compile options

* 调整代码,同时解决rust analyzer未能提示warning的问题
---------

Co-authored-by: longjin <longjin@DragonOS.org>

show more ...

081428c019-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>

750b3b5d16-Nov-2024 linfeng <chenlinfeng25@outlook.com>

feat(debug)[WIP]: add static-keys support (#1025)

* feat: add static-keys support

ff76b0fc12-Nov-2024 MemoryShore <1353318529@qq.com>

修复tty处理信号时错误地将前台进程组置空的问题 & clone时未拷贝父进程tty的问题 (#1043)

* 修复clone时未拷贝父进程tty的问题

* 修复tty处理信号时错误地将前台进程组置空的问题

0f094e5012-Nov-2024 LoGin <longjin@DragonOS.org>

fix: 修复了do execve 加载程序失败时,没能正确返回错误码给用户态的问题 (#1042)

* fix: 修复了do execve 加载程序失败时,没能正确返回错误码给用户态的问题

7c28051e11-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 ...


/DragonOS/.github/workflows/makefile.yml
/DragonOS/build-scripts/Makefile
Makefile
crates/bitmap/src/alloc_bitmap.rs
crates/bitmap/src/static_bitmap.rs
crates/crc/src/lib.rs
crates/ida/src/lib.rs
crates/intertrait/macros/src/lib.rs
crates/intertrait/src/lib.rs
crates/klog_types/src/lib.rs
crates/rbpf/src/insn_builder.rs
crates/rbpf/tests/ubpf_vm.rs
crates/rust-slabmalloc/src/lib.rs
crates/rust-slabmalloc/src/pages.rs
crates/rust-slabmalloc/src/sc.rs
crates/system_error/Cargo.toml
crates/system_error/src/lib.rs
rust-toolchain.toml
src/Makefile
src/arch/riscv64/interrupt/entry.rs
src/arch/riscv64/process/kthread.rs
src/arch/riscv64/process/mod.rs
src/arch/x86_64/interrupt/entry.rs
src/arch/x86_64/mm/mod.rs
src/arch/x86_64/process/kthread.rs
src/arch/x86_64/process/mod.rs
src/arch/x86_64/smp/mod.rs
src/driver/base/block/block_device.rs
src/driver/base/block/gendisk.rs
src/driver/base/block/manager.rs
src/driver/base/char/mod.rs
src/driver/block/virtio_blk.rs
src/driver/disk/ahci/hba.rs
src/driver/disk/ahci/mod.rs
src/driver/firmware/efi/memmap.rs
src/driver/firmware/efi/tables.rs
src/driver/input/serio/serio_driver.rs
src/driver/net/dma.rs
src/driver/net/loopback.rs
src/driver/net/virtio_net.rs
src/driver/open_firmware/fdt.rs
src/driver/pci/pci.rs
src/driver/pci/root.rs
src/driver/scsi/mod.rs
src/driver/video/fbdev/base/fbmem.rs
src/driver/virtio/irq.rs
src/driver/virtio/virtio_impl.rs
src/exception/irqdata.rs
src/exception/irqdesc.rs
src/exception/irqdomain.rs
src/exception/manage.rs
src/exception/softirq.rs
src/filesystem/fat/bpb.rs
src/filesystem/fat/entry.rs
src/filesystem/fat/fs.rs
src/filesystem/mbr.rs
src/filesystem/overlayfs/mod.rs
src/filesystem/procfs/syscall.rs
src/filesystem/vfs/file.rs
src/init/boot.rs
src/init/cmdline.rs
src/ipc/signal_types.rs
src/lib.rs
src/libs/casting.rs
src/libs/cpumask.rs
src/libs/futex/futex.rs
src/libs/lib_ui/screen_manager.rs
src/libs/lib_ui/textui.rs
src/libs/rbtree.rs
src/libs/rwlock.rs
src/libs/volatile.rs
src/mm/memblock.rs
src/perf/bpf.rs
src/perf/util.rs
src/process/exit.rs
src/process/syscall.rs
src/syscall/misc.rs
src/syscall/user_access.rs
/DragonOS/tools/BUILD_CONTAINER_VERSION
/DragonOS/tools/Makefile
/DragonOS/tools/bootstrap.sh
/DragonOS/tools/debugging/logmonitor/src/app.rs
/DragonOS/user/apps/clear/Makefile
/DragonOS/user/apps/test-backlog/Makefile
/DragonOS/user/apps/test-blockcache/Makefile
/DragonOS/user/apps/test-for-robustfutex/Makefile
/DragonOS/user/apps/test-mount/Makefile
/DragonOS/user/apps/test_alarm/Makefile
/DragonOS/user/apps/test_ebpf/Makefile
/DragonOS/user/apps/test_ebpf/syscall_ebpf/syscall_ebpf-ebpf/rust-toolchain.toml
/DragonOS/user/apps/test_namespace/Makefile
/DragonOS/user/apps/test_namespace/makefile.toml
/DragonOS/user/apps/test_socket/Makefile
/DragonOS/user/apps/test_statx/Makefile
/DragonOS/user/apps/test_tokio/Makefile
/DragonOS/user/apps/user-manage/Makefile
/DragonOS/user/dadk/config/dog_0_1_0.dadk
/DragonOS/user/dadk/config/dragon_reach-0.1.0.dadk
6971543811-Nov-2024 曾俊 <110876916+ZZJJWarth@users.noreply.github.com>

feat(pci): 解决了pci总线子系统中pci结构一致性问题,增加了pci设备的可读属性 (#1009)

---------

Co-authored-by: 黄铭涛 <1037827920@qq.com>

20c5810111-Nov-2024 LoGin <longjin@DragonOS.org>

fix: do_signal函数在处理SIG_KILL时,有一处pcb强引用未归零的问题 (#1039)

Signed-off-by: longjin <longjin@DragonOS.org>

f5c732d810-Nov-2024 曾俊 <110876916+ZZJJWarth@users.noreply.github.com>

fix(video): 增加了对frame buffer操作的安全检查 (#1034)

fix(video): 增加了对frame buffer操作的安全检查

01b8a76c05-Nov-2024 火花 <sparkhhhhhhhhhh@outlook.com>

修复阻塞阅读eventfd时无法被中断的bug (#1030)

Co-authored-by: sparkzky <sparkhhhhhhhhh@outlook.com>

c7ad61d431-Oct-2024 LoGin <longjin@DragonOS.org>

fix: 删除在 #949 中意外添加的旧版ida (#1027)

https://github.com/DragonOS-Community/DragonOS/pull/949

Signed-off-by: longjin <longjin@DragonOS.org>

f5b2038830-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 ...

84c528f528-Oct-2024 黄铭涛 <114841534+1037827920@users.noreply.github.com>

fix(driver/virtio): 修改pci transport中断初始化的位置 (#1018)

* fix(driver/virtio): 修改pci transport中断初始化的位置

55e6f0b626-Oct-2024 火花 <sparkhhhhhhhhhh@outlook.com>

feat:添加chown系统调用 (#962)

* 添加chown系统调用

---------

Co-authored-by: sparkzky <sparkhhhhhhhhh@outlook.com>
Co-authored-by: longjin <longjin@DragonOS.org>

4dd4856f26-Oct-2024 LoGin <longjin@DragonOS.org>

fix(tty): 修复tty对tab进行处理时产生数组越界panic的问题 (#1015)

Signed-off-by: longjin <longjin@DragonOS.org>

a9e28e9c26-Oct-2024 LoGin <longjin@DragonOS.org>

fix: 临时修复键盘驱动与鼠标驱动冲突导致键盘无响应 (#1014)

暂时通过条件编译的方式解决. 目前认为是鼠标驱动问题,没有正确判断是不是自己的数据...
但是因为我们场景下,鼠标驱动几乎用不到,因此先条件编译屏蔽.

Signed-off-by: longjin <longjin@DragonOS.org>

dc60d68f26-Oct-2024 LoGin <longjin@DragonOS.org>

fix: tty刷新线程初始化之前,键盘产生数据导致崩溃的问题 (#1013)

Signed-off-by: longjin <longjin@DragonOS.org>

fae6e9ad25-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 ...


/DragonOS/.github/workflows/cache-toolchain.yml
/DragonOS/.github/workflows/makefile.yml
/DragonOS/docs/Makefile
/DragonOS/docs/community/code_contribution/index.rst
/DragonOS/docs/community/contact/index.rst
/DragonOS/docs/index.rst
/DragonOS/docs/kernel/trace/eBPF.md
/DragonOS/docs/kernel/trace/ebpf_flow.png
/DragonOS/docs/kernel/trace/index.rst
/DragonOS/docs/kernel/trace/kprobe.md
/DragonOS/docs/kernel/trace/kprobe_flow.png
Cargo.toml
Makefile
crates/kprobe/Cargo.toml
crates/kprobe/src/arch/loongarch64/mod.rs
crates/kprobe/src/arch/mod.rs
crates/kprobe/src/arch/rv64/mod.rs
crates/kprobe/src/arch/x86/mod.rs
crates/kprobe/src/lib.rs
crates/rbpf/.appveyor.yml
crates/rbpf/.gitignore
crates/rbpf/Cargo.toml
crates/rbpf/LICENSE-APACHE
crates/rbpf/LICENSE-MIT
crates/rbpf/README.md
crates/rbpf/clippy.toml
crates/rbpf/examples/disassemble.rs
crates/rbpf/examples/helper.rs
crates/rbpf/examples/load_elf.rs
crates/rbpf/examples/load_elf__block_a_port.c
crates/rbpf/examples/rbpf_plugin.rs
crates/rbpf/examples/to_json.rs
crates/rbpf/examples/uptime.rs
crates/rbpf/mk/appveyor.bat
crates/rbpf/rustfmt.toml
crates/rbpf/src/asm_parser.rs
crates/rbpf/src/assembler.rs
crates/rbpf/src/cranelift.rs
crates/rbpf/src/disassembler.rs
crates/rbpf/src/ebpf.rs
crates/rbpf/src/helpers.rs
crates/rbpf/src/insn_builder.rs
crates/rbpf/src/interpreter.rs
crates/rbpf/src/jit.rs
crates/rbpf/src/lib.rs
crates/rbpf/src/no_std_error.rs
crates/rbpf/src/stack.rs
crates/rbpf/src/verifier.rs
crates/rbpf/tests/assembler.rs
crates/rbpf/tests/common.rs
crates/rbpf/tests/cranelift.rs
crates/rbpf/tests/disassembler.rs
crates/rbpf/tests/misc.rs
crates/rbpf/tests/ubpf_jit_x86_64.rs
crates/rbpf/tests/ubpf_verifier.rs
crates/rbpf/tests/ubpf_vm.rs
src/arch/riscv64/interrupt/handle.rs
src/arch/riscv64/interrupt/mod.rs
src/arch/riscv64/kprobe.rs
src/arch/riscv64/mod.rs
src/arch/x86_64/interrupt/mod.rs
src/arch/x86_64/interrupt/trap.rs
src/arch/x86_64/kprobe.rs
src/arch/x86_64/mod.rs
src/bpf/helper/consts.rs
src/bpf/helper/mod.rs
src/bpf/helper/print.rs
src/bpf/map/array_map.rs
src/bpf/map/hash_map.rs
src/bpf/map/lru.rs
src/bpf/map/mod.rs
src/bpf/map/queue.rs
src/bpf/map/util.rs
src/bpf/mod.rs
src/bpf/prog/mod.rs
src/bpf/prog/util.rs
src/bpf/prog/verifier.rs
src/common/string.h
src/debug/kprobe/args.rs
src/debug/kprobe/mod.rs
src/debug/kprobe/test.rs
src/debug/mod.rs
src/debug/traceback/traceback.c
src/debug/traceback/traceback.h
src/driver/base/cpu.rs
src/driver/base/init.rs
src/exception/debug.rs
src/exception/ebreak.rs
src/exception/mod.rs
src/filesystem/vfs/file.rs
src/filesystem/vfs/mod.rs
src/include/bindings/linux_bpf.rs
src/include/bindings/mod.rs
src/init/init.rs
src/lib.rs
src/mm/fault.rs
src/mm/ucontext.rs
src/perf/bpf.rs
src/perf/kprobe.rs
src/perf/mod.rs
src/perf/util.rs
src/smp/cpu/mod.rs
src/syscall/mod.rs
src/time/syscall.rs
/DragonOS/tools/run-qemu.sh
/DragonOS/triagebot.toml
/DragonOS/user/apps/test_ebpf/.gitignore
/DragonOS/user/apps/test_ebpf/Cargo.toml
/DragonOS/user/apps/test_ebpf/Makefile
/DragonOS/user/apps/test_ebpf/src/main.rs
/DragonOS/user/apps/test_ebpf/syscall_ebpf/.cargo/config.toml
/DragonOS/user/apps/test_ebpf/syscall_ebpf/.gitignore
/DragonOS/user/apps/test_ebpf/syscall_ebpf/.vscode/settings.json
/DragonOS/user/apps/test_ebpf/syscall_ebpf/Cargo.toml
/DragonOS/user/apps/test_ebpf/syscall_ebpf/README.md
/DragonOS/user/apps/test_ebpf/syscall_ebpf/syscall_ebpf-common/Cargo.toml
/DragonOS/user/apps/test_ebpf/syscall_ebpf/syscall_ebpf-common/src/lib.rs
/DragonOS/user/apps/test_ebpf/syscall_ebpf/syscall_ebpf-ebpf/.cargo/config.toml
/DragonOS/user/apps/test_ebpf/syscall_ebpf/syscall_ebpf-ebpf/.helix/config.toml
/DragonOS/user/apps/test_ebpf/syscall_ebpf/syscall_ebpf-ebpf/.vim/coc-settings.json
/DragonOS/user/apps/test_ebpf/syscall_ebpf/syscall_ebpf-ebpf/.vscode/settings.json
/DragonOS/user/apps/test_ebpf/syscall_ebpf/syscall_ebpf-ebpf/Cargo.toml
/DragonOS/user/apps/test_ebpf/syscall_ebpf/syscall_ebpf-ebpf/rust-toolchain.toml
/DragonOS/user/apps/test_ebpf/syscall_ebpf/syscall_ebpf-ebpf/src/main.rs
/DragonOS/user/apps/test_ebpf/syscall_ebpf/xtask/Cargo.toml
/DragonOS/user/apps/test_ebpf/syscall_ebpf/xtask/src/build.rs
/DragonOS/user/apps/test_ebpf/syscall_ebpf/xtask/src/build_ebpf.rs
/DragonOS/user/apps/test_ebpf/syscall_ebpf/xtask/src/main.rs
/DragonOS/user/apps/test_ebpf/syscall_ebpf/xtask/src/run.rs
/DragonOS/user/apps/test_tokio/src/main.rs
/DragonOS/user/dadk/config/nova_shell-0.1.0.dadk
/DragonOS/user/dadk/config/test_ebpf_0_1_0.dadk
01c18c6420-Oct-2024 sparkzky <146502758+sparkzky@users.noreply.github.com>

feat:添加symlink系统调用 (#984)

* 添加symlink系统调用

* 修改FATInode的dname的获取逻辑

* 修改fat对Dname的处理,分离dname和inode缓存的key

---------

Co-authored-by: sparkzky <sparkhhhhhhhhh@outlook.com>
Co-authored-by: lo

feat:添加symlink系统调用 (#984)

* 添加symlink系统调用

* 修改FATInode的dname的获取逻辑

* 修改fat对Dname的处理,分离dname和inode缓存的key

---------

Co-authored-by: sparkzky <sparkhhhhhhhhh@outlook.com>
Co-authored-by: longjin <longjin@DragonOS.org>

show more ...

cae6182218-Oct-2024 LoGin <longjin@DragonOS.org>

fix: 临时修复线程退出时处理tty前台进程组产生panic的bug (#985)

dcd345f617-Oct-2024 LoGin <longjin@DragonOS.org>

feat: 添加SYS_MKDIRAT系统调用 (#986)

将内核原本实现的do_mkdir_at暴露出来,实现SYS_MKDIRAT

Signed-off-by: longjin <longjin@DragonOS.org>

f9fe30be13-Oct-2024 LoGin <longjin@DragonOS.org>

feat(boot): 内核启动命令行参数解析 (#969)

支持解析启动命令行参数,行为与Linux一致。具体见文档。

bbs链接:https://bbs.dragonos.org.cn/t/topic/362
issue: https://github.com/DragonOS-Community/DragonOS/issues/865

支持了三种参数:
- Arg (不带

feat(boot): 内核启动命令行参数解析 (#969)

支持解析启动命令行参数,行为与Linux一致。具体见文档。

bbs链接:https://bbs.dragonos.org.cn/t/topic/362
issue: https://github.com/DragonOS-Community/DragonOS/issues/865

支持了三种参数:
- Arg (不带Value的参数)
- KV (正常的KV参数)
- EarlyKV (在内存管理初始化之前解析)

# TODO

- 支持在`/proc/cmdline`下面查看内核启动时的命令行参数。
- 支持回调函数,允许更加灵活的设置参数的值(目前用不到,就没写了)

Signed-off-by: longjin <longjin@DragonOS.org>

show more ...

c709f79f12-Oct-2024 GnoCiYeH <heyicong@dragonos.org>

feat(tty): 将tty设备适配epoll,修改串口部分问题 (#968)

- tty文件适配epoll,使epoll能够监听tty
- 修改串口handle_irq,原有每次只读取一个字节会导致:输入left(esc+[+A)被错误解析为(esc)+([)+(A)三个字符
- 为串口加上vcdata用于控制输入输出的格式问题(未解决,这个pr捎带)

53629ac311-Oct-2024 Jomo <xuzihao@dragonos.org>

feat: 释放slab中的空闲页面到buddy (#932)

* patch: 释放slab中的空闲页面到buddy

* 校验释放的slab_page的起始地址与大小 & SCAllcator增加空闲块计数器

415e46ea09-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>

12345678910>>...34