1
0
mirror of https://git.FreeBSD.org/ports.git synced 2025-02-02 11:09:29 +00:00

Switch from using struct plimit with a kvm_read to using getrlimit to retrieve

RLIMIT_RSS.

PR:		62508
This commit is contained in:
Joe Marcus Clarke 2004-02-08 03:52:20 +00:00
parent a3b35377b9
commit 8c7df726a3
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=100338

View File

@ -1,9 +1,22 @@
--- sysdeps/freebsd/procmem.c.orig Fri May 28 03:56:49 1999
+++ sysdeps/freebsd/procmem.c Sun Sep 7 21:37:38 2003
@@ -137,6 +137,23 @@
--- sysdeps/freebsd/procmem.c.orig Sun Oct 19 12:55:32 2003
+++ sysdeps/freebsd/procmem.c Sat Feb 7 22:48:12 2004
@@ -117,7 +117,7 @@
#else
struct vm_object object;
#endif
- struct plimit plimit;
+ struct rlimit rlimit;
int count;
glibtop_init_p (server, (1L << GLIBTOP_SYSDEPS_PROC_MEM), 0);
@@ -137,15 +137,29 @@
return;
}
- if (kvm_read (server->machine.kd,
- (unsigned long) pinfo [0].kp_proc.p_limit,
- (char *) &plimit, sizeof (plimit)) != sizeof (plimit)) {
- glibtop_warn_io_r (server, "kvm_read (plimit)");
+#if __FreeBSD_version >= 500013
+
+#define XXX_P_VMSPACE ki_vmspace
@ -21,10 +34,18 @@
+
+#define XXX_P_VMSPACE kp_proc.p_vmspace
+
if (kvm_read (server->machine.kd,
(unsigned long) pinfo [0].kp_proc.p_limit,
(char *) &plimit, sizeof (plimit)) != sizeof (plimit)) {
@@ -154,11 +171,12 @@
+ if (getrlimit (RLIMIT_RSS, &rlimit) < 0) {
+ glibtop_warn_io_r (server, "getrlimit");
return;
}
- buf->rss_rlim = (u_int64_t)
- (plimit.pl_rlimit [RLIMIT_RSS].rlim_cur);
+ buf->rss_rlim = (u_int64_t) (rlimit.rlim_cur);
vms = &pinfo [0].kp_eproc.e_vm;
@@ -154,11 +168,12 @@
buf->resident = buf->rss = (u_int64_t) pagetok
(vms->vm_rssize) << LOG1024;