Lines Matching refs:scratch_bos
1127 for (unsigned i = 0; i < ARRAY_SIZE(device->scratch_bos); i++) in tu_CreateDevice()
1128 mtx_init(&device->scratch_bos[i].construct_mtx, mtx_plain); in tu_CreateDevice()
1169 for (unsigned i = 0; i < ARRAY_SIZE(device->scratch_bos); i++) { in tu_DestroyDevice()
1170 if (device->scratch_bos[i].initialized) in tu_DestroyDevice()
1171 tu_bo_finish(device, &device->scratch_bos[i].bo); in tu_DestroyDevice()
1210 assert(index < ARRAY_SIZE(dev->scratch_bos)); in tu_get_scratch_bo()
1212 for (unsigned i = index; i < ARRAY_SIZE(dev->scratch_bos); i++) { in tu_get_scratch_bo()
1213 if (p_atomic_read(&dev->scratch_bos[i].initialized)) { in tu_get_scratch_bo()
1215 *bo = &dev->scratch_bos[i].bo; in tu_get_scratch_bo()
1224 mtx_lock(&dev->scratch_bos[index].construct_mtx); in tu_get_scratch_bo()
1229 if (dev->scratch_bos[index].initialized) { in tu_get_scratch_bo()
1230 mtx_unlock(&dev->scratch_bos[index].construct_mtx); in tu_get_scratch_bo()
1231 *bo = &dev->scratch_bos[index].bo; in tu_get_scratch_bo()
1236 VkResult result = tu_bo_init_new(dev, &dev->scratch_bos[index].bo, bo_size, false); in tu_get_scratch_bo()
1238 mtx_unlock(&dev->scratch_bos[index].construct_mtx); in tu_get_scratch_bo()
1242 p_atomic_set(&dev->scratch_bos[index].initialized, true); in tu_get_scratch_bo()
1244 mtx_unlock(&dev->scratch_bos[index].construct_mtx); in tu_get_scratch_bo()
1246 *bo = &dev->scratch_bos[index].bo; in tu_get_scratch_bo()