aboutsummaryrefslogblamecommitdiff
path: root/emulators/virtualbox-ose/files/patch-src_VBox_Runtime_r3_freebsd_systemmem-freebsd.cpp
blob: 92af93646dd683f7b923d7bfdef9e584aa0cea52 (plain) (tree)






































                                                                                                    
--- src/VBox/Runtime/r3/freebsd/systemmem-freebsd.cpp.orig	2017-07-27 13:18:46 UTC
+++ src/VBox/Runtime/r3/freebsd/systemmem-freebsd.cpp
@@ -65,7 +65,6 @@ RTDECL(int) RTSystemQueryAvailableRam(uint64_t *pcb)
     u_int cPagesMemFree = 0;
     u_int cPagesMemInactive = 0;
     u_int cPagesMemCached = 0;
-    u_int cPagesMemUsed = 0;
     int cbPage = 0;
     size_t cbParameter;
     int cProcessed = 0;
@@ -73,25 +72,23 @@ RTDECL(int) RTSystemQueryAvailableRam(uint64_t *pcb)
     cbParameter = sizeof(cPagesMemFree);
     if (sysctlbyname("vm.stats.vm.v_free_count", &cPagesMemFree, &cbParameter, NULL, 0))
         rc = RTErrConvertFromErrno(errno);
-    cbParameter = sizeof(cPagesMemUsed);
-    if (   RT_SUCCESS(rc)
-        && sysctlbyname("vm.stats.vm.v_active_count", &cPagesMemUsed, &cbParameter, NULL, 0))
-        rc = RTErrConvertFromErrno(errno);
     cbParameter = sizeof(cPagesMemInactive);
     if (   RT_SUCCESS(rc)
         && sysctlbyname("vm.stats.vm.v_inactive_count", &cPagesMemInactive, &cbParameter, NULL, 0))
         rc = RTErrConvertFromErrno(errno);
+#if __FreeBSD_version < 1200016
     cbParameter = sizeof(cPagesMemCached);
     if (   RT_SUCCESS(rc)
         && sysctlbyname("vm.stats.vm.v_cache_count", &cPagesMemCached, &cbParameter, NULL, 0))
         rc = RTErrConvertFromErrno(errno);
+#endif
     cbParameter = sizeof(cbPage);
     if (   RT_SUCCESS(rc)
         && sysctlbyname("hw.pagesize", &cbPage, &cbParameter, NULL, 0))
         rc = RTErrConvertFromErrno(errno);
 
     if (RT_SUCCESS(rc))
-        *pcb = (cPagesMemFree + cPagesMemInactive + cPagesMemCached ) * cbPage;
+        *pcb = ((uint64_t)cPagesMemFree + cPagesMemInactive + cPagesMemCached) * cbPage;
 
     return rc;
 }