[ANNOUNCE] mesa 22.0.3

2022-05-04 Thread Dylan Baker
Hi list,

Hot on the heals of Mesa 22.1.0-rc4, Is mesa 22.0.3. Things are starting
to slow down, especially compared to 22.0.2. We have a splattering of
fixes here, touching most of the major drivers and systems, but no real
standouts getting major work, which is good for this point in the
release cycle.

Due to mesa 22.1.0-rc4 today, we'll plan to have another 22.0 release in
2 weeks, which will hopefully be the last release.

Cheers,
Dylan

shortlog


Chia-I Wu (1):
  util: Keep quiet NaNs quiet when converting to half float.

Dave Airlie (2):
  llvmpipe: add user memory resources to the debug global list.
  vulkan/wsi: keep allocate queue families in image, just don't fill them

Dylan Baker (23):
  docs: Add sha256sums for 22.0.2
  .pick_status.json: Update to 5e84335fb578f03938468bb8ac0029f68349d330
  .pick_status.json: Update to a6a4bf0f1eae36cb68d5c67653ac013fe0fbde8a
  .pick_status.json: Update to ef9d97ec1f9d9834db3066b5a7ec67ce6d4ecd86
  .pick_status.json: Update to f17d3a125126dd7e0f1c2072545976cec1eeb1c8
  .pick_status.json: Update to 1dc697942af7254798f83583f5788e1abf136d27
  .pick_status.json: Mark d5870c45ae82c091e72f1258920aa54974e19a36 as 
denominated
  .pick_status.json: Mark f348103fce4484b891a58bf3147b71e3a3558135 as 
denominated
  .pick_status.json: Mark a4f502de3228ec37dfcaa38225077ec3709d74ea as 
denominated
  .pick_status.json: Mark 1d250b7b959d2a206280e4f83db05780a83e0927 as 
denominated
  .pick_status.json: Mark 4eca6e3e5d2b9426d6357e9af1514a0c942638f0 as 
denominated
  .pick_status.json: Mark 3dcb80da9d6d34e567680ef7fecd24aab4537e8a as 
denominated
  .pick_status.json: Mark dd078d13cb6b445ad02087a3e80433ef053b7490 as 
denominated
  .pick_status.json: Mark bbdf22ce136a7f02a8bd6c7e646d12a7e10db18d as 
denominated
  .pick_status.json: Mark 8806f444a5c005d20cd4ec4ed42e508ffd9cb1da as 
denominated
  .pick_status.json: Mark 373c8001d6615d70d112c7526ea4f4953257b6b9 as 
denominated
  .pick_status.json: Mark a056cbc691843861da417b5bcea9f871fdceeb19 as 
denominated
  .pick_status.json: Mark fc5edf9b68159288baa22c055e471de958812312 as 
denominated
  .pick_status.json: Mark e509598470c000498c3e1328e012142d9047e292 as 
denominated
  .pick_status.json: Update to 53a94fbdd57acbbe2bc745901cbfeca968e25273
  .pick_status.json: Update to 2505afc430c6b151e7e4243503953ba0b0a2c842
  docs: add release notes for 22.0.3
  VERSION: bump for 22.0.3

Erik Faye-Lund (3):
  meson: remove unused defines
  gallium/xlib: fix stale comment
  mesa: add missing error-path

Filip Gawin (1):
  r300: Print warning when stubbing derivatives

Gert Wollny (1):
  r600: Allow eight bit, three channel formats for vertex buffers

Icecream95 (1):
  panfrost: Fix pack_32_2x16 implementation

Iván Briano (1):
  vulkan/wsi/wayland: Fix double free on error condition

Jason Ekstrand (4):
  util/set: Respect found in search_or_add_pre_hashed
  nir: Lower all bit sizes of usub_borrow
  vulkan: Set signals[i].stageMask = ALL_COMMANDS for QueueSubmit2 wrapping
  spirv: Handle Op*MulExtended for non-32-bit types

Jordan Justen (3):
  vulkan/wsi/x11: Use atomic_int with sent_image_count
  iris: Fix assertion meant to only target the clear-color stride
  iris: Fix assertion meant to only target the clear-color stride

Juan A. Suarez Romero (1):
  mesa: unref syncobj after wait_sync

Konstantin Seurer (2):
  radv: Fix barriers with cp dma
  radv: Fix lowering ignore_ray_intersection

Lionel Landwerlin (6):
  nir/divergence: handle load_global_block_intel
  intel: fixup number of threads per EU on XeHP
  anv: fix acceleration structure descriptor template writes
  anv: skip acceleration structure in binding table emission
  anv: fix clflush usage on utrace copy batch
  anv: fix invalid utrace memcpy l3 config on gfx < 11

Marek Olšák (3):
  nir: fix an uninitialized variable valgrind warning in nir_group_loads
  ac/surface: fix an addrlib race condition on gfx9
  winsys/amdgpu: fix a mutex deadlock when we fail to create pipe_screen

Mike Blumenkrantz (10):
  wgl: support GL 4.6
  zink: fix tcs control barriers for use without vk memory model
  zink: fix semantics mask for compute control barriers
  zink: add synchronization for buffer clears
  mesa/st: clamp GL_RENDERBUFFER to GL_TEXTURE_2D for sparse queries
  glsl/nir: set new_style_shadow for sparse tex ops as necessary
  zink: fix group memory barrier emission
  vulkan: bump layer api versions to current vk header version
  llvmpipe: disable compute statistics queries if queries are disabled
  llvmpipe: disable statistic queries during draw if queries are disabled

Nanley Chery (2):
  Revert "anv: Disable CCS_E for some 8/16bpp copies on TGL+"
  iris: Return a 64B stride for clear color plane

Paulo Zanoni (1):
  iris: 

[PATCH 0/2] dma-buf: Add an API for exporting sync files (v13)

2022-05-04 Thread Jason Ekstrand
Modern userspace APIs like Vulkan are built on an explicit synchronization
model.  This doesn't always play nicely with the implicit synchronization used
in the kernel and assumed by X11 and Wayland.  The client -> compositor half
of the synchronization isn't too bad, at least on intel, because we can
control whether or not i915 synchronizes on the buffer and whether or not it's
considered written.

The harder part is the compositor -> client synchronization when we get the
buffer back from the compositor.  We're required to be able to provide the
client with a VkSemaphore and VkFence representing the point in time where the
window system (compositor and/or display) finished using the buffer.  With
current APIs, it's very hard to do this in such a way that we don't get
confused by the Vulkan driver's access of the buffer.  In particular, once we
tell the kernel that we're rendering to the buffer again, any CPU waits on the
buffer or GPU dependencies will wait on some of the client rendering and not
just the compositor.

This new IOCTL solves this problem by allowing us to get a snapshot of the
implicit synchronization state of a given dma-buf in the form of a sync file.
It's effectively the same as a poll() or I915_GEM_WAIT only, instead of CPU
waiting directly, it encapsulates the wait operation, at the current moment in
time, in a sync_file so we can check/wait on it later.  As long as the Vulkan
driver does the sync_file export from the dma-buf before we re-introduce it
for rendering, it will only contain fences from the compositor or display.
This allows to accurately turn it into a VkFence or VkSemaphore without any
over-synchronization.

This patch series actually contains two new ioctls.  There is the export one
mentioned above as well as an RFC for an import ioctl which provides the other
half.  The intention is to land the export ioctl since it seems like there's
no real disagreement on that one.  The import ioctl, however, has a lot of
debate around it so it's intended to be RFC-only for now.

Mesa MR: https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4037
IGT tests: https://patchwork.freedesktop.org/series/90490/

v10 (Jason Ekstrand, Daniel Vetter):
 - Add reviews/acks
 - Add a patch to rename _rcu to _unlocked
 - Split things better so import is clearly RFC status

v11 (Daniel Vetter):
 - Add more CCs to try and get maintainers
 - Add a patch to document DMA_BUF_IOCTL_SYNC
 - Generally better docs
 - Use separate structs for import/export (easier to document)
 - Fix an issue in the import patch

v12 (Daniel Vetter):
 - Better docs for DMA_BUF_IOCTL_SYNC

v12 (Christian König):
 - Drop the rename patch in favor of Christian's series
 - Add a comment to the commit message for the dma-buf sync_file export
   ioctl saying why we made it an ioctl on dma-buf

v13 (Jason Ekstrand):
 - Rebase on Christian König's fence rework

Cc: Christian König 
Cc: Michel Dänzer 
Cc: Dave Airlie 
Cc: Bas Nieuwenhuizen 
Cc: Daniel Stone 
Cc: mesa-dev@lists.freedesktop.org
Cc: wayland-de...@lists.freedesktop.org

Jason Ekstrand (2):
  dma-buf: Add an API for exporting sync files (v13)
  dma-buf: Add an API for importing sync files (v8)

 drivers/dma-buf/dma-buf.c| 100 +++
 include/uapi/linux/dma-buf.h |  57 
 2 files changed, 157 insertions(+)

-- 
2.36.0



[PATCH 0/2] *dma-buf: Add an API for exporting sync files (v13)

2022-05-04 Thread Jason Ekstrand
Modern userspace APIs like Vulkan are built on an explicit synchronization
model.  This doesn't always play nicely with the implicit synchronization used
in the kernel and assumed by X11 and Wayland.  The client -> compositor half
of the synchronization isn't too bad, at least on intel, because we can
control whether or not i915 synchronizes on the buffer and whether or not it's
considered written.

The harder part is the compositor -> client synchronization when we get the
buffer back from the compositor.  We're required to be able to provide the
client with a VkSemaphore and VkFence representing the point in time where the
window system (compositor and/or display) finished using the buffer.  With
current APIs, it's very hard to do this in such a way that we don't get
confused by the Vulkan driver's access of the buffer.  In particular, once we
tell the kernel that we're rendering to the buffer again, any CPU waits on the
buffer or GPU dependencies will wait on some of the client rendering and not
just the compositor.

This new IOCTL solves this problem by allowing us to get a snapshot of the
implicit synchronization state of a given dma-buf in the form of a sync file.
It's effectively the same as a poll() or I915_GEM_WAIT only, instead of CPU
waiting directly, it encapsulates the wait operation, at the current moment in
time, in a sync_file so we can check/wait on it later.  As long as the Vulkan
driver does the sync_file export from the dma-buf before we re-introduce it
for rendering, it will only contain fences from the compositor or display.
This allows to accurately turn it into a VkFence or VkSemaphore without any
over-synchronization.

This patch series actually contains two new ioctls.  There is the export one
mentioned above as well as an RFC for an import ioctl which provides the other
half.  The intention is to land the export ioctl since it seems like there's
no real disagreement on that one.  The import ioctl, however, has a lot of
debate around it so it's intended to be RFC-only for now.

Mesa MR: https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4037
IGT tests: https://patchwork.freedesktop.org/series/90490/

v10 (Jason Ekstrand, Daniel Vetter):
 - Add reviews/acks
 - Add a patch to rename _rcu to _unlocked
 - Split things better so import is clearly RFC status

v11 (Daniel Vetter):
 - Add more CCs to try and get maintainers
 - Add a patch to document DMA_BUF_IOCTL_SYNC
 - Generally better docs
 - Use separate structs for import/export (easier to document)
 - Fix an issue in the import patch

v12 (Daniel Vetter):
 - Better docs for DMA_BUF_IOCTL_SYNC

v12 (Christian König):
 - Drop the rename patch in favor of Christian's series
 - Add a comment to the commit message for the dma-buf sync_file export
   ioctl saying why we made it an ioctl on dma-buf

v13 (Jason Ekstrand):
 - Rebase on Christian König's fence rework

Cc: Christian König 
Cc: Michel Dänzer 
Cc: Dave Airlie 
Cc: Bas Nieuwenhuizen 
Cc: Daniel Stone 
Cc: mesa-dev@lists.freedesktop.org
Cc: wayland-de...@lists.freedesktop.org

Jason Ekstrand (2):
  dma-buf: Add an API for exporting sync files (v13)
  dma-buf: Add an API for importing sync files (v8)

 drivers/dma-buf/dma-buf.c| 100 +++
 include/uapi/linux/dma-buf.h |  57 
 2 files changed, 157 insertions(+)

-- 
2.36.0



[ANNOUNCE] mesa 22.1.0-rc4

2022-05-04 Thread Dylan Baker
Hi list,

I'd like to announce Mesa 22.1.0-rc4. We'll plan on either rc5 or 22.1.0
final next week.

This week we've got a ton of useful stuff, lots of zink and kopper
backports, llvmpipe, util, aco, r600, virgl, panfrost, wayland, spirv,
microsoft, radv, nir, and varous intel cleanups among other things.

Cheers,
Dylan

shortlog


Adam Jackson (1):
  glx/kopper: Wire up a way for SwapBuffers to fail

Anuj Phogat (2):
  include/uapi: Update drm_fourcc.h from kernel
  isl,iris: Add I915_FORMAT_MOD_4_TILED support for XeHP

Autumn on Tape (4):
  gallivm: add subgroup shuffle support
  lavapipe: enable subgroup shuffle operations
  gallivm: use shufflevector for shuffles when index is constant data
  gallivm: use VPERMPS (x86/AVX2) for 32-bit 8-element shuffles

Chia-I Wu (1):
  util: Keep quiet NaNs quiet when converting to half float.

Daniel Schürmann (1):
  aco/ra: fix live-range splits of phi definitions

Dave Airlie (2):
  vulkan/wsi: keep allocate queue families in image, just don't fill them
  llvmpipe: add user memory resources to the debug global list.

Dylan Baker (6):
  .pick_status.json: Update to f17d3a125126dd7e0f1c2072545976cec1eeb1c8
  .pick_status.json: Update to 1dc697942af7254798f83583f5788e1abf136d27
  .pick_status.json: Update to 2505afc430c6b151e7e4243503953ba0b0a2c842
  .pick_status.json: Mark c025cb9ee9d79ebfb66a577556e04deecfe012ed as 
backported
  .pick_status.json: Update to 575068a1656ab4303647ade1491da7d711d36db7
  VERSION: bump for 22.1.0-rc4 release

Emma Anholt (1):
  nouveau/nir: Move FS output stores to the end of the last block.

Erik Faye-Lund (3):
  meson: remove unused defines
  gallium/xlib: fix stale comment
  mesa: add missing error-path

Francisco Jerez (1):
  intel/dev: Compute pixel pipe information based on geometry topology DRM 
query.

Gert Wollny (2):
  virgl: don't move input gl_SampleMaskIn to a temp
  r600: Allow eight bit, three channel formats for vertex buffers

Icecream95 (2):
  panfrost: Fix pack_32_2x16 implementation
  pan/bi: Use texture index instead of sampler for message preloading

Iván Briano (1):
  vulkan/wsi/wayland: Fix double free on error condition

Jason Ekstrand (1):
  spirv: Handle Op*MulExtended for non-32-bit types

Jesse Natalie (1):
  microsoft/compiler: Unload DXIL validator library *after* calling 
Release()

Jordan Justen (5):
  vulkan/wsi/x11: Use atomic_int with sent_image_count
  drm-uapi/i915_drm.h: Update from drm-next (2022-04-28)
  iris: Fix assertion meant to only target the clear-color stride
  intel/dev: Read hwconfig from i915
  intel_dev_info: Add --hwconfig command line parameter

Juan A. Suarez Romero (1):
  mesa: unref syncobj after wait_sync

Konstantin Seurer (1):
  ac/nir: Do not set cursor in try_extract_additions

Lionel Landwerlin (3):
  anv: fix clflush usage on utrace copy batch
  iris: use new kernel uAPI to compute video memory
  anv: fix invalid utrace memcpy l3 config on gfx < 11

Mike Blumenkrantz (24):
  drisw: remove dead code
  zink: add a util function for finding swapchain resource
  zink: flag swapchains when updating fails
  zink: handle dead swapchains in acquire
  zink: unset image layout when killing swapchain
  zink: rework swapchain object check for acquires
  zink: fix return for zink_kopper_acquire
  zink: handle swapchain acquire failures more directly
  zink: flag swapchain resources as swapchains
  zink/kopper: add a mechanism for checking swapchain status
  kopper: add some error logging for pixmap->texture failure
  kopper: check for modifiers to use modifier functionality
  zink/kopper: add a function for determining if running on software
  kopper: check whether zink is using sw
  kopper: rename a confusing variable
  kopper: implement texture-from-pixmap for software (non-dmabuf)
  zink: fix dmabuf plane returns
  zink: export fd info for all 2d images
  zink: ignore KMS handle types
  zink: remove drm_fd
  llvmpipe: disable statistic queries during draw if queries are disabled
  llvmpipe: disable compute statistics queries if queries are disabled
  wgl: always set alpha on kopper windows
  wgl: don't auto-load zink before software drivers

Nanley Chery (3):
  iris: Return a 64B stride for clear color plane
  intel/isl: Add a score for I915_FORMAT_MOD_4_TILED
  isl,iris: Add DG2 CCS modifier support for XeHP

Samuel Pitoiset (3):
  radv: fix handling divisor == 0 with dynamic vertex input state
  radv: allow to disable sinking of load inputs for FS via drirc
  radv: enable radv_disable_sinking_load_input_fs for Grid Autosport

Tapani Pälli (1):
  isl: disable mcs (and mcs+ccs) for color msaa on DG2

Timothy Arceri (1):
  nir: fix sorting before assigning varying driver locations

Yevhenii 

Converting mesa/demos to Meson

2022-05-04 Thread Erik Faye-Lund
Because we've landed on using Meson in the main Mesa repository, I've
been working on converting the mesa/demos repo to Meson as well.

I've posted an MR here:
https://gitlab.freedesktop.org/mesa/demos/-/merge_requests/60

This MR adds a new Meson build system to the repository, and marks the
Autotools and CMake build systems as deprecated, similar to what we did
for the Autotools and SCons build systems in Mesa when we transitioned.

After this lands, I propose that we cut a new release (we really should
cut a new release soon anyway), then wait for a while and fix up any
problems found, and finally rip ot the old build systems.

After removing the old build systems, we end up with this total code
reduction:

112 files changed, 1642 insertions(+), 4744 deletions(-)

The removal commit is here, BTW:
https://gitlab.freedesktop.org/kusma/mesa-demos/-/commits/remove-old-buildsystems

Thoughts? Objections?

-- 
Erik Faye-Lund
Principal Engineer

Collabora Ltd.
Platinum Building, St John's Innovation Park, Cambridge CB4 0DS, United
Kingdom
Registered in England & Wales, no. 5513718



[PATCH] test email smtp google whatever

2022-05-04 Thread Karol Herbst
uhm.. does this still work?
---
 README.rst | 1 +
 1 file changed, 1 insertion(+)

diff --git a/README.rst b/README.rst
index b35246e034c..6a7112c0473 100644
--- a/README.rst
+++ b/README.rst
@@ -1,3 +1,4 @@
+
 `Mesa `_ - The 3D Graphics Library
 ==
 
-- 
2.35.1