- 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
|
PORTNAME= mesos
|
||||||
PORTVERSION= 1.9.0
|
PORTVERSION= 1.9.0
|
||||||
PORTREVISION= 4
|
PORTREVISION= 5
|
||||||
CATEGORIES= sysutils
|
CATEGORIES= sysutils
|
||||||
MASTER_SITES= APACHE/mesos/${PORTVERSION}
|
MASTER_SITES= APACHE/mesos/${PORTVERSION}
|
||||||
PKGNAMEPREFIX= apache-
|
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