Find a file
Paulo Zanoni c87f7c13fa anv/sparse: reject binds that are not a multiple of the granularity
From the spec:

  "Resources can be bound at some defined (sparse block) granularity."

  "The sparse block size in bytes for sparse buffers and
   fully-resident images is reported as
   VkMemoryRequirements::alignment. alignment represents both the
   memory alignment requirement and the binding granularity (in bytes)
   for sparse resources."

Not only the upper layer (the Spec) doesn't allow this, the lower
layers (both the vm_bind ioctl and TR-TT) also work on a granularity.
Just check for this case and return an error.

Before this check, what would happen was:
  - for the vm_bind backend, the vm_bind ioctl would fail
  - for the TR-TT backend, we'd understimate l1_binds_capacity and
    fail an assertion, or we'd just silently bind 64kb instead of the
    original size

Currently, some Zink tests such as piglit/arb_sparse_buffer-basic can
trigger this behavior, but we're working to fix Zink for this case
(and that commit may be merged before this one).

Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Signed-off-by: Paulo Zanoni <paulo.r.zanoni@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26454>
2023-12-06 00:29:58 +00:00
.ci-farms Revert "ci: disable Collabora's LAVA lab for maintance" 2023-12-04 13:15:36 +00:00
.ci-farms-disabled Revert "ci: disable Collabora's LAVA lab for maintance" 2023-12-04 13:15:36 +00:00
.github/workflows add zink to macos ci 2022-11-22 19:04:13 +00:00
.gitlab gitlab: make commit more commit-like formatted 2023-11-09 17:30:07 +00:00
.gitlab-ci ci: Build d3d12 gallium driver in debian-x86_32 2023-12-04 21:06:16 +00:00
android Android.mk: be able to build radeonsi without llvm 2023-11-10 01:28:16 +01:00
bin ci_run_n_monitor: allow picking a pipeline by its MR 2023-12-03 11:28:49 +00:00
build-support configure: commit test files 2017-10-16 16:32:43 -07:00
docs clc: add dump_llvm debug options 2023-12-05 22:45:53 +00:00
include include/drm-uapi: add pvr_drm.h 2023-12-01 10:41:24 +00:00
src anv/sparse: reject binds that are not a multiple of the granularity 2023-12-06 00:29:58 +00:00
subprojects meson: Update lua wrap to 5.4.6-4 2023-11-15 13:29:20 +00:00
.clang-format meson: enable the clang-format target 2023-05-29 11:57:08 +00:00
.clang-format-ignore ci: enforce formatting for RADV & ACO 2023-06-16 19:59:52 +00:00
.clang-format-include ci: opt-out panfrost from clang-format 2023-11-29 13:01:08 +00:00
.dir-locals.el
.editorconfig glsl: Fixes ident issue in glsl_parser.yy and update editorconfig for it 2022-12-16 19:02:17 +00:00
.git-blame-ignore-revs freedreno: Add reformatting commits to .git-blame-ignore-revs 2023-09-22 02:07:36 +00:00
.gitattributes gitlab: Highlight .cl as C 2023-11-02 11:37:46 +00:00
.gitignore .gitignore: add VSCode and VSCodium 2022-11-21 23:09:30 +00:00
.gitlab-ci.yml ci: tag sanity, rustfmt and clang-format job as a "placeholder" job 2023-11-09 17:30:07 +00:00
.graphqlrc.yml ci/bin: Add utility to find jobs dependencies 2022-08-03 23:10:37 +00:00
.mailmap .mailmap: add an alias for Christian Gmeiner 2023-06-08 09:16:25 +00:00
CODEOWNERS CODEOWNERS: Add @flynnjiang for VirGL video 2023-08-23 08:35:08 +00:00
meson.build rusticl/gl: make GLX support optional 2023-12-05 14:44:52 +00:00
meson_options.txt meson: add vp9 and av1 codec support options 2023-11-20 17:19:00 +00:00
README.rst docs: promote #dri-devel on oftc over freenode 2021-05-24 09:21:48 +00:00
VERSION VERSION: bump to 24.0 2023-10-25 19:56:42 +00:00

`Mesa <https://mesa3d.org>`_ - The 3D Graphics Library
======================================================


Source
------

This repository lives at https://gitlab.freedesktop.org/mesa/mesa.
Other repositories are likely forks, and code found there is not supported.


Build & install
---------------

You can find more information in our documentation (`docs/install.rst
<https://mesa3d.org/install.html>`_), but the recommended way is to use
Meson (`docs/meson.rst <https://mesa3d.org/meson.html>`_):

.. code-block:: sh

  $ mkdir build
  $ cd build
  $ meson ..
  $ sudo ninja install


Support
-------

Many Mesa devs hang on IRC; if you're not sure which channel is
appropriate, you should ask your question on `OFTC's #dri-devel
<irc://irc.oftc.net/dri-devel>`_, someone will redirect you if
necessary.
Remember that not everyone is in the same timezone as you, so it might
take a while before someone qualified sees your question.
To figure out who you're talking to, or which nick to ping for your
question, check out `Who's Who on IRC
<https://dri.freedesktop.org/wiki/WhosWho/>`_.

The next best option is to ask your question in an email to the
mailing lists: `mesa-dev\@lists.freedesktop.org
<https://lists.freedesktop.org/mailman/listinfo/mesa-dev>`_


Bug reports
-----------

If you think something isn't working properly, please file a bug report
(`docs/bugs.rst <https://mesa3d.org/bugs.html>`_).


Contributing
------------

Contributions are welcome, and step-by-step instructions can be found in our
documentation (`docs/submittingpatches.rst
<https://mesa3d.org/submittingpatches.html>`_).

Note that Mesa uses gitlab for patches submission, review and discussions.