gallium/util: do not use undefined memory for texcoords

blitter_context_priv::vertices is initialized at start-up, but can (and
will) be overwritten by calls to the blitter since then. Since we always
copy from the LOD read by the the vertex-shader, and we risk blitting
from out-of-range LODs, which give incorrect results.

So let's just bite the bullet and not use the XY-codepath in the shared
code. The difference is just a few writes, but then we always update all
the read state as apropriate.

This fixes a case for me where the following two Khronos Confidental CTS
cases are run back to back:

GTF-GL33.gtf30.GL3Tests.framebuffer_blit.framebuffer_blit_error_blitframebuffer_multisampled_framebuffers_different_formats
GTF-GL33.gtf30.GL3Tests.framebuffer_blit.framebuffer_blit_functionality_nearest_filter_color_blit

Fixes: 22ed1ba0 ("gallium/u_blitter: use draw_rectangle for all blits except cubemaps")
Status Job ID Name Coverage
  Container+Docs
manual #4814736
aarch64 manual
arm_build
manual #4814737
manual
arm_test-base
manual #4814733
manual
x86_build-base
manual #4814735
manual
x86_build_old
manual #4814734
manual
x86_test-base
 
  Container 2
created #4814747
arm64_test
created #4814742
i386_build
created #4814738
kernel+rootfs_amd64
created #4814739
aarch64
kernel+rootfs_arm64
created #4814740
aarch64
kernel+rootfs_armhf
created #4814743
ppc64el_build
created #4814744
s390x_build
created #4814741
x86_build
created #4814745
x86_test-gl
created #4814746
x86_test-vk
 
  Meson X86 64
created #4814752
meson-android
created #4814753
meson-clang
created #4814751
meson-classic
created #4814754
meson-clover
created #4814749
meson-gallium
created #4814750
meson-release
created #4814748
meson-testing
created #4814755
meson-vulkan
 
  Scons
created #4814756
allowed to fail
scons-win64
 
  Meson Misc
created #4814758
aarch64
meson-arm64
created #4814759
aarch64
meson-arm64-build-test
created #4814757
aarch64
meson-armhf
created #4814760
meson-i386
created #4814763
meson-mingw32-x86_64
created #4814762
kvm
meson-ppc64el
created #4814761
kvm
meson-s390x
 
  Llvmpipe
created #4814767
llvmpipe-gles2
created #4814768
llvmpipe-traces
created #4814765
piglit-glslparser
created #4814764
piglit-quick_gl
created #4814766
piglit-quick_shader
 
  Softpipe
created #4814773
softpipe-gl
created #4814769
softpipe-gles2
created #4814770
softpipe-gles3
created #4814771
softpipe-gles31 1/2
created #4814772
softpipe-gles31 2/2
 
  Freedreno
created #4814786
google-freedreno-db410c
arm64_a306_gles2
created #4814787
google-freedreno-db410c
arm64_a306_gles3
created #4814788
google-freedreno-db410c
arm64_a306_gles3_options
created #4814789
google-freedreno-db820c
arm64_a530_gles2
created #4814790
google-freedreno-db820c
arm64_a530_gles3
created #4814791
google-freedreno-db820c
arm64_a530_gles31
created #4814778
google-freedreno-cheza
arm64_a630_bypass
created #4814781
google-freedreno-cheza
arm64_a630_gl
created #4814774
google-freedreno-cheza
arm64_a630_gles2
created #4814776
google-freedreno-cheza
arm64_a630_gles3
created #4814775
google-freedreno-cheza
arm64_a630_gles31
created #4814783
google-freedreno-cheza
arm64_a630_gles31_565nozs
created #4814782
google-freedreno-cheza
arm64_a630_gles3_565nozs
created #4814780
google-freedreno-cheza
arm64_a630_gmem
created #4814777
google-freedreno-cheza
arm64_a630_noubo
created #4814779
google-freedreno-cheza
arm64_a630_traces
created #4814784
google-freedreno-cheza
arm64_a630_vk
created #4814785
google-freedreno-cheza
arm64_a630_vk_sysmem
 
  Panfrost
created #4814792
mesa-ci-aarch64-lava-collabora
panfrost-t720-gles2:arm64
created #4814793
mesa-ci-aarch64-lava-collabora
panfrost-t760-gles2:armhf
created #4814794
mesa-ci-aarch64-lava-collabora
panfrost-t860-gles2:arm64
created #4814795
mesa-ci-aarch64-lava-collabora
panfrost-t860-gles3:arm64 1/2
created #4814796
mesa-ci-aarch64-lava-collabora
panfrost-t860-gles3:arm64 2/2
created #4814797
mesa-ci-aarch64-lava-collabora
panfrost-t860-traces:arm64
 
  Virgl
created #4814802
virgl-gl30-on-gl
created #4814803
virgl-gl31-on-gl
created #4814804
virgl-gl32-on-gl
created #4814798
virgl-gles2-on-gl
created #4814800
virgl-gles31-on-gl 1/2
created #4814801
virgl-gles31-on-gl 2/2
created #4814799
virgl-gles3-on-gl
created #4814805
virgl-traces
 
  Radeonsi
created #4814806
mesa-ci-aarch64-lava-collabora
radeonsi-stoney-gles2:amd64
created #4814808
mesa-ci-aarch64-lava-collabora
radeonsi-stoney-gles31:amd64
created #4814807
mesa-ci-aarch64-lava-collabora
radeonsi-stoney-gles3:amd64
created #4814809
mesa-ci-aarch64-lava-collabora
radeonsi-stoney-traces:amd64