- Apply fix for memory detection from upstream
PR: 246667 Submitted by: James Wright <james.wright@digital-chaos.com> (maintainer) MFH: 2020Q2 Differential Revision: https://reviews.freebsd.org/D24967
This commit is contained in:
parent
87908b7622
commit
385680d842
Notes:
svn2git
2021-03-31 03:12:20 +00:00
svn path=/head/; revision=536278
@ -2,7 +2,7 @@
|
||||
|
||||
PORTNAME= mesos
|
||||
PORTVERSION= 1.9.0
|
||||
PORTREVISION= 4
|
||||
PORTREVISION= 5
|
||||
CATEGORIES= sysutils
|
||||
MASTER_SITES= APACHE/mesos/${PORTVERSION}
|
||||
PKGNAMEPREFIX= apache-
|
||||
|
@ -0,0 +1,49 @@
|
||||
--- 3rdparty/stout/include/stout/os/freebsd.hpp.orig 2020-05-22 20:48:06 UTC
|
||||
+++ 3rdparty/stout/include/stout/os/freebsd.hpp
|
||||
@@ -88,18 +88,29 @@ inline Try<Memory> memory()
|
||||
const size_t pageSize = os::pagesize();
|
||||
|
||||
unsigned int freeCount;
|
||||
- size_t length = sizeof(freeCount);
|
||||
-
|
||||
+ size_t freeCountLength = sizeof(freeCount);
|
||||
if (sysctlbyname(
|
||||
- "vm.stats.v_free_count",
|
||||
+ "vm.stats.vm.v_free_count",
|
||||
&freeCount,
|
||||
- &length,
|
||||
+ &freeCountLength,
|
||||
nullptr,
|
||||
0) != 0) {
|
||||
return ErrnoError();
|
||||
}
|
||||
- memory.free = Bytes(freeCount * pageSize);
|
||||
|
||||
+ unsigned int inactiveCount;
|
||||
+ size_t inactiveCountLength = sizeof(inactiveCount);
|
||||
+ if (sysctlbyname(
|
||||
+ "vm.stats.vm.v_inactive_count",
|
||||
+ &inactiveCount,
|
||||
+ &inactiveCountLength,
|
||||
+ nullptr,
|
||||
+ 0) != 0) {
|
||||
+ return ErrnoError();
|
||||
+ }
|
||||
+
|
||||
+ memory.free = Bytes((freeCount + inactiveCount) * pageSize);
|
||||
+
|
||||
int totalBlocks = 0;
|
||||
int usedBlocks = 0;
|
||||
|
||||
@@ -112,8 +123,9 @@ inline Try<Memory> memory()
|
||||
// FreeBSD supports multiple swap devices. Here we sum across all of them.
|
||||
struct xswdev xswd;
|
||||
size_t xswdSize = sizeof(xswd);
|
||||
- int* mibDevice = &(mib[mibSize + 1]);
|
||||
- for (*mibDevice = 0; ; (*mibDevice)++) {
|
||||
+ for (int ndev = 0; ; ndev++) {
|
||||
+ mib[mibSize] = ndev;
|
||||
+
|
||||
if (::sysctl(mib, 3, &xswd, &xswdSize, nullptr, 0) != 0) {
|
||||
if (errno == ENOENT) {
|
||||
break;
|
Loading…
Reference in New Issue
Block a user