35 lines
890 B
Plaintext
35 lines
890 B
Plaintext
$NetBSD: patch-af,v 1.4 2007/04/14 20:32:41 veego Exp $
|
|
|
|
--- bsd/pagemeter.cc.orig 2002-03-22 04:23:41.000000000 +0100
|
|
+++ bsd/pagemeter.cc 2007-04-14 22:24:12.000000000 +0200
|
|
@@ -28,7 +28,13 @@
|
|
total_ = total;
|
|
BSDPageInit();
|
|
#ifdef UVM
|
|
+# ifdef VM_UVMEXP2
|
|
+ int params[] = {CTL_VM, VM_UVMEXP2};
|
|
+ size_t prev_size = sizeof (prev_);
|
|
+ sysctl (params, 2, &prev_, &prev_size, NULL, 0);
|
|
+# else
|
|
BSDGetUVMPageStats(&prev_);
|
|
+# endif
|
|
#else
|
|
BSDGetPageStats(&prev_);
|
|
#endif
|
|
@@ -57,8 +63,15 @@
|
|
void PageMeter::getpageinfo (void) {
|
|
// Begin NetBSD-specific code...
|
|
#if defined(UVM)
|
|
+# ifdef VM_UVMEXP2
|
|
+ int params[] = {CTL_VM, VM_UVMEXP2};
|
|
+ struct uvmexp_sysctl uvm;
|
|
+ size_t uvm_size = sizeof (uvm);
|
|
+ sysctl (params, 2, &uvm, &uvm_size, NULL, 0);
|
|
+# else
|
|
struct uvmexp uvm;
|
|
BSDGetUVMPageStats(&uvm);
|
|
+# endif
|
|
#else
|
|
struct vmmeter vm;
|
|
BSDGetPageStats(&vm);
|