Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 23 May 2020 09:42:42 +0000 (UTC)
From:      Li-Wen Hsu <lwhsu@FreeBSD.org>
To:        ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org
Subject:   svn commit: r536278 - in head/sysutils/apache-mesos: . files
Message-ID:  <202005230942.04N9ggIE041419@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: lwhsu
Date: Sat May 23 09:42:42 2020
New Revision: 536278
URL: https://svnweb.freebsd.org/changeset/ports/536278

Log:
  - 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

Added:
  head/sysutils/apache-mesos/files/patch-3rdparty_stout_include_stout_os_freebsd.hpp   (contents, props changed)
Modified:
  head/sysutils/apache-mesos/Makefile

Modified: head/sysutils/apache-mesos/Makefile
==============================================================================
--- head/sysutils/apache-mesos/Makefile	Sat May 23 09:32:45 2020	(r536277)
+++ head/sysutils/apache-mesos/Makefile	Sat May 23 09:42:42 2020	(r536278)
@@ -2,7 +2,7 @@
 
 PORTNAME=	mesos
 PORTVERSION=	1.9.0
-PORTREVISION=	4
+PORTREVISION=	5
 CATEGORIES=	sysutils
 MASTER_SITES=	APACHE/mesos/${PORTVERSION}
 PKGNAMEPREFIX=	apache-

Added: head/sysutils/apache-mesos/files/patch-3rdparty_stout_include_stout_os_freebsd.hpp
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/sysutils/apache-mesos/files/patch-3rdparty_stout_include_stout_os_freebsd.hpp	Sat May 23 09:42:42 2020	(r536278)
@@ -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;



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202005230942.04N9ggIE041419>