suberrno.h

Go to the documentation of this file.
00001 /*
00002 ** suberrno.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:53 2004 Vianney Rancurel
00008 ** Last update Mon Dec  6 11:20:14 2004 Vianney Rancurel
00009 */
00010 /*
00011  * suberrno (advice) codes
00012  */
00013 
00014 typedef enum
00015   {
00016     WIRE_VA_NOT_IN_KERNEL = 100,
00017     WIRE_VA_NOT_IN_AS,
00018     WIRE_PA_NOT_RESERVED,
00019     WIRE_PA_NOT_USED,
00020     WIRE_PA_NOT_A_SYSTEM_PG,
00021     WIRE_VA_ALREADY_WIRED,
00022     WIRE_PA_ALREADY_WIRED,
00023     WIRE_VA_NOT_MAPPED,
00024     WIRE_NO_MATCH,
00025   } t_wire_suberrno_codes;
00026 
00027 typedef enum
00028   {
00029     PRSV_SYSTEM_PGS_MUST_BE_AGG = 100,
00030   } t_prsv_suberrno_codes;
00031 
00032 typedef enum
00033   {
00034     LIDT_TOO_MANY_SELECTORS = 100,
00035     LIDT_IDXSEL_TOO_HIGH,
00036     LIDT_NOT_A_TASKGATE,
00037     LIDT_NOT_A_SERVICE,
00038     LIDT_BAD_CPU,
00039   } t_lidt_suberrno_codes;
00040 
00041 typedef enum
00042   {
00043     WAIT4_NO_HANG = 100,                /* hanging is forbidden         */
00044   } t_wait4_suberrno_codes;
00045 
00046 typedef enum
00047   {
00048     COLLECT_NO_HANG = 100,              /* hanging is forbidden         */
00049     COLLECT_NOT_MGR,
00050   } t_collect_suberrno_codes;
00051 
00052 typedef enum
00053   {
00054     KILL_NOT_A_PROCESS = 100,
00055     KILL_NEGATIVE_SIG,
00056     KILL_BIG_SIG,
00057     KILL_NOT_KILLABLE,
00058     KILL_NOT_SAME_PGID,
00059   } t_kill_suberrno_codes;
00060 
00061 typedef enum
00062   {
00063     PSHARE_BAD_TYPE = 100,
00064     PSHARE_TYPE_DISABLED,
00065     PSHARE_NOT_AGGREGATE,
00066     PSHARE_AGG_DOESNT_MATCH,
00067     PSHARE_ALREADY_SHARED,
00068     PSHARE_CANT_SHARE_SYSTEM_PAGE,
00069     PSHARE_HOLDER_ON_IT,
00070   } t_share_suberrno_codes;
00071 
00072 typedef enum
00073   {
00074     LGDT_TCB_NOT_IN_KERNEL = 100,
00075     LGDT_TCB_NOT_MAPPED,
00076     LGDT_TCB_BAD_LIMIT,
00077   } t_lgdt_suberrno_codes;
00078 
00079 typedef enum
00080   {
00081     PRELE_HOLDER_ON_IT = 100,
00082     PRELE_NOT_HOLDER,
00083   } t_prele_suberrno_codes;
00084 
00085 typedef enum
00086   {
00087     VRELE_UNMAP_BEFORE = 100,
00088   } t_vrele_suberrno_codes;
00089 
00090 typedef enum
00091   {
00092     KRELE_NOT_HOLDER = 100,
00093   } t_krele_suberrno_codes;
00094 
00095 typedef enum
00096   {
00097     VMAP_HOLDER_ON_IT = 100,
00098     VMAP_UNMAP_BEFORE,
00099     VMAP_CANT_MAP_SYSPG,
00100     VMAP_NOT_HOLDER,
00101   } t_vmap_suberrno_codes;
00102 
00103 typedef enum
00104   {
00105     VUNMAP_NOT_MAPPED = 100,
00106   } t_vunmap_suberrno_codes;
00107 
00108 typedef enum
00109   {
00110     PAGGREGATE_HOLDER_ON_IT = 100,
00111   } t_aggregate_suberrno_codes;
00112 
00113 typedef enum
00114   {
00115     PGIVE_HOLDER_ON_IT = 100,
00116   } t_chholder_suberrno_codes;
00117 
00118 typedef enum
00119   {
00120     ASREG_AS_NOT_IN_KERNEL = 100,
00121     ASREG_NOT_CORRECTLY_MAPPED,
00122     ASREG_NOT_A_SYSTEM_PAGE,
00123     ASREG_KAS_ALREADY_USED,
00124     ASREG_PAS_ALREADY_USED,
00125   } t_asreg_suberrno_codes;
00126 
00127 typedef enum
00128   {
00129     TCBREG_NOT_CORRECTLY_MAPPED = 100,
00130     TCBREG_KA_ALREADY_USED,
00131     TCBREG_PA_ALREADY_USED,
00132     TCBREG_BAD_CPU,
00133     TCBREG_BAD_RING,
00134     TCBREG_NOT_HOLDER,
00135     TCBREG_NOT_SYSPG,
00136     TCBREG_CANT_SPECIFY_FIXEDSEL,
00137     TCBREG_NO_FREE_GDT_ENTRY,
00138   } t_tcbreg_suberrno_codes;
00139 
00140 typedef enum
00141   {
00142     COPY_FROM_FAILED = 100,
00143     COPY_TO_FAILED,
00144     COPY_GET_FROM_TCB,
00145     COPY_GET_TO_TCB,
00146     COPY_ARGS_FAILED
00147   } t_copy_suberrno_codes;
00148 
00149 typedef enum
00150   {
00151     SIGACTION2_SIG_TOO_BIG = 100,
00152     SIGACTION2_NOT_SIGNALABLE
00153   } t_sigaction2_suberrno_codes;
00154 
00155 typedef enum
00156   {
00157     SIGRETURN_NOT_SIGNALABLE = 100,
00158     SIGRETURN_NOT_IN_SIGCTX,
00159   } t_sigreturn_suberrno_codes;
00160 
00161 typedef enum
00162   {
00163     SIGSUSPEND_NOT_SIGNALABLE = 100
00164   } t_sigsuspend_suberrno_codes;
00165 
00166 typedef enum
00167   {
00168     SIGPROCMASK_NOT_SIGNALABLE = 100
00169   } t_sigprocmask_suberrno_codes;
00170 
00171 typedef enum
00172   {
00173     ASUNREG_STILL_USED = 100,
00174     ASUNREG_IN_RUNQ
00175   } t_asunreg_suberrno_codes;
00176 
00177 typedef enum
00178   {
00179     LCLASS_INVALID_SIZEPG = 100,
00180     LCLASS_ALREADY_DEFINED,
00181     LCLASS_UNKNOWN_CLASS,
00182   } t_lclass_suberrno_codes;
00183 
00184 typedef enum
00185   {
00186     LTSS_INVALID_CS = 100,
00187     
00188   } t_ltss_suberrno_codes;

Generated on Wed May 24 23:04:16 2006 for LSE/OS by  doxygen 1.4.6