EXT_external_objects can't share textures larger than 2MB in size starting from 550 driver

We are using EXT_external_objects and VK_KHR_external_memory to import Vulkan content into OpenGL.

After updating from 535 to 550 (or later) Linux driver, larger textures appear to be blank from OpenGL side. No errors get reported from glGetError.

This doesn’t happen with other GPUs.

A repro can be found here: GitHub - kekekeks/nvidia-external-objects-repro

A memory FD produced in the same way can be successfully imported into another VkInstance, so the problem is Vulkan→OpenGL specific

Apparently the driver no longer likes the shared texture to use dedicated allocation. I believe it’s a driver bug, since the spec doesn’t say anything about dedicated allocation being not supported for texture memory sharing if VK_EXTERNAL_MEMORY_FEATURE_DEDICATED_ONLY_BIT is not set.