00001 #ifndef npool_data_h 00002 #define npool_data_h 00003 00004 #define IOC_C_INVALID_ADDRESS -8388608 00005 #define IOC_C_MAXLISTPKT 8192 00006 #define IOC_C_NPAGGRNMSK 63 00007 #define IOC_C_NPAGGRNBITS 6 00008 #define IOC_C_NUMLISTS 128 00009 00010 #define LSTHDS_K_LENGTH 2136 00011 #define LSTHDS_C_LENGTH 2136 00012 00013 #define POOL_MAP_K_LENGTH 32 00014 #define NPOOL_M_NOT_NPP 0x1 00015 #define NPOOL_M_POOL_SEPARATE 0x2 00016 #define NPOOL_M_POOL_WITHIN_NPP 0x4 00017 #define NPOOL_M_MINIMUM_MODE 0x8 00018 00019 #define NPOOL_K_LENGTH 180 00020 #define NPOOL_C_LENGTH 180 00021 00022 struct _lsthds { 00023 unsigned int lsthds_l_filler0; 00024 unsigned int lsthds_l_varallocbytes; 00025 unsigned int lsthds_l_variablelist_unused; 00026 void *lsthds_ps_variablelist; 00027 unsigned int lsthds_l_variablelist_high; 00028 unsigned int lsthds_l_expansions; 00029 unsigned int lsthds_l_filler2; 00030 unsigned int *lsthds_ar_listattempts; 00031 unsigned int *lsthds_ar_listfails; 00032 unsigned int *lsthds_ar_listdeallocs; 00033 unsigned int lsthds_l_rad; 00034 unsigned int lsthds_l_pooltype; 00035 struct _npool_data *lsthds_ps_npool_data; 00036 char lsthds_b_filler3 [4]; 00037 #ifdef __i386__ 00038 unsigned long long lsthds_q_listheads [129]; 00039 #else 00040 unsigned long long lsthds_q_listheads [129][2]; 00041 #endif 00042 unsigned long long lsthds_q_filler4; 00043 unsigned long long lsthds_q_filler5; 00044 unsigned long long lsthds_q_listcounters [129]; 00045 }; 00046 00047 struct _pool_map { 00048 void *pool_map_pq_segment_address; 00049 unsigned long long pool_map_q_segment_length; 00050 void *pool_map_pq_segment_end_address; 00051 unsigned int pool_map_l_rad; 00052 int pool_map_l_filler1; 00053 }; 00054 00055 struct _npool_data { 00056 unsigned int npool_l_on_rad_dealloc; 00057 unsigned int npool_l_total_dealloc; 00058 unsigned long long npool_q_per_pool_diag; 00059 void *npool_ps_ringbuf; 00060 void *npool_ps_nextnph; 00061 unsigned int npool_l_ringbufcnt; 00062 char filler6 [100]; 00063 struct _lsthds (*(*npool_ar_lsthds)); 00064 unsigned int npool_l_max_lsthds; 00065 unsigned int npool_l_gran_mask; 00066 unsigned int npool_l_num_lookaside; 00067 void *npool_ps_variable_list; 00068 struct _pool_map *npool_ps_pool_map; 00069 unsigned int npool_l_pool_map_size; 00070 unsigned int npool_l_pool_map_segments; 00071 union { 00072 struct { 00073 union { 00074 struct _npool_data *npool_ar_pool_data [2]; 00075 struct { 00076 void *npool_ar_npp_pool_data; 00077 void *npool_ar_bap_pool_data; 00078 }; 00079 }; 00080 }; 00081 struct { 00082 union { 00083 unsigned int npool_l_pool_flags; 00084 struct { 00085 unsigned npool_v_not_npp : 1; 00086 unsigned npool_v_pool_separate : 1; 00087 unsigned npool_v_pool_within_npp : 1; 00088 unsigned npool_v_minimum_mode : 1; 00089 unsigned npool_v_fill_0_ : 4; 00090 }; 00091 }; 00092 unsigned int npool_l_filler3; 00093 unsigned long long npool_q_filler4; 00094 }; 00095 }; 00096 }; 00097 00098 #endif 00099 00100