- 17 Sep, 2021 9 commits
-
-
Mike Blumenkrantz authored
this isn't actually all drivers Reviewed-by:
Marek Olšák <marek.olsak@amd.com> Part-of: <!12909>
-
Samuel Pitoiset authored
Fills the "Wave mode" in "Pipelines" for GPUs that supports Wave32. Signed-off-by:
Samuel Pitoiset <samuel.pitoiset@gmail.com> Reviewed-by:
Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com> Part-of: <!12896>
-
Samuel Pitoiset authored
Fills the "Scatch Mem" with "Yes/No" in "Pipelines", this requires instruction timing to be enabled. Signed-off-by:
Samuel Pitoiset <samuel.pitoiset@gmail.com> Reviewed-by:
Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com> Part-of: <!12896>
-
Pierre-Eric Pelloux-Prayer authored
This reverts commit 7d5aea9e. The test isn't flaky: now that the regression is fixed we can remove it from the flakes list. Part-of: <!12849>
-
Pierre-Eric Pelloux-Prayer authored
upgrade_vertex copies save->copied.nr vertices to the vertex buffer, so we need to make sure it has enough space to accomodate them. This commit also drops the usage of COPY_CLEAN_4V_TYPE_AS_UNION in this function because it always writes 4-components for all attributes, but our buffer might be smaller. Instead, only write the needed components. Closes: #5353 Fixes: cc57156d ("vbo/dlist: rework vertex_store management") Reviewed-by:
Marek Olšák <marek.olsak@amd.com> Part-of: <!12849>
-
Filip Gawin authored
Problematic usage is in case RC_OPCODE_ENDLOOP, at line ret_addr = loops[--loop_depth]; Reviewed-by:
Marek Olšák <marek.olsak@amd.com> Part-of: <!12880>
-
Timothy Arceri authored
Reviewed-by:
Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl> Part-of: <!12745>
-
Marek Vasut authored
The fd_fence_finish() may be passed a special timeout value PIPE_TIMEOUT_INFINITE. This gets propagated all the way to get_abs_timeout(), where it gets converted to a huge timeout value and passed down to the kernel. At least on iMX53, the kernel may complain about this value being too large and emit a backtrace. The relevant piece of information there is the following: schedule_timeout: wrong timeout value bf94984b Per suggestion by Rob Clark, fix this in get_abs_timeout() by picking the same rollover implementation present in etnaviv. This fixes one part of the problem where the tv_nsec becomes larger than NSEC_PER_SEC, which is invalid. However, the PIPE_TIMEOUT_INFINITE is sufficiently large to make tv_secs larger than KTIME_SEC_MAX, which makes kernel-side ktime_set() return KTIME_MAX and that in turn triggers the above "wrong timeout value N" message. Fix this by setting the timeout to large enough value in case of PIPE_TIMEOUT_INFINITE. While the timeout is not truly infinite, the timeout is long enough as anything longer than a few seconds means the GPU got hung. The "util/timespec.h" is added so we can use NSEC_PER_SEC instead of ad-hoc constant 1000000000 . The "pipe/p_defines.h" is needed for PIPE_TIMEOUT_INFINITE. This problem can be reliably triggered on iMX53 using Qt5 with EGLFS support, using the qtbase examples, as follows: /usr/share/examples/opengl/qopenglwidget/qopenglwidget -platform eglfs Fixes: f3cc0d27 ("freedreno: import libdrm_freedreno + redesign submit") Signed-off-by:
Marek Vasut <marex@denx.de> Part-of: <!12886>
-
Mike Blumenkrantz authored
this explodes gfxreconstruct Reviewed-by:
Dave Airlie <airlied@redhat.com> Part-of: <!12905>
-
- 16 Sep, 2021 31 commits
-
-
Emma Anholt authored
It's been flaking approximately weekly since the end of June. Part-of: <!12906>
-
Neha Bhende authored
Few tessellation related piglit test are crashing. This patch fixes unhandled case Tested with piglit Reviewed-by:
Charmaine Lee <charmainel@vmware.com> (cherry picked from commit 0e1c962cc105a9330caf22266e1962b049c13454) Part-of: <!12882>
-
Dave Airlie authored
One test fails but I think it's a missing barrier in the test Acked-By:
Mike Blumenkrantz <michael.blumenkrantz@gmail.com> Part-of: <mesa/mesa!12888>
-
Marijn Suijten authored
These GPUs attained kernel support in: https://git.kernel.org/torvalds/c/1d832ab30ce64abe30571bc12931a296a8a27c4d Signed-off-by:
Marijn Suijten <marijn.suijten@somainline.org> Part-of: <!12874>
-
Nanley Chery authored
This allows us to delete iris_resource_unfinished_aux_import, which incorrectly assumed that a CCS-enabled resource needs an aux BO. Reviewed-by:
Kenneth Graunke <kenneth@whitecape.org> Part-of: <!12795>
-
Nanley Chery authored
This function counts the number of objects in a pipe_resource linked list. Reviewed-by:
Kenneth Graunke <kenneth@whitecape.org> Part-of: <!12795>
-
Nanley Chery authored
It's unusable because ISL_AUX_USAGE_MC doesn't support fast clears. Instead of performing this change in the if-ladder, replace the if-ladder with a switch statement to make it clear what's going on. Reviewed-by:
Kenneth Graunke <kenneth@whitecape.org> Part-of: <!12795>
-
Nanley Chery authored
XeHP can use CCS_E without an aux BO. Reviewed-by:
Kenneth Graunke <kenneth@whitecape.org> Part-of: <!12795>
-
Nanley Chery authored
Avoid using a helper function to get the resource BO. This fits in better with the previous iris_use_pinned_bo calls. Reviewed-by:
Kenneth Graunke <kenneth@whitecape.org> Part-of: <!12795>
-
Nanley Chery authored
CCS_E-enabled resources on XeHP have a clear color without an aux BO. Reviewed-by:
Kenneth Graunke <kenneth@whitecape.org> Part-of: <!12795>
-
Nanley Chery authored
XeHP can use CCS_E without an aux BO. Reviewed-by:
Kenneth Graunke <kenneth@whitecape.org> Part-of: <!12795>
-
Nanley Chery authored
This helper simply is a wrapper to the clear color fields in the iris_resource struct. We choose to delete it for two reasons: 1) It incorrectly asserts that the resource argument has an aux BO. This doesn't hold for CCS_E on XeHP. 2) The majority of functions ignore the helper anyway and access these fields directly. Reviewed-by:
Kenneth Graunke <kenneth@whitecape.org> Part-of: <!12795>
-
Jesse Natalie authored
Acked-by:
Eric Engestrom <eric@engestrom.ch> Reviewed-by:
Emil Velikov <emil.velikov@collabora.com> Part-of: <mesa/mesa!12881>
-
Jesse Natalie authored
Reviewed-by:
Dylan Baker <dylan@pnwbakers.com> Reviewed-by:
Karol Herbst <kherbst@redhat.com> Reviewed-by:
Emil Velikov <emil.velikov@collabora.com> Part-of: <!12881>
-
Jesse Natalie authored
Reviewed-by:
Eric Engestrom <eric@engestrom.ch> Reviewed-by:
Emil Velikov <emil.velikov@collabora.com> Part-of: <!12881>
-
Jesse Natalie authored
Only strip leading underscores if there's also a trailing @ Fixes shared-glapi symbol check for x64 Reviewed-by:
Eric Engestrom <eric@engestrom.ch> Reviewed-by:
Emil Velikov <emil.velikov@collabora.com> Part-of: <!12881>
-
Mike Blumenkrantz authored
let the driver figure these out after zink guarantees that at least one of them will work Reviewed-by:
Adam Jackson <ajax@redhat.com> Part-of: <!12857>
-
Mike Blumenkrantz authored
only single plane modifiers are supported now Reviewed-by:
Adam Jackson <ajax@redhat.com> Part-of: <!12857>
-
Mike Blumenkrantz authored
this does need kms handling to do literally anything. Reviewed-by:
Adam Jackson <ajax@redhat.com> Part-of: <!12857>
-
Mike Blumenkrantz authored
Reviewed-by:
Adam Jackson <ajax@redhat.com> Part-of: <!12857>
-
Jason Ekstrand authored
They're no longer ralloc'd. Fixes: 879a5698 "nir: Switch from ralloc to malloc for NIR instructions." Reviewed-by:
Emma Anholt <emma@anholt.net> Reviewed-by:
Ian Romanick <ian.d.romanick@intel.com> Part-of: <!12884>
-
Jason Ekstrand authored
Now that they're no longer ralloc'd, we have to be much more careful about indirects. We have to make sure every time a source or destination is overwritten, its indirect (if any) is freed. We also have to choose a memory ownership convention for the rewrite functions. Assuming that they will be called with the source from some other instruction, we choose to always make a copy of the indirect (if any). It's the responsibility of the caller to ensure its copy of the indirect is freed. Unfortunately, all this extra logic is going to make nir_instr_rewrite/move_src/dest more expensive because they now have all the logic of nir_src/dest_copy instead of a simple struct assignment. Fortunately, the vast majority of rewrite calls are done by nir_ssa_def_rewrite_uses which is an SSA-only fast-path. Fixes: 879a5698 "nir: Switch from ralloc to malloc for NIR instructions." Reviewed-by:
Emma Anholt <emma@anholt.net> Part-of: <!12884>
-
Timur Kristóf authored
PSIZ output is only needed when: 1. There is a next stage and it reads it. 2. Primitive topology is point list, in the last vertex pipeline stage. Zink always adds this output in its vertex (and other) shaders, because it helps Zink avoid recompiling shader variants. However, this has a performance impact for RADV because it needs a scalar memory load. That becomes noticeable at high primitive rates. The Fossil stats are unremarkable because our DB doesn't include any shaders from Zink or D9VK, but there are a few affected shaders. Note that there may be an increase in LDS use in some GS. This is because with PSIZ removed the ES per-vertex LDS size is smaller, so we can squeeze more GS threads in the same workgroup. Fossil DB stats on Sienna Cichlid: Totals from 14 (0.01% of 128647) affected shaders: CodeSize: 119884 -> 119732 (-0.13%) LDS: 235008 -> 228864 (-2.61%); split: -2.83%, +0.22% Instrs: 23076 -> 23048 (-0.12%) Latency: 71667 -> 71625 (-0.06%) InvThroughput: 19155 -> 18870 (-1.49%) Copies: 1586 -> 1572 (-0.88%) Signed-off-by:
Timur Kristóf <timur.kristof@gmail.com> Reviewed-By:
Mike Blumenkrantz <michael.blumenkrantz@gmail.com> Part-of: <!10725>
-
Dave Airlie authored
Acked-By:
Mike Blumenkrantz <michael.blumenkrantz@gmail.com> Reviewed-by:
Roland Scheidegger <sroland@vmware.com> Part-of: <!11816>
-
Dave Airlie authored
Acked-By:
Mike Blumenkrantz <michael.blumenkrantz@gmail.com> Reviewed-by:
Roland Scheidegger <sroland@vmware.com> Part-of: <!11816>
-
Dave Airlie authored
Reviewed-by:
Roland Scheidegger <sroland@vmware.com> Part-of: <!11816>
-
Dave Airlie authored
Acked-By:
Mike Blumenkrantz <michael.blumenkrantz@gmail.com> Reviewed-by:
Roland Scheidegger <sroland@vmware.com> Part-of: <!11816>
-
Dave Airlie authored
The fails will be addressed later. This adds a fail in GLSL compiler that is due to a workaround that fails when fp16 constants are lowered Reviewed-by:
Roland Scheidegger <sroland@vmware.com> Part-of: <!11816>
-
Dave Airlie authored
Otherwise the inf translations don't seem to work, and the VK CTS fails Fixes VK CTS dEQP-VK.spirv_assembly.instruction.graphics.float16.arithmetic* Reviewed-by:
Roland Scheidegger <sroland@vmware.com> Part-of: <!11816>
-
Dave Airlie authored
Some VK CTS tests are topping this out around 76, increase it to 80 for now. Fixes: dEQP-VK.spirv_assembly.instruction.graphics.float16.opvectorshuffle.*44* Reviewed-by:
Roland Scheidegger <sroland@vmware.com> Part-of: <!11816>
-
Dave Airlie authored
Reviewed-by:
Roland Scheidegger <sroland@vmware.com> Part-of: <!11816>
-