summaryrefslogtreecommitdiff
path: root/src/shared/include
diff options
context:
space:
mode:
authordzwdz2023-01-19 23:36:11 +0100
committerdzwdz2023-01-19 23:36:11 +0100
commita2f9ae9d4ab678fa66a2ec5d1072ea22a36a18a1 (patch)
treec048e9165b27d27075d2c17ab943ac52b46a6a40 /src/shared/include
parentda546a0822b1995efe1832c9cc57aab62ccdcf65 (diff)
kernel: user interrupts
Diffstat (limited to 'src/shared/include')
-rw-r--r--src/shared/include/camellia/syscalls.h4
-rw-r--r--src/shared/include/camellia/types.h5
2 files changed, 9 insertions, 0 deletions
diff --git a/src/shared/include/camellia/syscalls.h b/src/shared/include/camellia/syscalls.h
index 690e928..1de5368 100644
--- a/src/shared/include/camellia/syscalls.h
+++ b/src/shared/include/camellia/syscalls.h
@@ -17,6 +17,8 @@
#define _SYSCALL_PIPE 14
#define _SYSCALL_SLEEP 15
#define _SYSCALL_FILICIDE 16
+#define _SYSCALL_INTR 17
+#define _SYSCALL_INTR_SET 18
#define _SYSCALL_EXECBUF 100
#define _SYSCALL_DEBUG_KLOG 101
@@ -74,6 +76,8 @@ long _syscall_pipe(handle_t __user user_ends[2], int flags);
void _syscall_sleep(long ms);
void _syscall_filicide(void);
+void _syscall_intr(void);
+void _syscall_intr_set(void __user *ip);
/* see shared/execbuf.h */
long _syscall_execbuf(void __user *buf, size_t len);
diff --git a/src/shared/include/camellia/types.h b/src/shared/include/camellia/types.h
index be34783..bd17e51 100644
--- a/src/shared/include/camellia/types.h
+++ b/src/shared/include/camellia/types.h
@@ -30,3 +30,8 @@ struct ufs_request {
long offset;
int flags;
};
+
+struct intr_data {
+ void __user *ip;
+ void __user *sp; /* last for pop %rsp */
+};