diff options
Diffstat (limited to 'www/firefox/files/patch-bug945046')
-rw-r--r-- | www/firefox/files/patch-bug945046 | 160 |
1 files changed, 0 insertions, 160 deletions
diff --git a/www/firefox/files/patch-bug945046 b/www/firefox/files/patch-bug945046 deleted file mode 100644 index aa6176003f95..000000000000 --- a/www/firefox/files/patch-bug945046 +++ /dev/null @@ -1,160 +0,0 @@ -diff --git config/system-headers config/system-headers -index 432cba6..18a9627 100644 ---- config/system-headers -+++ config/system-headers -@@ -1131,3 +1131,4 @@ unicode/unum.h - unicode/ustring.h - unicode/utypes.h - #endif -+libutil.h -diff --git js/src/config/system-headers js/src/config/system-headers -index 432cba6..18a9627 100644 ---- js/src/config/system-headers -+++ js/src/config/system-headers -@@ -1131,3 +1131,4 @@ unicode/unum.h - unicode/ustring.h - unicode/utypes.h - #endif -+libutil.h -diff --git toolkit/library/Makefile.in toolkit/library/Makefile.in -index 9975621..b4b037d 100644 ---- toolkit/library/Makefile.in -+++ toolkit/library/Makefile.in -@@ -289,6 +289,10 @@ OS_LIBS += $(call EXPAND_LIBNAME,kvm) - EXTRA_DSO_LDOPTS += -Wl,--warn-unresolved-symbols - endif - -+ifeq ($(OS_ARCH),FreeBSD) -+OS_LIBS += $(call EXPAND_LIBNAME,util) -+endif -+ - ifeq ($(OS_ARCH),WINNT) - OS_LIBS += $(call EXPAND_LIBNAME,shell32 ole32 version winspool comdlg32 imm32 msimg32 shlwapi psapi ws2_32 dbghelp rasapi32 rasdlg iphlpapi uxtheme setupapi secur32 sensorsapi portabledeviceguids windowscodecs wininet wbemuuid) - ifdef ACCESSIBILITY -diff --git xpcom/base/nsMemoryReporterManager.cpp xpcom/base/nsMemoryReporterManager.cpp -index b8147c8..0ffb34e 100644 ---- xpcom/base/nsMemoryReporterManager.cpp -+++ xpcom/base/nsMemoryReporterManager.cpp -@@ -204,6 +204,61 @@ ResidentFastDistinguishedAmount(int64_t* aN) - return ResidentDistinguishedAmount(aN); - } - -+#ifdef __FreeBSD__ -+#include <libutil.h> -+#include <algorithm> -+ -+static nsresult -+GetKinfoVmentrySelf(int64_t* prss, uint64_t* maxreg) -+{ -+ int cnt; -+ struct kinfo_vmentry *vmmap, *kve; -+ if ((vmmap = kinfo_getvmmap(getpid(), &cnt)) == NULL) -+ return NS_ERROR_FAILURE; -+ -+ if (prss) -+ *prss = 0; -+ if (maxreg) -+ *maxreg = 0; -+ -+ for (int i = 0; i < cnt; i++) { -+ kve = &vmmap[i]; -+ if (prss) -+ *prss += kve->kve_private_resident; -+ if (maxreg) -+ *maxreg = std::max(*maxreg, -+ kve->kve_end - kve->kve_start); -+ } -+ -+ free(vmmap); -+ return NS_OK; -+} -+ -+#define HAVE_PRIVATE_REPORTER -+static nsresult -+PrivateDistinguishedAmount(int64_t* aN) -+{ -+ int64_t priv; -+ nsresult rv = GetKinfoVmentrySelf(&priv, NULL); -+ if (NS_SUCCEEDED(rv)) -+ *aN = priv * getpagesize(); -+ -+ return NS_OK; -+} -+ -+#define HAVE_VSIZE_MAX_CONTIGUOUS_REPORTER 1 -+static nsresult -+VsizeMaxContiguousDistinguishedAmount(int64_t* aN) -+{ -+ uint64_t biggestRegion; -+ nsresult rv = GetKinfoVmentrySelf(NULL, &biggestRegion); -+ if (NS_SUCCEEDED(rv)) -+ *aN = biggestRegion; -+ -+ return NS_OK; -+} -+#endif // FreeBSD -+ - #elif defined(SOLARIS) - - #include <procfs.h> -@@ -416,6 +470,25 @@ VsizeMaxContiguousDistinguishedAmount(int64_t* aN) - return NS_OK; - } - -+#define HAVE_PRIVATE_REPORTER -+static nsresult -+PrivateDistinguishedAmount(int64_t* aN) -+{ -+ PROCESS_MEMORY_COUNTERS_EX pmcex; -+ pmcex.cb = sizeof(PROCESS_MEMORY_COUNTERS_EX); -+ -+ if (!GetProcessMemoryInfo( -+ GetCurrentProcess(), -+ (PPROCESS_MEMORY_COUNTERS) &pmcex, sizeof(pmcex))) { -+ return NS_ERROR_FAILURE; -+ } -+ -+ *aN = pmcex.PrivateUsage; -+ return NS_OK; -+} -+#endif // XP_<PLATFORM> -+ -+#ifdef HAVE_VSIZE_MAX_CONTIGUOUS_REPORTER - class VsizeMaxContiguousReporter MOZ_FINAL : public MemoryUniReporter - { - public: -@@ -429,8 +502,9 @@ public: - return VsizeMaxContiguousDistinguishedAmount(aAmount); - } - }; -+#endif - --#define HAVE_PRIVATE_REPORTER -+#ifdef HAVE_PRIVATE_REPORTER - class PrivateReporter MOZ_FINAL : public MemoryUniReporter - { - public: -@@ -443,21 +517,10 @@ public: - - NS_IMETHOD GetAmount(int64_t* aAmount) - { -- PROCESS_MEMORY_COUNTERS_EX pmcex; -- pmcex.cb = sizeof(PROCESS_MEMORY_COUNTERS_EX); -- -- if (!GetProcessMemoryInfo( -- GetCurrentProcess(), -- (PPROCESS_MEMORY_COUNTERS) &pmcex, sizeof(pmcex))) { -- return NS_ERROR_FAILURE; -- } -- -- *aAmount = pmcex.PrivateUsage; -- return NS_OK; -+ return PrivateDistinguishedAmount(aAmount); - } - }; -- --#endif // XP_<PLATFORM> -+#endif - - #ifdef HAVE_VSIZE_AND_RESIDENT_REPORTERS - class VsizeReporter MOZ_FINAL : public MemoryUniReporter |