map linux /proc/meminfo "MemAvailable" to uvm free pages
Signed-off-by: Jonathan Gray <[email protected]>
---
src/intel/vulkan/anv_device.c | 11 +++++++++++
1 file changed, 11 insertions(+)
diff --git a/src/intel/vulkan/anv_device.c b/src/intel/vulkan/anv_device.c
index 81e3905ae99..ce93718c106 100644
--- a/src/intel/vulkan/anv_device.c
+++ b/src/intel/vulkan/anv_device.c
@@ -370,6 +370,16 @@ anv_physical_device_free_disk_cache(struct
anv_physical_device *device)
static uint64_t
get_available_system_memory()
{
+#ifdef __OpenBSD__
+ int uvmexp_mib[] = { CTL_VM, VM_UVMEXP };
+ struct uvmexp uvmexp;
+ size_t size;
+
+ size = sizeof(uvmexp);
+ if (sysctl(uvmexp_mib, 2, &uvmexp, &size, NULL, 0) == -1)
+ return 0;
+ return uvmexp.free * uvmexp.pagesize;
+#else
char *meminfo = os_read_file("/proc/meminfo");
if (!meminfo)
return 0;
@@ -388,6 +398,7 @@ get_available_system_memory()
free(meminfo);
return 0;
+#endif
}
static VkResult
--
2.24.0
_______________________________________________
mesa-dev mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/mesa-dev