Lines Matching defs:shim_device
58 struct shim_device shim_device;
81 shim_device.fd_map = _mesa_hash_table_create(NULL,
85 mtx_init(&shim_device.mem_lock, mtx_plain);
87 shim_device.mem_fd = memfd_create("shim mem", MFD_CLOEXEC);
88 assert(shim_device.mem_fd != -1);
90 ASSERTED int ret = ftruncate(shim_device.mem_fd, SHIM_MEM_SIZE);
106 util_vma_heap_init(&shim_device.mem_heap, shim_page_size,
135 _mesa_hash_table_insert(shim_device.fd_map, (void *)(uintptr_t)(fd + 1), shim_fd);
145 _mesa_hash_table_search(shim_device.fd_map, (void *)(uintptr_t)(fd + 1));
160 args->version_major = shim_device.version_major;
161 args->version_minor = shim_device.version_minor;
162 args->version_patchlevel = shim_device.version_patchlevel;
165 strncpy(args->name, shim_device.driver_name, args->name_len);
170 args->name_len = strlen(shim_device.driver_name);
261 if (driver_nr < shim_device.driver_ioctl_count &&
262 shim_device.driver_ioctls[driver_nr]) {
263 return shim_device.driver_ioctls[driver_nr](fd, request, arg);
288 mtx_lock(&shim_device.mem_lock);
289 bo->mem_addr = util_vma_heap_alloc(&shim_device.mem_heap, size, shim_page_size);
290 mtx_unlock(&shim_device.mem_lock);
326 if (shim_device.driver_bo_free)
327 shim_device.driver_bo_free(bo);
329 mtx_lock(&shim_device.mem_lock);
330 util_vma_heap_free(&shim_device.mem_heap, bo->mem_addr, bo->size);
331 mtx_unlock(&shim_device.mem_lock);
383 return mmap(NULL, length, prot, flags, shim_device.mem_fd, bo->mem_addr);