Modified dune syscalls and extensions structures
[akaros.git] / user / vmm / include / vmm / linuxemu.h
1 #pragma once
2
3 typedef bool (*dune_syscall_t)(struct vm_trapframe *);
4
5 struct dune_sys_table_entry {
6         dune_syscall_t call;
7         const char *name;
8 };
9
10 #define DUNE_MAX_NUM_SYSCALLS 1024
11
12 extern struct dune_sys_table_entry dune_syscall_table[];
13
14 bool init_syscall_table(void);
15 void init_lemu_logging(int logging_level);
16 void destroy_lemu_logging(void);
17 void lemuprint(const uint32_t tid, uint64_t syscall_number,
18                const bool isError, const char *fmt, ...);
19
20 bool dune_sys_write(struct vm_trapframe *tf);
21 bool dune_sys_read(struct vm_trapframe *tf);