free_list に ION バッファを追加する(つまり ION バッファの遅延削除を要請する)関数
static int ion_heap_deferred_free(void *data) { struct ion_heap *heap = data;
while (true) { struct ion_buffer *buffer;
wait_event_freezable(heap->waitqueue, ion_heap_freelist_size(heap) > 0);
spin_lock(&heap->free_lock); if (list_empty(&heap->free_list)) { spin_unlock(&heap->free_lock); continue; } buffer = list_first_entry(&heap->free_list, struct ion_buffer, list); list_del(&buffer->list); heap->free_list_size -= buffer->size; spin_unlock(&heap->free_lock);
ion_buffer_destroy(buffer);
} return 0; }