feat(syscall): 实现syscall restart (#1075)

能够在系统调用返回ERESTARTSYS时,信号处理结束后,自动重启系统调用.

TODO: 实现wait等需要restart_block的系统调用的重启

Signed-off-by: longjin <longjin@DragonOS.org>
This commit is contained in:
LoGin
2024-12-13 00:56:20 +08:00
committed by GitHub
parent 72423f90bb
commit 2b72148cae
27 changed files with 657 additions and 180 deletions

View File

@ -0,0 +1,20 @@
ifeq ($(ARCH), x86_64)
CROSS_COMPILE=x86_64-linux-musl-
else ifeq ($(ARCH), riscv64)
CROSS_COMPILE=riscv64-linux-musl-
endif
CC=$(CROSS_COMPILE)gcc
.PHONY: all
all: main.c
$(CC) -static -o test_signal_restart main.c
.PHONY: install clean
install: all
mv test_signal_restart $(DADK_CURRENT_BUILD_DIR)/test_signal_restart
clean:
rm test_signal_restart *.o
fmt: