comparison src/core/ngx_palloc.c @ 2129:25add486e7aa

directio
author Igor Sysoev <igor@sysoev.ru>
date Wed, 30 Jul 2008 12:34:04 +0000
parents 24eebb21b5d2
children 857c161d2768
comparison
equal deleted inserted replaced
2128:345a014436d4 2129:25add486e7aa
193 ngx_palloc_large(ngx_pool_t *pool, size_t size) 193 ngx_palloc_large(ngx_pool_t *pool, size_t size)
194 { 194 {
195 void *p; 195 void *p;
196 ngx_pool_large_t *large; 196 ngx_pool_large_t *large;
197 197
198 #if 0
199 p = ngx_memalign(ngx_pagesize, size, pool->log);
200 if (p == NULL) {
201 return NULL;
202 }
203 #else
204 p = ngx_alloc(size, pool->log); 198 p = ngx_alloc(size, pool->log);
205 if (p == NULL) { 199 if (p == NULL) {
206 return NULL; 200 return NULL;
207 } 201 }
208 #endif 202
203 large = ngx_palloc(pool, sizeof(ngx_pool_large_t));
204 if (large == NULL) {
205 ngx_free(p);
206 return NULL;
207 }
208
209 large->alloc = p;
210 large->next = pool->large;
211 pool->large = large;
212
213 return p;
214 }
215
216
217 void *
218 ngx_pmemalign(ngx_pool_t *pool, size_t size, size_t alignment)
219 {
220 void *p;
221 ngx_pool_large_t *large;
222
223 p = ngx_memalign(alignment, size, pool->log);
224 if (p == NULL) {
225 return NULL;
226 }
209 227
210 large = ngx_palloc(pool, sizeof(ngx_pool_large_t)); 228 large = ngx_palloc(pool, sizeof(ngx_pool_large_t));
211 if (large == NULL) { 229 if (large == NULL) {
212 ngx_free(p); 230 ngx_free(p);
213 return NULL; 231 return NULL;