mesa/src
mwezdeck cdc480585c virgl/drm: New optimization for uploading textures
1. We can create resource with size of "1" on drm, because size
   is not passed to the renderer.
2. We can't create resource with size of "1" on vtest, because shmem
   is created based on that.
3. If renderer supports copy_transfer_from_host, then use staging
   buffer for transfer in both ways to and from host.

This will allow to reduce memory consumption in the guest.

v2:
   - add inline function for checking if we can use this optimization
   - add check in readback path. If renderer doesn't support
     copy transfer from host, then we need to go with previous
     path in readback (through transfer_get ioctl)

v3:
   - fix logic for readback

v4:
   - refactor the implementation to integrate it more to
     existing code base

v5:
   - reuse COPY_TRANSFER3D in both directions

v6:
   - encode direction in COPY_TRANSFER3D if host supports it

v7:
   - renamed cap bit
   - introduced COPY_TRANSFER3D_SIZE_LEGACY define

Reviewed-by: Gert Wollny <gert.wollny@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13689>
2021-12-08 14:01:48 +00:00
..
amd radv: initialize workgroup_size in radv_meta_init_shader 2021-12-08 11:07:40 +00:00
android_stub android_stub: update platform headers to include atrace 2021-10-09 00:42:32 +00:00
asahi asahi: Fix BIND_PIPELINE sizing and alignment 2021-11-18 23:35:25 +00:00
broadcom v3d: enable ARB_texture_view 2021-12-03 15:32:36 +00:00
compiler mesa: move _mesa_varying_slot_in_fs to shader_enums 2021-12-07 23:59:58 +00:00
drm-shim drm-shim: Support kernels with >4k pages 2021-08-13 23:33:52 +00:00
egl loader/dri3: replace is_pixmap with drawable type 2021-12-07 03:26:13 +00:00
etnaviv ci: move windowoverlap exclusion to all-skips 2021-11-29 18:08:49 -05:00
freedreno freedreno/ci/a306: increase concurrency 2021-12-08 00:50:25 +00:00
gallium virgl/drm: New optimization for uploading textures 2021-12-08 14:01:48 +00:00
gbm gbm: Don't pass default usage flags on ABIs < 1 2021-12-08 09:49:47 +00:00
getopt
glx glapi: Remove remnants of EXT_paletted_texture and the imaging subset 2021-12-08 03:42:44 +00:00
gtest gtest: Fix output of array ASSERT/EXPECT macros 2021-11-11 09:53:09 -08:00
hgl
imgui
intel intel/fs/xehp: Teach SWSB pass about the exec pipeline of FS_OPCODE_PACK_HALF_2x16_SPLIT. 2021-12-08 02:47:11 +00:00
loader loader/dri3: support glx pbuffer swap 2021-12-07 03:26:13 +00:00
mapi Fix TSD stubs for non-initial-exec case (fixes #5667). 2021-12-08 00:10:29 -05:00
mesa mesa: move _mesa_varying_slot_in_fs to shader_enums 2021-12-07 23:59:58 +00:00
microsoft spirv: handle ray query intrinsics 2021-12-04 20:46:35 +00:00
nouveau
panfrost panvk: Add check for null fence 2021-12-07 21:18:44 +00:00
tool intel/pps: tweak intel config some more 2021-11-22 11:52:46 +00:00
util util/u_vector: prevent C++ warning on cast from void* to something else 2021-12-07 19:41:06 +00:00
virtio virgl/drm: New optimization for uploading textures 2021-12-08 14:01:48 +00:00
vulkan vulkan-device-select: Don't leak drmDevicePtr 2021-12-06 11:21:03 +00:00
meson.build meson: make mesa/tests/glx depend on gallium 2021-12-07 13:03:53 +00:00