Commit graph

123370 commits

Author SHA1 Message Date
Eric Anholt
824ef8db88 ci: Build a cheza kernel.
This is a set of kernel options I've come up with mostly cribbing from
chrome os's kernel config snippet.  We also build an lzma kernel, as
uncompressed kernel is big but lzma is the only compression supported by
the bootloader.  With that image, we have to pack it into a FIT formatted
image+dtb blob.

CONFIG_SUNRPC_DEBUG is added so that you can set "nfsrootdebug" to figure
out what's going wrong with your nfs mount (mine were "both the tcp and
nfsvers options were required, and don't try to use 'default' as the root
path to defer to DHCP's answer because otherwise you get
/tftpboot/default, just use an empty root path which doesn't prepend
/tftpboot.")

Reviewed-by: Kristian H. Kristensen <hoegsberg@google.com>
(cherry picked from commit 3a1010e21a)

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5548>
2020-07-08 19:31:15 +02:00
Eric Anholt
9d81b09869 ci: Disable the firmware loader user helper option in arm64 kernels.
We won't have a user helper, so don't block for 60 seconds for it to show
up.  Speeds up debug of new kernel builds.

Reviewed-by: Kristian H. Kristensen <hoegsberg@google.com>
(cherry picked from commit b678568a5e)

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5548>
2020-07-08 19:31:15 +02:00
Eric Anholt
9f89b2c139 ci: Quick exit qpa extraction for non-matching qpas.
When you're bringing up a new driver in CI with significant number of
failures (or when a CI run breaks a driver), the QPA extraction can easily
take the whole job timeout as we go about processing each QPA (100 of them
in my early VK CI fails) per unexpected result we're saving (50), which
involves reading and each line of the file in shell.  By quickly filtering
out the QPA files not including our test, we can save all that shell
overhead, bringing QPA extract time down to a couple of minutes.

Reviewed-by: Kristian H. Kristensen <hoegsberg@google.com>
Reviewed-by: Rob Clark <robdclark@chromium.org>
(cherry picked from commit f0c102c075)

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5548>
2020-07-08 19:31:15 +02:00
Eric Anholt
a9ad66e3db ci: Move baremetal DEQP_NO_SAVE_RESULTS setup to the yml.
I'm going to want it unset (artifacts enabled) for the cheza jobs.

Reviewed-by: Kristian H. Kristensen <hoegsberg@google.com>
(cherry picked from commit 46d9b500f4)

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5548>
2020-07-08 19:31:15 +02:00
Eric Anholt
e682a660b6 ci: Add DEQP_EXPECTED_RENDERER support for VK tests.
I used this to debug what was going on with freedreno VK in CI.

Reviewed-by: Kristian H. Kristensen <hoegsberg@google.com>
(cherry picked from commit 33e0821a99)

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5548>
2020-07-08 19:31:15 +02:00
Eric Anholt
4ff44bd14b ci: Auto-detect the architecture for VK ICD filenames.
Reviewed-by: Kristian H. Kristensen <hoegsberg@google.com>
(cherry picked from commit 6766d51c15)

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5548>
2020-07-08 19:31:15 +02:00
Eric Anholt
1446dac165 ci: Drop old comment about enabling --deqp-watchdog.
The parallel deqp runner does its own 60s watchdog.

Reviewed-by: Kristian H. Kristensen <hoegsberg@google.com>
(cherry picked from commit 044f50b9fd)

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5548>
2020-07-08 19:31:15 +02:00
Eric Anholt
1dac387704 ci: Drop double ".txt" suffix on the unexpected results file.
Just a cosmetic fix in reviewing logs.

Reviewed-by: Kristian H. Kristensen <hoegsberg@google.com>
(cherry picked from commit c343d00ede)

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5548>
2020-07-08 19:31:15 +02:00
Michel Dänzer
5c08338af3 gitlab-ci: Also list arm/x86_build in needs: of test jobs
Without this, the test jobs may spuriously run if the arm/x86_build
jobs fail.

Reviewed-by: Eric Anholt <eric@anholt.net>
(cherry picked from commit 43111ea745)

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5548>
2020-07-08 19:31:15 +02:00
Michel Dänzer
7d1215f792 gitlab-ci: Enable -Werror in meson-s390x job
It's warning-clean.

v2:
* Prevent -Werror from being enabled in `meson-ppc64le` job as well

Reviewed-by: Eric Engestrom <eric@engestrom.ch>
(cherry picked from commit 6c99de98ec)

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5548>
2020-07-08 19:31:15 +02:00
Eric Anholt
114871dcc8 ci: Improve baremetal's logging of the job env var passthrough.
Trying to read the sh -x script output was rough, just cat the file once
we're done setting it up.

(cherry picked from commit 38f32372aa)

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5548>
2020-07-08 19:31:15 +02:00
Eric Anholt
ece1b1ca0c ci: Do an explicit NIR validation-enabled pass on freedreno a630.
We disable it for most of the CTS because it's slow, but let's do a
fractional run to make sure that we don't hit any obvious failures.

(cherry picked from commit 6839ad59e6)

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5548>
2020-07-08 19:31:15 +02:00
Eric Anholt
84e0fd6b1c ci: Fix DEQP_CASELIST_FILTER (used by a630 noubo run)
We were doing sed -i /filter/p, which printed everything but printed the
filtered things twice (though they'd only get tested once).  Now that the
filter works, run all the UBO tests instead of doing a 1/5 run, revealing
new failures.

(cherry picked from commit 90cf494338,
commit message and UBO fail list updated since we don't have the UBO
fixes in)

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5548>
2020-07-08 19:31:15 +02:00
Eric Anholt
c707d26202 ci: Disable SMP on the a5xx boards.
CPU0 comes up at some plausible freq, but the rest are at 19Mhz waiting
for cpufreq to come up, which has not been upstreamed.

(cherry picked from commit 6033c10092)

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5548>
2020-07-08 19:31:15 +02:00
Eric Anholt
db641c6c62 ci: Switch the baremetal runner to be an x86 docker image.
The runner is an x86 system, so running the ARM image meant doing
everything at runtime under qemu, and for the xz of the test rootfs that
was quite expensive.  Also, we can rebuild x86 images much faster than we
can rebuild arm images for container development, which will help unblock
some of the other feature parity work I have to do versus the old docker
system that cheza is using.

Reviewed-by: Christian Gmeiner <christian.gmeiner@gmail.com>
Reviewed-by: Tomeu Vizoso <tomeu.vizoso@collabora.com>
(cherry picked from commit 68b3b5bcab)

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5548>
2020-07-08 19:31:15 +02:00
Eric Anholt
f471477aae ci: Update versions of packages to remove from rootfses.
testing's versions have updated, and the apt one was pretty big in the
stripped rootfs.

Reviewed-by: Christian Gmeiner <christian.gmeiner@gmail.com>
Reviewed-by: Tomeu Vizoso <tomeu.vizoso@collabora.com>
(cherry picked from commit 8094a9ab68)

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5548>
2020-07-08 19:31:15 +02:00
Eric Anholt
9d2e4163fe ci: Make the create-rootfs more resilient.
If the file doesn't exist, fine.  We didn't happen to get that package
dragged in.

Reviewed-by: Christian Gmeiner <christian.gmeiner@gmail.com>
Reviewed-by: Tomeu Vizoso <tomeu.vizoso@collabora.com>
(cherry picked from commit 18fc6a95b6)

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5548>
2020-07-08 19:31:15 +02:00
Eric Anholt
742c8515d5 ci: Make cmake toolchain file for deqp cross build setup.
This adds a few more variables that we found we needed for x86-to-arm dEQP
cross builds.  Also note that we're now fixed to use ccache in the dEQP
builds.

Reviewed-by: Christian Gmeiner <christian.gmeiner@gmail.com>
Reviewed-by: Tomeu Vizoso <tomeu.vizoso@collabora.com>
(cherry picked from commit 588ea3184c)

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5548>
2020-07-08 19:31:15 +02:00
Eric Anholt
b6792a5e1e ci: Autodetect whether we need cross setup in lava_arm builds.
The x86 baremetal build would have an armhf cross file, and need the
kernel env setup.

Reviewed-by: Christian Gmeiner <christian.gmeiner@gmail.com>
Reviewed-by: Tomeu Vizoso <tomeu.vizoso@collabora.com>
(cherry picked from commit a65521145c)

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5548>
2020-07-08 19:31:15 +02:00
Eric Anholt
23a0d7c7e7 ci: Move cross file generation to a shared script.
We're going to do this in another container soon, and it would also be
nice to consolidate cmake cross setup.

Reviewed-by: Christian Gmeiner <christian.gmeiner@gmail.com>
Reviewed-by: Tomeu Vizoso <tomeu.vizoso@collabora.com>
(cherry picked from commit 188916bd06)

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5548>
2020-07-08 19:31:15 +02:00
Pablo Saavedra
587f2e3fca ci: Fix TypoError error when traces in traces.yml is an empty list
v2: Python's nitpick (Andres)

In case of an empty list of traces, the results.yml will contain an empty
curly braces. In YAML, an associative array can also be specified by text
enclosed in curly braces ({}),

This commit also adds the corresponding test to check the behavior of
tracie when no traces are added in the traces.yml file.

Signed-off-by: Pablo Saavedra <psaavedra@igalia.com>
Reviewed-by: Andres Gomez <agomez@igalia.com>
(cherry picked from commit 4504d6374d)

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5548>
2020-07-08 19:31:15 +02:00
Pablo Saavedra
d465ff51f0 ci: Split test_tracie_skips_traces_without_checksum in separate cases
test_tracie_skips_traces_without_checksum does the logic previous to
the commit 8546d1dd78. The traces.yml includes
several traces, only the one without checksum is ignored by tracie.

As a complementary action, this change adds an new test
(test_tracie_only_traces_without_checksum) to verify the behavior for
cases where the traces.yml only contains traces without checksum.

Finally, test_tracie_skips_traces_without_checksum is renamed as
test_tracie_traces_with_and_without_checksum

Signed-off-by: Pablo Saavedra <psaavedra@igalia.com>
Reviewed-by: Andres Gomez <agomez@igalia.com>
(cherry picked from commit e85dc9a240)

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5548>
2020-07-08 19:31:15 +02:00
Pablo Saavedra
2ccd6d2e78 ci: Migrate tracie tests done in shell script to pytest
v2: Verbatim translation from the original shell script
    Make the corrections visible in explicit commits (Andres)
    Remove redundant code (Alexandros)
    Code style nitpick (Rohan)

Reimplementation of the tracie's self-tests using a pythonic test suit
(pytest).

The new tracie/test.py module is almost a direct translation of the
tests defined in the tracie/test.sh. This new implementation of the
test provides a more common framework where define the tests.
Also allows a better introspection for the tests results and/or
resulting errors.

This patch also adds python3-pytest as dependency for the built images
and adapts the tracie-runner scripts to run the self-test using pytest.

Signed-off-by: Pablo Saavedra <psaavedra@igalia.com>
Reviewed-by: Alexandros Frantzis <alexandros.frantzis@collabora.com> [v1]
Reviewed-by: Andres Gomez <agomez@igalia.com>
Reviewed-by: Rohan Garg <rohan.garg@collabora.com> [v1]
(cherry picked from commit 550a4f7764)

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5548>
2020-07-08 19:31:15 +02:00
Pablo Saavedra
275b8d54e1 ci: ArgumentParser receives the args from the main parameters
Change the main function to receive the args parameter from
sys.argv[1:]. The args parameter will be passed to the
ArgumentParser.parse_args() function as argument.

This change provides an easier  main() function signature to use
with pythonic testsuites.

Signed-off-by: Pablo Saavedra <psaavedra@igalia.com>
Reviewed-by: Alexandros Frantzis <alexandros.frantzis@collabora.com>
Reviewed-by: Andres Gomez <agomez@igalia.com>
Reviewed-by: Rohan Garg <rohan.garg@collabora.com>
(cherry picked from commit 37621da7b1)

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5548>
2020-07-08 19:31:15 +02:00
Pablo Saavedra
be41c07d35 ci: TRACES_DB_PATH and RESULTS_PATH defined as relative paths
RESULTS_PATH and RESULTS_PATH, as variables in the module context, are
resolved one single time, only during the first module loading. If the
the Python code in execution changes the current dir at some point,
those paths are not going to be updated anymore keeping the paths
wrongly pointing to the old working dir.

This change modify the definition of those variables to use simply
relative paths.

Signed-off-by: Pablo Saavedra <psaavedra@igalia.com>
Reviewed-by: Alexandros Frantzis <alexandros.frantzis@collabora.com>
Reviewed-by: Andres Gomez <agomez@igalia.com>
Reviewed-by: Rohan Garg <rohan.garg@collabora.com>
(cherry picked from commit eb1f22fb01)

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5548>
2020-07-08 19:31:15 +02:00
Ilia Mirkin
26b53e9abb freedreno/ir3: avoid applying (sat) on bary.f
This causes failures on a3xx resulting in the non-sensical dEQP failures
on packUnorm2x16. The same test uses ldlv on a4xx+, so just disallow
(sat) on bary.f on all generations.

Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
Reviewed-by: Rob Clark <robdclark@chromium.org>
(cherry picked from commit 9048adbd24)

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5548>
2020-07-08 19:31:15 +02:00
Ilia Mirkin
40aa4e6d38 freedreno/a3xx: reinstate rgb10_a2ui texture format
Rendering doesn't work, but having the format in place avoids an assert
when selecting the texture format in st_format. I believe it's required
for GLES3, so more tracing is required to determine what bit we're
missing to make rendering work.

Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
Reviewed-by: Rob Clark <robdclark@chromium.org>
(cherry picked from commit 8d86892ea3)

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5548>
2020-07-08 19:31:15 +02:00
Ilia Mirkin
58dbc3726b freedreno/a3xx: there's no r8i/ui rb format, only rg8i/rg8ui
This fixes a number of dEQP tests:

  dEQP-GLES3.functional.fbo.blit.conversion.r8*
  dEQP-GLES3.texture.specification.basic_teximage2d.r8*

and others. The reason why this enum showed up in traces for R8 is that
it was an "upgraded" texture to R8G8.

Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
Reviewed-by: Rob Clark <robdclark@chromium.org>
(cherry picked from commit ff4df32fae)

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5548>
2020-07-08 19:31:15 +02:00
Eric Engestrom
41cc1739bd gitlab-ci: exclude scripts that don't affect the build
All the other files in bin/ are not used by any build system and as such
cannot affect the build.

I've been working on maintainer tools lately and it's frustrating to have
the CI wait for 45 minutes to rebuild everything and not even read/run
the files in the MR when it could've just been merged and moved on to
the next MR 45 minutes ago.

Signed-off-by: Eric Engestrom <eric@engestrom.ch>
Acked-by: Tapani Pälli <tapani.palli@intel.com>
Reviewed-by: Dylan Baker <dylan@pnwbakers.com>
Reviewed-by: Jose Fonseca <jfonseca@vmware.com>
(cherry picked from commit 576bff5c73)

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5548>
2020-07-08 19:31:15 +02:00
Michel Dänzer
9ba933d70f gitlab-ci: Install g++-mingw-w64-x86-64-win32 instead of mingw-w64
mingw-w64 pulls in a lot more packages we don't need.

g++-mingw-w64-x86-64-win32 is only available in Debian testing, so get
all mingw packages from there.

Acked-by: Andres Gomez <agomez@igalia.com>
(cherry picked from commit c059b22707)

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5548>
2020-07-08 19:31:15 +02:00
Michel Dänzer
b99e46f1b2 gitlab-ci: Move lib{drm,pciaccess}-dev cross packages out of loop
Simpler like this, since they're only needed for one cross architecture
each.

Acked-by: Andres Gomez <agomez@igalia.com>
(cherry picked from commit dcbb189bbe)

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5548>
2020-07-08 19:31:15 +02:00
Michel Dänzer
7f995763fe gitlab-ci: Install WINE from Debian testing
Instead of a third-party repository which has proved unreliable at
times.

This pulls in glibc 2.30 from testing in the x86_build image, so we need
to update the x86_test-{gl,vk} images to match.

Acked-by: Andres Gomez <agomez@igalia.com>
(cherry picked from commit da3aee9263)

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5548>
2020-07-08 19:31:15 +02:00
Michel Dänzer
8000a0b846 gitlab-ci: Add Debian testing repository for x86_build image
We don't want LLVM 8 packages to be pulled in from testing though (it
would make installing llvm-8-dev for cross architectures a lot more
complicated), so explicitly select buster-backports for them (they were
already implicitly installed from there before, since they're not
available in buster proper).

(cherry picked from commit fd9b445145)

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5548>
2020-07-08 19:31:15 +02:00
Michel Dänzer
e145c61014 gitlab-ci: Move down container_pre_build.sh invocation in x86_build.sh
It was in the middle of package installations.

Acked-by: Andres Gomez <agomez@igalia.com>
(cherry picked from commit f2773d7067)

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5548>
2020-07-08 19:31:15 +02:00
Eric Anholt
7e9b8a5c25 ci: Fix the nick used in IRC reporting.
robclark found that we needed unique IDs when multiple runners were trying
to report flakes at the same time, but it turns out due to nick limits (16
chars on freenode) we were just getting all the runners appended with
"-142" (or whatever the prefix of the pipelines are these days).  And, for
the new flake reporting from baremetal, all the runners ended up being
just "google-freedreno".

Reviewed-by: Rob Clark <robdclark@chromium.org>
(cherry picked from commit 2637961d29)

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5548>
2020-07-08 19:31:15 +02:00
Eric Anholt
c55996c16c ci: Improve the flakes reports on IRC.
We were incorrectly taking the merge-request on non-MR pipelines (the
master build after merge) due to a missing '$'.  And, for those pipelines,
it would be nice to note whether they're for master or a stable branch.

Reviewed-by: Rob Clark <robdclark@chromium.org>
(cherry picked from commit 2c50176dfe)

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5548>
2020-07-08 19:31:15 +02:00
Eric Anholt
af93475118 ci: Enable IRC flake reporting on freedreno baremetal boards.
The IRC channel is useful for me to track and ban flaky tests before they
irritate people too much.

Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/2654
Reviewed-by: Rob Clark <robdclark@chromium.org>
(cherry picked from commit 3b5e71cb18)

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5548>
2020-07-08 19:31:15 +02:00
Eric Anholt
86a59c2fa9 ci: Clean up setup of the job-specific env vars in baremetal testing.
Avoids copy and paste errors when adding more vars.

Reviewed-by: Rob Clark <robdclark@chromium.org>
(cherry picked from commit c7bbc211d6)

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5548>
2020-07-08 19:31:15 +02:00
Michel Dänzer
3c6328a468 gitlab-ci: Use YAML anchor for llvmpipe paths in virgl rules
Instead of duplicating them.

Reviewed-by: Eric Anholt <eric@anholt.net>
(cherry picked from commit 23daa49d4c)

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5548>
2020-07-08 19:31:15 +02:00
Lepton Wu
a9396e390a mapi: x86: Fix dynamic entries in x86 tsd stubs.
We need to update dynamic entries related code after updating
asm stubs.

Fixes: 45206d7673 ("mapi: Adapted libglvnd x86 tsd changes")
Signed-off-by: Lepton Wu <lepton@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5598>
(cherry picked from commit 66482303f6)
2020-07-08 19:31:15 +02:00
Pavel Asyutchenko
35cc9cb49c vulkan/overlay: fix crash on destroying NULL swapchain
Cc: <mesa-stable@lists.freedesktop.org>
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5616>
(cherry picked from commit ec7b55f4cc)
2020-07-08 19:31:14 +02:00
Eric Engestrom
510c4185b9 .pick_status.json: Update to 0ca7bd73c6 2020-07-08 19:31:07 +02:00
Eric Engestrom
c368a593fe docs/relnotes: add sha256 sums to 20.1.2 2020-06-25 00:13:18 +02:00
Eric Engestrom
3e417e7cb6 VERSION: bump to 20.1.2 release 2020-06-24 23:48:33 +02:00
Eric Engestrom
34e61a2087 docs: Add release notes for 20.1.2 2020-06-24 23:44:30 +02:00
Bas Nieuwenhuizen
59ffb5f8bd radv: Handle mmap failures.
Which can happen if we have to many mmaps active in the process.

CC: <mesa-stable@lists.freedesktop.org>
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
(cherry picked from commit a5cb88eea4)
2020-06-24 23:03:52 +02:00
Bas Nieuwenhuizen
44ed7fba6a radv/winsys: Deal with realloc failures in BO lists.
Otherwise if realloc fails we silently try to use it. Make recording fail instead.

CC: <mesa-stable@lists.freedesktop.org>
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5578>
(cherry picked from commit 04765e6a9a)
2020-06-24 23:03:52 +02:00
Bas Nieuwenhuizen
3d42029c44 vulkan/wsi/x11: Ensure we create at least minImageCount images.
Doom Eternal happily creates a swapchain with 2 images for IMMEDIATE...

This fixes a 10% performance issues with Doom Eternal for me.

Since the game only sets a minImageCount increasing till our own minimum
is totally okay.

CC: <stable@lists.freedesktop.org>
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/2684
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/3156
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4368>
(cherry picked from commit 5f97dfc4c8)
2020-06-24 23:03:52 +02:00
Kristian H. Kristensen
b0634507ea freedreno: Handle DRM_FORMAT_MOD_INVALID in shared code
layout_resource_for_modifier() needs to handle DRM_FORMAT_MOD_INVALID
as well, since src/gallium/frontends/dri/dri2.c uses this to indicate
"no modifier" when it's called through the older non-modifier entry
points.

This is similar to 334788d4 ("freedreno: allow INVALID modifier") but
for the generic implementation.

Fixes: 98910626 ("freedreno/a6xx: Implement layout for DRM_FORMAT_MOD_QCOM_COMPRESSED")
Closes: #3154
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5611>
(cherry picked from commit bf92f041fe)
2020-06-24 23:03:51 +02:00
Jose Maria Casanova Crespo
f95011ba91 nir: only uniforms with dynamically_uniform offset are dynamically_uniform
Previously all nir_intrinsic_load_uniform that were used as sources were
considered to be dynamically_uniform but when offsets of load_uniform
are indirect it can not be determined.

This fixes artefacts in Google Maps 3D view in V3D.

Fixes: 886d46b089 ("nir: Add a function to determine if a source is dynamically uniform")
Reviewed-by: Neil Roberts <nroberts@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5587>
(cherry picked from commit ba15bb383f)
2020-06-24 23:03:51 +02:00