Index: Source/WTF/wtf/unix/MemoryPressureHandlerUnix.cpp
--- Source/WTF/wtf/unix/MemoryPressureHandlerUnix.cpp.orig
+++ Source/WTF/wtf/unix/MemoryPressureHandlerUnix.cpp
@@ -28,7 +28,9 @@
 #include "config.h"
 #include <wtf/MemoryPressureHandler.h>
 
+#if !OS(OPENBSD)
 #include <malloc.h>
+#endif
 #include <unistd.h>
 #include <wtf/Logging.h>
 #include <wtf/MainThread.h>
@@ -39,7 +41,7 @@
 #include <wtf/linux/CurrentProcessMemoryStatus.h>
 #elif OS(HAIKU)
 #include <wtf/haiku/CurrentProcessMemoryStatus.h>
-#elif OS(FREEBSD)
+#elif (OS(FREEBSD) || OS(OPENBSD))
 #include <sys/sysctl.h>
 #include <sys/types.h>
 #include <sys/user.h>
@@ -117,7 +119,7 @@ static size_t processMemoryUsage()
     ProcessMemoryStatus memoryStatus;
     currentProcessMemoryStatus(memoryStatus);
     return (memoryStatus.resident - memoryStatus.shared);
-#elif OS(FREEBSD)
+#elif OS(FREEBSD) || OS(OPENBSD)
     static size_t pageSize = sysconf(_SC_PAGE_SIZE);
     struct kinfo_proc info;
     size_t infolen = sizeof(info);
@@ -131,7 +133,7 @@ static size_t processMemoryUsage()
     if (sysctl(mib, 4, &info, &infolen, nullptr, 0))
         return 0;
 
-    return static_cast<size_t>(info.ki_rssize - info.ki_tsize) * pageSize;
+    return static_cast<size_t>(info.p_vm_rssize - info.p_vm_tsize) * pageSize;
 #elif OS(QNX)
     int fd = open("/proc/self/ctl", O_RDONLY);
     if (fd == -1)
