00001 /* 00002 ** syscallargs.h for lseos in lseos-core/kernel/core 00003 ** 00004 ** Copyright(c)2004 IONIS group, Vianney Rancurel - Paris 00005 ** Login <vianney@epita.fr> 00006 ** 00007 ** Started on Mon Nov 29 12:27:32 2004 Vianney Rancurel 00008 ** Last update Mon Dec 6 11:19:59 2004 Vianney Rancurel 00009 */ 00013 typedef struct 00014 { 00015 resid_t from_resid; 00016 char *from_buf; 00017 resid_t to_resid; 00018 char *to_buf; 00019 int len; 00020 } t_sys_core_copy_args; 00021 00022 typedef struct 00023 { 00024 asid_t asid; 00025 vaddr_t vaddr; 00026 int nb_pgs; 00027 paddr_t paddr; 00028 u_int32_t flags; 00029 } t_sys_core_vmap_args; 00030 00031 typedef struct 00032 { 00033 asid_t asid; 00034 vaddr_t vaddr; 00035 int nb_pgs; 00036 paddr_t paddr; 00037 u_int32_t flags; 00038 } t_sys_core_wire_args; 00039 00040 typedef struct 00041 { 00042 asid_t asid; 00043 vaddr_t vaddr; 00044 int nb_pgs; 00045 paddr_t *paddr_ret; 00046 u_int32_t *flags_ret; 00047 u_int32_t *paddr_mode_ret; 00048 u_int32_t *paddr_modeopt_ret; 00049 } t_sys_core_vdef_args; 00050 00051 typedef struct 00052 { 00053 paddr_t paddr; 00054 int nb_pgs; 00055 asid_t *asid_ret; 00056 u_int32_t *pmode_ret; 00057 u_int32_t *pmodeopt_ret; 00058 int *refcnt_ret; 00059 } t_sys_core_pdef_args; 00060 00061 typedef struct 00062 { 00063 asid_t asid; 00064 vaddr_t vaddr; 00065 int nb_pgs; 00066 int *agg_nb_pgs_ret; 00067 vaddr_t *agg_vaddr_ret; 00068 paddr_t *agg_paddr_ret; 00069 } t_sys_core_aggdef_args; 00070 00071 typedef struct 00072 { 00073 asid_t asid; 00074 asid_t newasid; 00075 paddr_t paddr; 00076 int nb_pgs; 00077 } t_sys_core_pgive_args; 00078 00079 typedef struct s_sys_core_memdef_args 00080 { 00081 asid_t asid; 00082 u_int32_t opts; 00083 struct s_memdef *memdefp; 00084 int *nb_memdefsp; 00085 int *againp; 00086 } t_sys_core_memdef_args; 00087 00088 typedef struct s_sys_core_procdef_args 00089 { 00090 int start; 00091 struct s_procdef *procdefp; 00092 int *nb_procdefsp; 00093 int *againp; 00094 } t_sys_core_procdef_args; 00095 00096 typedef struct s_sys_core_wait4_args 00097 { 00098 pid_t wpid; 00099 int status; 00100 int options; 00101 struct rusage rusage; 00102 pid_t pid_ret; 00103 } t_sys_core_wait4_args; 00104