Surfaces can be shared across contexts, and can even outlive the original context that created them, so move the pools to the screen. Since they no longer belong to a single context, they need a lock now. v2: Samplers moved back to the context v3: Fix Linux build Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/3812 Reviewed-by: Bill Kristiansen <billkris@microsoft.com> Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9349>