Jason Ekstrand
2018-12-10 19:30:13 UTC
fixed
On Mon, Dec 10, 2018 at 12:58 PM Erik Faye-Lund <
On Mon, Dec 10, 2018 at 12:58 PM Erik Faye-Lund <
The Vulkan working group recently discovered that we made a mistake
in
assuming that PCI domains are 16-bit even though they can potentially
be
32-bit values. To fix this, the next spec update will chang the
chang -> changein
assuming that PCI domains are 16-bit even though they can potentially
be
32-bit values. To fix this, the next spec update will chang the
types
in the VK_EXT_pci_bus_info struct to be 32 bits which will be a
backwards-incompatible change. Normally, Khronos tries very hard to
never make backwards incompatible changes to specs. Hopefully, the
extension is new enough (2 months) that there are no shipping apps
which
use the extension so this should be safe.
This commit disables the extension for both anv and radv in mesa and
should be back-ported to 18.3 ASAP so we avoid any potential issues
with
new apps running on old drivers. I'll send out a commit (which we
can
also back-port to 18.3 if we really care) to re-enable the extension
in
both drivers once this week's spec update ships. The one known use
of
this extension is internal to mesa and will continue working with the
extension disabled and will naturally update when we get a new
header.
---
src/amd/vulkan/radv_extensions.py | 2 +-
src/intel/vulkan/anv_extensions.py | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/src/amd/vulkan/radv_extensions.py
b/src/amd/vulkan/radv_extensions.py
index d14169144f7..ecc1fca36c7 100644
--- a/src/amd/vulkan/radv_extensions.py
+++ b/src/amd/vulkan/radv_extensions.py
@@ -105,7 +105,7 @@ EXTENSIONS = [
Extension('VK_EXT_external_memory_dma_buf', 1, True),
Extension('VK_EXT_external_memory_host', 1,
'device->rad_info.has_userptr'),
Extension('VK_EXT_global_priority', 1,
'device->rad_info.has_ctx_priority'),
- Extension('VK_EXT_pci_bus_info', 1, True),
+ Extension('VK_EXT_pci_bus_info', 1, False),
Extension('VK_EXT_sampler_filter_minmax', 1,
'device->rad_info.chip_class >= CIK'),
Extension('VK_EXT_scalar_block_layout', 1,
'device->rad_info.chip_class >= CIK'),
Extension('VK_EXT_shader_viewport_index_layer', 1, True),
diff --git a/src/intel/vulkan/anv_extensions.py
b/src/intel/vulkan/anv_extensions.py
index 7c81228f705..1c0b71a7c46 100644
--- a/src/intel/vulkan/anv_extensions.py
+++ b/src/intel/vulkan/anv_extensions.py
@@ -121,7 +121,7 @@ EXTENSIONS = [
Extension('VK_EXT_external_memory_dma_buf', 1, True),
Extension('VK_EXT_global_priority', 1,
'device->has_context_priority'),
- Extension('VK_EXT_pci_bus_info', 1, True),
+ Extension('VK_EXT_pci_bus_info', 1, False),
Extension('VK_EXT_scalar_block_layout', 1, True),
Extension('VK_EXT_shader_viewport_index_layer', 1, True),
Extension('VK_EXT_shader_stencil_export', 1,
'device->info.gen >= 9'),
in the VK_EXT_pci_bus_info struct to be 32 bits which will be a
backwards-incompatible change. Normally, Khronos tries very hard to
never make backwards incompatible changes to specs. Hopefully, the
extension is new enough (2 months) that there are no shipping apps
which
use the extension so this should be safe.
This commit disables the extension for both anv and radv in mesa and
should be back-ported to 18.3 ASAP so we avoid any potential issues
with
new apps running on old drivers. I'll send out a commit (which we
can
also back-port to 18.3 if we really care) to re-enable the extension
in
both drivers once this week's spec update ships. The one known use
of
this extension is internal to mesa and will continue working with the
extension disabled and will naturally update when we get a new
header.
---
src/amd/vulkan/radv_extensions.py | 2 +-
src/intel/vulkan/anv_extensions.py | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/src/amd/vulkan/radv_extensions.py
b/src/amd/vulkan/radv_extensions.py
index d14169144f7..ecc1fca36c7 100644
--- a/src/amd/vulkan/radv_extensions.py
+++ b/src/amd/vulkan/radv_extensions.py
@@ -105,7 +105,7 @@ EXTENSIONS = [
Extension('VK_EXT_external_memory_dma_buf', 1, True),
Extension('VK_EXT_external_memory_host', 1,
'device->rad_info.has_userptr'),
Extension('VK_EXT_global_priority', 1,
'device->rad_info.has_ctx_priority'),
- Extension('VK_EXT_pci_bus_info', 1, True),
+ Extension('VK_EXT_pci_bus_info', 1, False),
Extension('VK_EXT_sampler_filter_minmax', 1,
'device->rad_info.chip_class >= CIK'),
Extension('VK_EXT_scalar_block_layout', 1,
'device->rad_info.chip_class >= CIK'),
Extension('VK_EXT_shader_viewport_index_layer', 1, True),
diff --git a/src/intel/vulkan/anv_extensions.py
b/src/intel/vulkan/anv_extensions.py
index 7c81228f705..1c0b71a7c46 100644
--- a/src/intel/vulkan/anv_extensions.py
+++ b/src/intel/vulkan/anv_extensions.py
@@ -121,7 +121,7 @@ EXTENSIONS = [
Extension('VK_EXT_external_memory_dma_buf', 1, True),
Extension('VK_EXT_global_priority', 1,
'device->has_context_priority'),
- Extension('VK_EXT_pci_bus_info', 1, True),
+ Extension('VK_EXT_pci_bus_info', 1, False),
Extension('VK_EXT_scalar_block_layout', 1, True),
Extension('VK_EXT_shader_viewport_index_layer', 1, True),
Extension('VK_EXT_shader_stencil_export', 1,
'device->info.gen >= 9'),