Date: Sun, 16 Sep 2012 10:25:07 GMT From: svn-freebsd-gecko@chruetertee.ch To: freebsd-gecko@freebsd.org Subject: [SVN-Commit] r1019 - in trunk: mail/thunderbird-esr/files mail/thunderbird/files www/firefox-esr/files www/firefox-nightly/files www/firefox/files www/libxul-esr/files www/libxul/files www/seamonkey/files Message-ID: <201209161025.q8GAP7YW077591@trillian.chruetertee.ch>
next in thread | raw e-mail | index | archive | help
Author: jbeich
Date: Sun Sep 16 10:25:07 2012
New Revision: 1019
Log:
add more reporters in about:memory
page-faults-hard
page-faults-soft
resident
vsize
Added:
trunk/mail/thunderbird-esr/files/patch-bug791366
trunk/mail/thunderbird/files/patch-bug791366
trunk/www/firefox-esr/files/patch-bug791366
trunk/www/firefox-nightly/files/patch-bug791366
trunk/www/firefox/files/patch-bug791366
trunk/www/libxul-esr/files/patch-bug791366
trunk/www/libxul/files/patch-bug791366
trunk/www/seamonkey/files/patch-bug791366
Added: trunk/mail/thunderbird-esr/files/patch-bug791366
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ trunk/mail/thunderbird-esr/files/patch-bug791366 Sun Sep 16 10:25:07 2012 (r1019)
@@ -0,0 +1,124 @@
+diff --git mozilla/xpcom/base/nsMemoryReporterManager.cpp mozilla/xpcom/base/nsMemoryReporterManager.cpp
+index a9aff58..674e757 100644
+--- mozilla/xpcom/base/nsMemoryReporterManager.cpp
++++ mozilla/xpcom/base/nsMemoryReporterManager.cpp
+@@ -64,7 +64,7 @@ extern void jemalloc_stats(jemalloc_stat
+ # endif // XP_LINUX
+ #endif // MOZ_MEMORY
+
+-#if defined(XP_LINUX) || defined(XP_MACOSX)
++#ifdef XP_UNIX
+
+ #include <sys/time.h>
+ #include <sys/resource.h>
+@@ -122,6 +122,78 @@ static PRInt64 GetResident()
+ return GetProcSelfStatmField(1);
+ }
+
++#elif defined(__DragonFly__) || defined(__FreeBSD__) \
++ || defined(__NetBSD__) || defined(__OpenBSD__)
++
++#include <sys/param.h>
++#include <sys/sysctl.h>
++#if defined(__DragonFly__) || defined(__FreeBSD__)
++#include <sys/user.h>
++#endif
++
++#include <unistd.h>
++
++#if defined(__NetBSD__)
++#undef KERN_PROC
++#define KERN_PROC KERN_PROC2
++#define KINFO_PROC struct kinfo_proc2
++#else
++#define KINFO_PROC struct kinfo_proc
++#endif
++
++#if defined(__DragonFly__)
++#define KP_SIZE(kp) (kp.kp_vm_map_size)
++#define KP_RSS(kp) (kp.kp_vm_rssize * getpagesize())
++#elif defined(__FreeBSD__)
++#define KP_SIZE(kp) (kp.ki_size)
++#define KP_RSS(kp) (kp.ki_rssize * getpagesize())
++#elif defined(__NetBSD__)
++#define KP_SIZE(kp) (kp.p_vm_msize * getpagesize())
++#define KP_RSS(kp) (kp.p_vm_rssize * getpagesize())
++#elif defined(__OpenBSD__)
++#define KP_SIZE(kp) ((kp.p_vm_dsize + kp.p_vm_ssize \
++ + kp.p_vm_tsize) * getpagesize())
++#define KP_RSS(kp) (kp.p_vm_rssize * getpagesize())
++#endif
++
++static nsresult GetKinfoProcSelf(KINFO_PROC *proc)
++{
++ int mib[] = {
++ CTL_KERN,
++ KERN_PROC,
++ KERN_PROC_PID,
++ getpid(),
++#if defined(__NetBSD__) || defined(__OpenBSD__)
++ sizeof(KINFO_PROC),
++ 1,
++#endif
++ };
++ u_int miblen = sizeof(mib) / sizeof(mib[0]);
++ size_t size = sizeof(KINFO_PROC);
++ if (sysctl(mib, miblen, proc, &size, NULL, 0))
++ return NS_ERROR_FAILURE;
++
++ return NS_OK;
++}
++
++static PRInt64 GetVsize()
++{
++ KINFO_PROC proc;
++ if (NS_SUCCEEDED(GetKinfoProcSelf(&proc)))
++ return KP_SIZE(proc);
++
++ return -1;
++}
++
++static PRInt64 GetResident()
++{
++ KINFO_PROC proc;
++ if (NS_SUCCEEDED(GetKinfoProcSelf(&proc)))
++ return KP_RSS(proc);
++
++ return -1;
++}
++
+ #elif defined(XP_MACOSX)
+
+ #include <mach/mach_init.h>
+@@ -224,7 +297,7 @@ static PRInt64 GetResident()
+
+ #endif
+
+-#if defined(XP_LINUX) || defined(XP_MACOSX) || defined(XP_WIN)
++#if defined(XP_UNIX) || defined(XP_WIN)
+ NS_MEMORY_REPORTER_IMPLEMENT(Vsize,
+ "vsize",
+ KIND_OTHER,
+@@ -239,7 +312,7 @@ NS_MEMORY_REPORTER_IMPLEMENT(Vsize,
+ "measure of the memory resources used by the process.")
+ #endif
+
+-#if defined(XP_LINUX) || defined(XP_MACOSX)
++#if defined(XP_UNIX)
+ NS_MEMORY_REPORTER_IMPLEMENT(PageFaultsSoft,
+ "page-faults-soft",
+ KIND_OTHER,
+@@ -457,11 +530,11 @@ nsMemoryReporterManager::Init()
+ REGISTER(HeapUnallocated);
+ REGISTER(Resident);
+
+-#if defined(XP_LINUX) || defined(XP_MACOSX) || defined(XP_WIN)
++#if defined(XP_UNIX) || defined(XP_WIN)
+ REGISTER(Vsize);
+ #endif
+
+-#if defined(XP_LINUX) || defined(XP_MACOSX)
++#if defined(XP_UNIX)
+ REGISTER(PageFaultsSoft);
+ REGISTER(PageFaultsHard);
+ #endif
Added: trunk/mail/thunderbird/files/patch-bug791366
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ trunk/mail/thunderbird/files/patch-bug791366 Sun Sep 16 10:25:07 2012 (r1019)
@@ -0,0 +1,95 @@
+diff --git mozilla/xpcom/base/nsMemoryReporterManager.cpp mozilla/xpcom/base/nsMemoryReporterManager.cpp
+index a9aff58..674e757 100644
+--- mozilla/xpcom/base/nsMemoryReporterManager.cpp
++++ mozilla/xpcom/base/nsMemoryReporterManager.cpp
+@@ -32,7 +32,7 @@ using namespace mozilla;
+ # include "jemalloc.h"
+ #endif // MOZ_MEMORY
+
+-#if defined(XP_LINUX) || defined(XP_MACOSX) || defined(SOLARIS)
++#ifdef XP_UNIX
+
+ #include <sys/time.h>
+ #include <sys/resource.h>
+@@ -95,6 +95,81 @@ static nsresult GetResident(PRInt64 *n)
+ return GetProcSelfStatmField(1, n);
+ }
+
++#elif defined(__DragonFly__) || defined(__FreeBSD__) \
++ || defined(__NetBSD__) || defined(__OpenBSD__)
++
++#include <sys/param.h>
++#include <sys/sysctl.h>
++#if defined(__DragonFly__) || defined(__FreeBSD__)
++#include <sys/user.h>
++#endif
++
++#include <unistd.h>
++
++#if defined(__NetBSD__)
++#undef KERN_PROC
++#define KERN_PROC KERN_PROC2
++#define KINFO_PROC struct kinfo_proc2
++#else
++#define KINFO_PROC struct kinfo_proc
++#endif
++
++#if defined(__DragonFly__)
++#define KP_SIZE(kp) (kp.kp_vm_map_size)
++#define KP_RSS(kp) (kp.kp_vm_rssize * getpagesize())
++#elif defined(__FreeBSD__)
++#define KP_SIZE(kp) (kp.ki_size)
++#define KP_RSS(kp) (kp.ki_rssize * getpagesize())
++#elif defined(__NetBSD__)
++#define KP_SIZE(kp) (kp.p_vm_msize * getpagesize())
++#define KP_RSS(kp) (kp.p_vm_rssize * getpagesize())
++#elif defined(__OpenBSD__)
++#define KP_SIZE(kp) ((kp.p_vm_dsize + kp.p_vm_ssize \
++ + kp.p_vm_tsize) * getpagesize())
++#define KP_RSS(kp) (kp.p_vm_rssize * getpagesize())
++#endif
++
++static nsresult GetKinfoProcSelf(KINFO_PROC *proc)
++{
++ int mib[] = {
++ CTL_KERN,
++ KERN_PROC,
++ KERN_PROC_PID,
++ getpid(),
++#if defined(__NetBSD__) || defined(__OpenBSD__)
++ sizeof(KINFO_PROC),
++ 1,
++#endif
++ };
++ u_int miblen = sizeof(mib) / sizeof(mib[0]);
++ size_t size = sizeof(KINFO_PROC);
++ if (sysctl(mib, miblen, proc, &size, NULL, 0))
++ return NS_ERROR_FAILURE;
++
++ return NS_OK;
++}
++
++#define HAVE_VSIZE_AND_RESIDENT_REPORTERS 1
++static nsresult GetVsize(PRInt64 *n)
++{
++ KINFO_PROC proc;
++ nsresult rv = GetKinfoProcSelf(&proc);
++ if (NS_SUCCEEDED(rv))
++ *n = KP_SIZE(proc);
++
++ return rv;
++}
++
++static nsresult GetResident(PRInt64 *n)
++{
++ KINFO_PROC proc;
++ nsresult rv = GetKinfoProcSelf(&proc);
++ if (NS_SUCCEEDED(rv))
++ *n = KP_RSS(proc);
++
++ return rv;
++}
++
+ #elif defined(SOLARIS)
+
+ #include <procfs.h>
Added: trunk/www/firefox-esr/files/patch-bug791366
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ trunk/www/firefox-esr/files/patch-bug791366 Sun Sep 16 10:25:07 2012 (r1019)
@@ -0,0 +1,124 @@
+diff --git xpcom/base/nsMemoryReporterManager.cpp xpcom/base/nsMemoryReporterManager.cpp
+index a9aff58..674e757 100644
+--- xpcom/base/nsMemoryReporterManager.cpp
++++ xpcom/base/nsMemoryReporterManager.cpp
+@@ -64,7 +64,7 @@ extern void jemalloc_stats(jemalloc_stat
+ # endif // XP_LINUX
+ #endif // MOZ_MEMORY
+
+-#if defined(XP_LINUX) || defined(XP_MACOSX)
++#ifdef XP_UNIX
+
+ #include <sys/time.h>
+ #include <sys/resource.h>
+@@ -122,6 +122,78 @@ static PRInt64 GetResident()
+ return GetProcSelfStatmField(1);
+ }
+
++#elif defined(__DragonFly__) || defined(__FreeBSD__) \
++ || defined(__NetBSD__) || defined(__OpenBSD__)
++
++#include <sys/param.h>
++#include <sys/sysctl.h>
++#if defined(__DragonFly__) || defined(__FreeBSD__)
++#include <sys/user.h>
++#endif
++
++#include <unistd.h>
++
++#if defined(__NetBSD__)
++#undef KERN_PROC
++#define KERN_PROC KERN_PROC2
++#define KINFO_PROC struct kinfo_proc2
++#else
++#define KINFO_PROC struct kinfo_proc
++#endif
++
++#if defined(__DragonFly__)
++#define KP_SIZE(kp) (kp.kp_vm_map_size)
++#define KP_RSS(kp) (kp.kp_vm_rssize * getpagesize())
++#elif defined(__FreeBSD__)
++#define KP_SIZE(kp) (kp.ki_size)
++#define KP_RSS(kp) (kp.ki_rssize * getpagesize())
++#elif defined(__NetBSD__)
++#define KP_SIZE(kp) (kp.p_vm_msize * getpagesize())
++#define KP_RSS(kp) (kp.p_vm_rssize * getpagesize())
++#elif defined(__OpenBSD__)
++#define KP_SIZE(kp) ((kp.p_vm_dsize + kp.p_vm_ssize \
++ + kp.p_vm_tsize) * getpagesize())
++#define KP_RSS(kp) (kp.p_vm_rssize * getpagesize())
++#endif
++
++static nsresult GetKinfoProcSelf(KINFO_PROC *proc)
++{
++ int mib[] = {
++ CTL_KERN,
++ KERN_PROC,
++ KERN_PROC_PID,
++ getpid(),
++#if defined(__NetBSD__) || defined(__OpenBSD__)
++ sizeof(KINFO_PROC),
++ 1,
++#endif
++ };
++ u_int miblen = sizeof(mib) / sizeof(mib[0]);
++ size_t size = sizeof(KINFO_PROC);
++ if (sysctl(mib, miblen, proc, &size, NULL, 0))
++ return NS_ERROR_FAILURE;
++
++ return NS_OK;
++}
++
++static PRInt64 GetVsize()
++{
++ KINFO_PROC proc;
++ if (NS_SUCCEEDED(GetKinfoProcSelf(&proc)))
++ return KP_SIZE(proc);
++
++ return -1;
++}
++
++static PRInt64 GetResident()
++{
++ KINFO_PROC proc;
++ if (NS_SUCCEEDED(GetKinfoProcSelf(&proc)))
++ return KP_RSS(proc);
++
++ return -1;
++}
++
+ #elif defined(XP_MACOSX)
+
+ #include <mach/mach_init.h>
+@@ -224,7 +297,7 @@ static PRInt64 GetResident()
+
+ #endif
+
+-#if defined(XP_LINUX) || defined(XP_MACOSX) || defined(XP_WIN)
++#if defined(XP_UNIX) || defined(XP_WIN)
+ NS_MEMORY_REPORTER_IMPLEMENT(Vsize,
+ "vsize",
+ KIND_OTHER,
+@@ -239,7 +312,7 @@ NS_MEMORY_REPORTER_IMPLEMENT(Vsize,
+ "measure of the memory resources used by the process.")
+ #endif
+
+-#if defined(XP_LINUX) || defined(XP_MACOSX)
++#if defined(XP_UNIX)
+ NS_MEMORY_REPORTER_IMPLEMENT(PageFaultsSoft,
+ "page-faults-soft",
+ KIND_OTHER,
+@@ -457,11 +530,11 @@ nsMemoryReporterManager::Init()
+ REGISTER(HeapUnallocated);
+ REGISTER(Resident);
+
+-#if defined(XP_LINUX) || defined(XP_MACOSX) || defined(XP_WIN)
++#if defined(XP_UNIX) || defined(XP_WIN)
+ REGISTER(Vsize);
+ #endif
+
+-#if defined(XP_LINUX) || defined(XP_MACOSX)
++#if defined(XP_UNIX)
+ REGISTER(PageFaultsSoft);
+ REGISTER(PageFaultsHard);
+ #endif
Added: trunk/www/firefox-nightly/files/patch-bug791366
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ trunk/www/firefox-nightly/files/patch-bug791366 Sun Sep 16 10:25:07 2012 (r1019)
@@ -0,0 +1,95 @@
+diff --git xpcom/base/nsMemoryReporterManager.cpp xpcom/base/nsMemoryReporterManager.cpp
+index a9aff58..674e757 100644
+--- xpcom/base/nsMemoryReporterManager.cpp
++++ xpcom/base/nsMemoryReporterManager.cpp
+@@ -32,7 +32,7 @@ using namespace mozilla;
+ # include "jemalloc.h"
+ #endif // MOZ_MEMORY
+
+-#if defined(XP_LINUX) || defined(XP_MACOSX) || defined(SOLARIS)
++#ifdef XP_UNIX
+
+ #include <sys/time.h>
+ #include <sys/resource.h>
+@@ -95,6 +95,81 @@ static nsresult GetResident(int64_t *n)
+ return GetProcSelfStatmField(1, n);
+ }
+
++#elif defined(__DragonFly__) || defined(__FreeBSD__) \
++ || defined(__NetBSD__) || defined(__OpenBSD__)
++
++#include <sys/param.h>
++#include <sys/sysctl.h>
++#if defined(__DragonFly__) || defined(__FreeBSD__)
++#include <sys/user.h>
++#endif
++
++#include <unistd.h>
++
++#if defined(__NetBSD__)
++#undef KERN_PROC
++#define KERN_PROC KERN_PROC2
++#define KINFO_PROC struct kinfo_proc2
++#else
++#define KINFO_PROC struct kinfo_proc
++#endif
++
++#if defined(__DragonFly__)
++#define KP_SIZE(kp) (kp.kp_vm_map_size)
++#define KP_RSS(kp) (kp.kp_vm_rssize * getpagesize())
++#elif defined(__FreeBSD__)
++#define KP_SIZE(kp) (kp.ki_size)
++#define KP_RSS(kp) (kp.ki_rssize * getpagesize())
++#elif defined(__NetBSD__)
++#define KP_SIZE(kp) (kp.p_vm_msize * getpagesize())
++#define KP_RSS(kp) (kp.p_vm_rssize * getpagesize())
++#elif defined(__OpenBSD__)
++#define KP_SIZE(kp) ((kp.p_vm_dsize + kp.p_vm_ssize \
++ + kp.p_vm_tsize) * getpagesize())
++#define KP_RSS(kp) (kp.p_vm_rssize * getpagesize())
++#endif
++
++static nsresult GetKinfoProcSelf(KINFO_PROC *proc)
++{
++ int mib[] = {
++ CTL_KERN,
++ KERN_PROC,
++ KERN_PROC_PID,
++ getpid(),
++#if defined(__NetBSD__) || defined(__OpenBSD__)
++ sizeof(KINFO_PROC),
++ 1,
++#endif
++ };
++ u_int miblen = sizeof(mib) / sizeof(mib[0]);
++ size_t size = sizeof(KINFO_PROC);
++ if (sysctl(mib, miblen, proc, &size, NULL, 0))
++ return NS_ERROR_FAILURE;
++
++ return NS_OK;
++}
++
++#define HAVE_VSIZE_AND_RESIDENT_REPORTERS 1
++static nsresult GetVsize(int64_t *n)
++{
++ KINFO_PROC proc;
++ nsresult rv = GetKinfoProcSelf(&proc);
++ if (NS_SUCCEEDED(rv))
++ *n = KP_SIZE(proc);
++
++ return rv;
++}
++
++static nsresult GetResident(int64_t *n)
++{
++ KINFO_PROC proc;
++ nsresult rv = GetKinfoProcSelf(&proc);
++ if (NS_SUCCEEDED(rv))
++ *n = KP_RSS(proc);
++
++ return rv;
++}
++
+ #elif defined(SOLARIS)
+
+ #include <procfs.h>
Added: trunk/www/firefox/files/patch-bug791366
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ trunk/www/firefox/files/patch-bug791366 Sun Sep 16 10:25:07 2012 (r1019)
@@ -0,0 +1,95 @@
+diff --git xpcom/base/nsMemoryReporterManager.cpp xpcom/base/nsMemoryReporterManager.cpp
+index a9aff58..674e757 100644
+--- xpcom/base/nsMemoryReporterManager.cpp
++++ xpcom/base/nsMemoryReporterManager.cpp
+@@ -32,7 +32,7 @@ using namespace mozilla;
+ # include "jemalloc.h"
+ #endif // MOZ_MEMORY
+
+-#if defined(XP_LINUX) || defined(XP_MACOSX) || defined(SOLARIS)
++#ifdef XP_UNIX
+
+ #include <sys/time.h>
+ #include <sys/resource.h>
+@@ -95,6 +95,81 @@ static nsresult GetResident(PRInt64 *n)
+ return GetProcSelfStatmField(1, n);
+ }
+
++#elif defined(__DragonFly__) || defined(__FreeBSD__) \
++ || defined(__NetBSD__) || defined(__OpenBSD__)
++
++#include <sys/param.h>
++#include <sys/sysctl.h>
++#if defined(__DragonFly__) || defined(__FreeBSD__)
++#include <sys/user.h>
++#endif
++
++#include <unistd.h>
++
++#if defined(__NetBSD__)
++#undef KERN_PROC
++#define KERN_PROC KERN_PROC2
++#define KINFO_PROC struct kinfo_proc2
++#else
++#define KINFO_PROC struct kinfo_proc
++#endif
++
++#if defined(__DragonFly__)
++#define KP_SIZE(kp) (kp.kp_vm_map_size)
++#define KP_RSS(kp) (kp.kp_vm_rssize * getpagesize())
++#elif defined(__FreeBSD__)
++#define KP_SIZE(kp) (kp.ki_size)
++#define KP_RSS(kp) (kp.ki_rssize * getpagesize())
++#elif defined(__NetBSD__)
++#define KP_SIZE(kp) (kp.p_vm_msize * getpagesize())
++#define KP_RSS(kp) (kp.p_vm_rssize * getpagesize())
++#elif defined(__OpenBSD__)
++#define KP_SIZE(kp) ((kp.p_vm_dsize + kp.p_vm_ssize \
++ + kp.p_vm_tsize) * getpagesize())
++#define KP_RSS(kp) (kp.p_vm_rssize * getpagesize())
++#endif
++
++static nsresult GetKinfoProcSelf(KINFO_PROC *proc)
++{
++ int mib[] = {
++ CTL_KERN,
++ KERN_PROC,
++ KERN_PROC_PID,
++ getpid(),
++#if defined(__NetBSD__) || defined(__OpenBSD__)
++ sizeof(KINFO_PROC),
++ 1,
++#endif
++ };
++ u_int miblen = sizeof(mib) / sizeof(mib[0]);
++ size_t size = sizeof(KINFO_PROC);
++ if (sysctl(mib, miblen, proc, &size, NULL, 0))
++ return NS_ERROR_FAILURE;
++
++ return NS_OK;
++}
++
++#define HAVE_VSIZE_AND_RESIDENT_REPORTERS 1
++static nsresult GetVsize(PRInt64 *n)
++{
++ KINFO_PROC proc;
++ nsresult rv = GetKinfoProcSelf(&proc);
++ if (NS_SUCCEEDED(rv))
++ *n = KP_SIZE(proc);
++
++ return rv;
++}
++
++static nsresult GetResident(PRInt64 *n)
++{
++ KINFO_PROC proc;
++ nsresult rv = GetKinfoProcSelf(&proc);
++ if (NS_SUCCEEDED(rv))
++ *n = KP_RSS(proc);
++
++ return rv;
++}
++
+ #elif defined(SOLARIS)
+
+ #include <procfs.h>
Added: trunk/www/libxul-esr/files/patch-bug791366
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ trunk/www/libxul-esr/files/patch-bug791366 Sun Sep 16 10:25:07 2012 (r1019)
@@ -0,0 +1,124 @@
+diff --git xpcom/base/nsMemoryReporterManager.cpp xpcom/base/nsMemoryReporterManager.cpp
+index a9aff58..674e757 100644
+--- xpcom/base/nsMemoryReporterManager.cpp
++++ xpcom/base/nsMemoryReporterManager.cpp
+@@ -64,7 +64,7 @@ extern void jemalloc_stats(jemalloc_stat
+ # endif // XP_LINUX
+ #endif // MOZ_MEMORY
+
+-#if defined(XP_LINUX) || defined(XP_MACOSX)
++#ifdef XP_UNIX
+
+ #include <sys/time.h>
+ #include <sys/resource.h>
+@@ -122,6 +122,78 @@ static PRInt64 GetResident()
+ return GetProcSelfStatmField(1);
+ }
+
++#elif defined(__DragonFly__) || defined(__FreeBSD__) \
++ || defined(__NetBSD__) || defined(__OpenBSD__)
++
++#include <sys/param.h>
++#include <sys/sysctl.h>
++#if defined(__DragonFly__) || defined(__FreeBSD__)
++#include <sys/user.h>
++#endif
++
++#include <unistd.h>
++
++#if defined(__NetBSD__)
++#undef KERN_PROC
++#define KERN_PROC KERN_PROC2
++#define KINFO_PROC struct kinfo_proc2
++#else
++#define KINFO_PROC struct kinfo_proc
++#endif
++
++#if defined(__DragonFly__)
++#define KP_SIZE(kp) (kp.kp_vm_map_size)
++#define KP_RSS(kp) (kp.kp_vm_rssize * getpagesize())
++#elif defined(__FreeBSD__)
++#define KP_SIZE(kp) (kp.ki_size)
++#define KP_RSS(kp) (kp.ki_rssize * getpagesize())
++#elif defined(__NetBSD__)
++#define KP_SIZE(kp) (kp.p_vm_msize * getpagesize())
++#define KP_RSS(kp) (kp.p_vm_rssize * getpagesize())
++#elif defined(__OpenBSD__)
++#define KP_SIZE(kp) ((kp.p_vm_dsize + kp.p_vm_ssize \
++ + kp.p_vm_tsize) * getpagesize())
++#define KP_RSS(kp) (kp.p_vm_rssize * getpagesize())
++#endif
++
++static nsresult GetKinfoProcSelf(KINFO_PROC *proc)
++{
++ int mib[] = {
++ CTL_KERN,
++ KERN_PROC,
++ KERN_PROC_PID,
++ getpid(),
++#if defined(__NetBSD__) || defined(__OpenBSD__)
++ sizeof(KINFO_PROC),
++ 1,
++#endif
++ };
++ u_int miblen = sizeof(mib) / sizeof(mib[0]);
++ size_t size = sizeof(KINFO_PROC);
++ if (sysctl(mib, miblen, proc, &size, NULL, 0))
++ return NS_ERROR_FAILURE;
++
++ return NS_OK;
++}
++
++static PRInt64 GetVsize()
++{
++ KINFO_PROC proc;
++ if (NS_SUCCEEDED(GetKinfoProcSelf(&proc)))
++ return KP_SIZE(proc);
++
++ return -1;
++}
++
++static PRInt64 GetResident()
++{
++ KINFO_PROC proc;
++ if (NS_SUCCEEDED(GetKinfoProcSelf(&proc)))
++ return KP_RSS(proc);
++
++ return -1;
++}
++
+ #elif defined(XP_MACOSX)
+
+ #include <mach/mach_init.h>
+@@ -224,7 +297,7 @@ static PRInt64 GetResident()
+
+ #endif
+
+-#if defined(XP_LINUX) || defined(XP_MACOSX) || defined(XP_WIN)
++#if defined(XP_UNIX) || defined(XP_WIN)
+ NS_MEMORY_REPORTER_IMPLEMENT(Vsize,
+ "vsize",
+ KIND_OTHER,
+@@ -239,7 +312,7 @@ NS_MEMORY_REPORTER_IMPLEMENT(Vsize,
+ "measure of the memory resources used by the process.")
+ #endif
+
+-#if defined(XP_LINUX) || defined(XP_MACOSX)
++#if defined(XP_UNIX)
+ NS_MEMORY_REPORTER_IMPLEMENT(PageFaultsSoft,
+ "page-faults-soft",
+ KIND_OTHER,
+@@ -457,11 +530,11 @@ nsMemoryReporterManager::Init()
+ REGISTER(HeapUnallocated);
+ REGISTER(Resident);
+
+-#if defined(XP_LINUX) || defined(XP_MACOSX) || defined(XP_WIN)
++#if defined(XP_UNIX) || defined(XP_WIN)
+ REGISTER(Vsize);
+ #endif
+
+-#if defined(XP_LINUX) || defined(XP_MACOSX)
++#if defined(XP_UNIX)
+ REGISTER(PageFaultsSoft);
+ REGISTER(PageFaultsHard);
+ #endif
Added: trunk/www/libxul/files/patch-bug791366
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ trunk/www/libxul/files/patch-bug791366 Sun Sep 16 10:25:07 2012 (r1019)
@@ -0,0 +1,95 @@
+diff --git xpcom/base/nsMemoryReporterManager.cpp xpcom/base/nsMemoryReporterManager.cpp
+index a9aff58..674e757 100644
+--- xpcom/base/nsMemoryReporterManager.cpp
++++ xpcom/base/nsMemoryReporterManager.cpp
+@@ -32,7 +32,7 @@ using namespace mozilla;
+ # include "jemalloc.h"
+ #endif // MOZ_MEMORY
+
+-#if defined(XP_LINUX) || defined(XP_MACOSX) || defined(SOLARIS)
++#ifdef XP_UNIX
+
+ #include <sys/time.h>
+ #include <sys/resource.h>
+@@ -95,6 +95,81 @@ static nsresult GetResident(PRInt64 *n)
+ return GetProcSelfStatmField(1, n);
+ }
+
++#elif defined(__DragonFly__) || defined(__FreeBSD__) \
++ || defined(__NetBSD__) || defined(__OpenBSD__)
++
++#include <sys/param.h>
++#include <sys/sysctl.h>
++#if defined(__DragonFly__) || defined(__FreeBSD__)
++#include <sys/user.h>
++#endif
++
++#include <unistd.h>
++
++#if defined(__NetBSD__)
++#undef KERN_PROC
++#define KERN_PROC KERN_PROC2
++#define KINFO_PROC struct kinfo_proc2
++#else
++#define KINFO_PROC struct kinfo_proc
++#endif
++
++#if defined(__DragonFly__)
++#define KP_SIZE(kp) (kp.kp_vm_map_size)
++#define KP_RSS(kp) (kp.kp_vm_rssize * getpagesize())
++#elif defined(__FreeBSD__)
++#define KP_SIZE(kp) (kp.ki_size)
++#define KP_RSS(kp) (kp.ki_rssize * getpagesize())
++#elif defined(__NetBSD__)
++#define KP_SIZE(kp) (kp.p_vm_msize * getpagesize())
++#define KP_RSS(kp) (kp.p_vm_rssize * getpagesize())
++#elif defined(__OpenBSD__)
++#define KP_SIZE(kp) ((kp.p_vm_dsize + kp.p_vm_ssize \
++ + kp.p_vm_tsize) * getpagesize())
++#define KP_RSS(kp) (kp.p_vm_rssize * getpagesize())
++#endif
++
++static nsresult GetKinfoProcSelf(KINFO_PROC *proc)
++{
++ int mib[] = {
++ CTL_KERN,
++ KERN_PROC,
++ KERN_PROC_PID,
++ getpid(),
++#if defined(__NetBSD__) || defined(__OpenBSD__)
++ sizeof(KINFO_PROC),
++ 1,
++#endif
++ };
++ u_int miblen = sizeof(mib) / sizeof(mib[0]);
++ size_t size = sizeof(KINFO_PROC);
++ if (sysctl(mib, miblen, proc, &size, NULL, 0))
++ return NS_ERROR_FAILURE;
++
++ return NS_OK;
++}
++
++#define HAVE_VSIZE_AND_RESIDENT_REPORTERS 1
++static nsresult GetVsize(PRInt64 *n)
++{
++ KINFO_PROC proc;
++ nsresult rv = GetKinfoProcSelf(&proc);
++ if (NS_SUCCEEDED(rv))
++ *n = KP_SIZE(proc);
++
++ return rv;
++}
++
++static nsresult GetResident(PRInt64 *n)
++{
++ KINFO_PROC proc;
++ nsresult rv = GetKinfoProcSelf(&proc);
++ if (NS_SUCCEEDED(rv))
++ *n = KP_RSS(proc);
++
++ return rv;
++}
++
+ #elif defined(SOLARIS)
+
+ #include <procfs.h>
Added: trunk/www/seamonkey/files/patch-bug791366
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ trunk/www/seamonkey/files/patch-bug791366 Sun Sep 16 10:25:07 2012 (r1019)
@@ -0,0 +1,95 @@
+diff --git mozilla/xpcom/base/nsMemoryReporterManager.cpp mozilla/xpcom/base/nsMemoryReporterManager.cpp
+index a9aff58..674e757 100644
+--- mozilla/xpcom/base/nsMemoryReporterManager.cpp
++++ mozilla/xpcom/base/nsMemoryReporterManager.cpp
+@@ -32,7 +32,7 @@ using namespace mozilla;
+ # include "jemalloc.h"
+ #endif // MOZ_MEMORY
+
+-#if defined(XP_LINUX) || defined(XP_MACOSX) || defined(SOLARIS)
++#ifdef XP_UNIX
+
+ #include <sys/time.h>
+ #include <sys/resource.h>
+@@ -95,6 +95,81 @@ static nsresult GetResident(PRInt64 *n)
+ return GetProcSelfStatmField(1, n);
+ }
+
++#elif defined(__DragonFly__) || defined(__FreeBSD__) \
++ || defined(__NetBSD__) || defined(__OpenBSD__)
++
++#include <sys/param.h>
++#include <sys/sysctl.h>
++#if defined(__DragonFly__) || defined(__FreeBSD__)
++#include <sys/user.h>
++#endif
++
++#include <unistd.h>
++
++#if defined(__NetBSD__)
++#undef KERN_PROC
++#define KERN_PROC KERN_PROC2
++#define KINFO_PROC struct kinfo_proc2
++#else
++#define KINFO_PROC struct kinfo_proc
++#endif
++
++#if defined(__DragonFly__)
++#define KP_SIZE(kp) (kp.kp_vm_map_size)
++#define KP_RSS(kp) (kp.kp_vm_rssize * getpagesize())
++#elif defined(__FreeBSD__)
++#define KP_SIZE(kp) (kp.ki_size)
++#define KP_RSS(kp) (kp.ki_rssize * getpagesize())
++#elif defined(__NetBSD__)
++#define KP_SIZE(kp) (kp.p_vm_msize * getpagesize())
++#define KP_RSS(kp) (kp.p_vm_rssize * getpagesize())
++#elif defined(__OpenBSD__)
++#define KP_SIZE(kp) ((kp.p_vm_dsize + kp.p_vm_ssize \
++ + kp.p_vm_tsize) * getpagesize())
++#define KP_RSS(kp) (kp.p_vm_rssize * getpagesize())
++#endif
++
++static nsresult GetKinfoProcSelf(KINFO_PROC *proc)
++{
++ int mib[] = {
++ CTL_KERN,
++ KERN_PROC,
++ KERN_PROC_PID,
++ getpid(),
++#if defined(__NetBSD__) || defined(__OpenBSD__)
++ sizeof(KINFO_PROC),
++ 1,
++#endif
++ };
++ u_int miblen = sizeof(mib) / sizeof(mib[0]);
++ size_t size = sizeof(KINFO_PROC);
++ if (sysctl(mib, miblen, proc, &size, NULL, 0))
++ return NS_ERROR_FAILURE;
++
++ return NS_OK;
++}
++
++#define HAVE_VSIZE_AND_RESIDENT_REPORTERS 1
++static nsresult GetVsize(PRInt64 *n)
++{
++ KINFO_PROC proc;
++ nsresult rv = GetKinfoProcSelf(&proc);
++ if (NS_SUCCEEDED(rv))
++ *n = KP_SIZE(proc);
++
++ return rv;
++}
++
++static nsresult GetResident(PRInt64 *n)
++{
++ KINFO_PROC proc;
++ nsresult rv = GetKinfoProcSelf(&proc);
++ if (NS_SUCCEEDED(rv))
++ *n = KP_RSS(proc);
++
++ return rv;
++}
++
+ #elif defined(SOLARIS)
+
+ #include <procfs.h>
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201209161025.q8GAP7YW077591>
