Lines Matching refs:size

64 static int ebuf_head_extend(struct ebuf *eb, size_t size);
65 static int ebuf_tail_extend(struct ebuf *eb, size_t size);
68 ebuf_alloc(size_t size)
76 size += PAGE_SIZE;
77 eb->eb_start = malloc(size);
84 eb->eb_end = eb->eb_start + size;
109 ebuf_add_head(struct ebuf *eb, const void *data, size_t size)
114 if (size > (size_t)(eb->eb_used - eb->eb_start)) {
119 if (ebuf_head_extend(eb, size) == -1)
122 PJDLOG_ASSERT(size <= (size_t)(eb->eb_used - eb->eb_start));
124 eb->eb_size += size;
125 eb->eb_used -= size;
130 bcopy(data, eb->eb_used, size);
136 ebuf_add_tail(struct ebuf *eb, const void *data, size_t size)
141 if (size > (size_t)(eb->eb_end - (eb->eb_used + eb->eb_size))) {
146 if (ebuf_tail_extend(eb, size) == -1)
149 PJDLOG_ASSERT(size <=
156 bcopy(data, eb->eb_used + eb->eb_size, size);
157 eb->eb_size += size;
163 ebuf_del_head(struct ebuf *eb, size_t size)
167 PJDLOG_ASSERT(size <= eb->eb_size);
169 eb->eb_used += size;
170 eb->eb_size -= size;
174 ebuf_del_tail(struct ebuf *eb, size_t size)
178 PJDLOG_ASSERT(size <= eb->eb_size);
180 eb->eb_size -= size;
184 * Return pointer to the data and data size.
198 * Return data size.
210 * Function adds size + (PAGE_SIZE / 4) bytes at the front of the buffer..
213 ebuf_head_extend(struct ebuf *eb, size_t size)
220 newsize = eb->eb_end - eb->eb_start + (PAGE_SIZE / 4) + size;
226 newstart + (PAGE_SIZE / 4) + size + (eb->eb_used - eb->eb_start);
238 * Function adds size + ((3 * PAGE_SIZE) / 4) bytes at the back.
241 ebuf_tail_extend(struct ebuf *eb, size_t size)
248 newsize = eb->eb_end - eb->eb_start + size + ((3 * PAGE_SIZE) / 4);