comparison src/core/ngx_palloc.h @ 2049:2a92804f4109

*) back out r2040 *) refactor ngx_palloc() *) introduce ngx_pnalloc() *) additional pool blocks have smaller header
author Igor Sysoev <igor@sysoev.ru>
date Tue, 17 Jun 2008 15:00:30 +0000
parents 4d8140271204
children 25add486e7aa
comparison
equal deleted inserted replaced
2048:824615f3b4ec 2049:2a92804f4109
41 ngx_pool_large_t *next; 41 ngx_pool_large_t *next;
42 void *alloc; 42 void *alloc;
43 }; 43 };
44 44
45 45
46 struct ngx_pool_s { 46 typedef struct {
47 u_char *last; 47 u_char *last;
48 u_char *end; 48 u_char *end;
49 ngx_pool_t *next;
50 } ngx_pool_data_t;
51
52
53 struct ngx_pool_s {
54 ngx_pool_data_t d;
55 size_t max;
49 ngx_pool_t *current; 56 ngx_pool_t *current;
50 ngx_chain_t *chain; 57 ngx_chain_t *chain;
51 ngx_pool_t *next;
52 ngx_pool_large_t *large; 58 ngx_pool_large_t *large;
53 ngx_pool_cleanup_t *cleanup; 59 ngx_pool_cleanup_t *cleanup;
54 ngx_log_t *log; 60 ngx_log_t *log;
55 }; 61 };
56 62
67 73
68 ngx_pool_t *ngx_create_pool(size_t size, ngx_log_t *log); 74 ngx_pool_t *ngx_create_pool(size_t size, ngx_log_t *log);
69 void ngx_destroy_pool(ngx_pool_t *pool); 75 void ngx_destroy_pool(ngx_pool_t *pool);
70 76
71 void *ngx_palloc(ngx_pool_t *pool, size_t size); 77 void *ngx_palloc(ngx_pool_t *pool, size_t size);
72 void *ngx_palloc_aligned(ngx_pool_t *pool, size_t size); 78 void *ngx_pnalloc(ngx_pool_t *pool, size_t size);
73 void *ngx_pcalloc(ngx_pool_t *pool, size_t size); 79 void *ngx_pcalloc(ngx_pool_t *pool, size_t size);
74 ngx_int_t ngx_pfree(ngx_pool_t *pool, void *p); 80 ngx_int_t ngx_pfree(ngx_pool_t *pool, void *p);
75 81
76 82
77 ngx_pool_cleanup_t *ngx_pool_cleanup_add(ngx_pool_t *p, size_t size); 83 ngx_pool_cleanup_t *ngx_pool_cleanup_add(ngx_pool_t *p, size_t size);