Lines Matching refs:alloc
96 static bool check_buffer_pages_allocated(struct binder_alloc *alloc, in check_buffer_pages_allocated() argument
107 page_index = (page_addr - alloc->buffer) / PAGE_SIZE; in check_buffer_pages_allocated()
108 if (!alloc->pages[page_index].page_ptr || in check_buffer_pages_allocated()
109 !list_empty(&alloc->pages[page_index].lru)) { in check_buffer_pages_allocated()
111 alloc->pages[page_index].page_ptr ? in check_buffer_pages_allocated()
119 static void binder_selftest_alloc_buf(struct binder_alloc *alloc, in binder_selftest_alloc_buf() argument
126 buffers[i] = binder_alloc_new_buf(alloc, sizes[i], 0, 0, 0); in binder_selftest_alloc_buf()
128 !check_buffer_pages_allocated(alloc, buffers[i], in binder_selftest_alloc_buf()
136 static void binder_selftest_free_buf(struct binder_alloc *alloc, in binder_selftest_free_buf() argument
143 binder_alloc_free_buf(alloc, buffers[seq[i]]); in binder_selftest_free_buf()
151 if (list_empty(&alloc->pages[i].lru)) { in binder_selftest_free_buf()
154 alloc->pages[i].page_ptr ? "alloc" : "free", i); in binder_selftest_free_buf()
160 static void binder_selftest_free_page(struct binder_alloc *alloc) in binder_selftest_free_page() argument
170 for (i = 0; i < (alloc->buffer_size / PAGE_SIZE); i++) { in binder_selftest_free_page()
171 if (alloc->pages[i].page_ptr) { in binder_selftest_free_page()
173 list_empty(&alloc->pages[i].lru) ? in binder_selftest_free_page()
180 static void binder_selftest_alloc_free(struct binder_alloc *alloc, in binder_selftest_alloc_free() argument
185 binder_selftest_alloc_buf(alloc, buffers, sizes, seq); in binder_selftest_alloc_free()
186 binder_selftest_free_buf(alloc, buffers, sizes, seq, end); in binder_selftest_alloc_free()
189 binder_selftest_alloc_buf(alloc, buffers, sizes, seq); in binder_selftest_alloc_free()
193 binder_selftest_free_buf(alloc, buffers, sizes, seq, end); in binder_selftest_alloc_free()
194 binder_selftest_free_page(alloc); in binder_selftest_alloc_free()
209 static void binder_selftest_free_seq(struct binder_alloc *alloc, in binder_selftest_free_seq() argument
216 binder_selftest_alloc_free(alloc, sizes, seq, end); in binder_selftest_free_seq()
223 binder_selftest_free_seq(alloc, sizes, seq, index + 1, end); in binder_selftest_free_seq()
227 static void binder_selftest_alloc_size(struct binder_alloc *alloc, in binder_selftest_alloc_size() argument
247 back_sizes[0] += alloc->buffer_size - end_offset[BUFFER_NUM - 1]; in binder_selftest_alloc_size()
248 binder_selftest_free_seq(alloc, front_sizes, seq, 0, in binder_selftest_alloc_size()
250 binder_selftest_free_seq(alloc, back_sizes, seq, 0, alloc->buffer_size); in binder_selftest_alloc_size()
253 static void binder_selftest_alloc_offset(struct binder_alloc *alloc, in binder_selftest_alloc_offset() argument
260 binder_selftest_alloc_size(alloc, end_offset); in binder_selftest_alloc_offset()
274 binder_selftest_alloc_offset(alloc, end_offset, index + 1); in binder_selftest_alloc_offset()
287 void binder_selftest_alloc(struct binder_alloc *alloc) in binder_selftest_alloc() argument
294 if (!binder_selftest_run || !alloc->vma) in binder_selftest_alloc()
297 binder_selftest_alloc_offset(alloc, end_offset, 0); in binder_selftest_alloc()