]> Zhao Yanbai Git Server - minix.git/commitdiff
no more scheduling queue dumps (kernel will print this over serial);
authorBen Gras <ben@minix3.org>
Mon, 21 Sep 2009 14:47:24 +0000 (14:47 +0000)
committerBen Gras <ben@minix3.org>
Mon, 21 Sep 2009 14:47:24 +0000 (14:47 +0000)
initial vm stats retrieve support

servers/is/dmp.c
servers/is/dmp_kernel.c
servers/is/proto.h

index bc9d1f90151d4d57ef3b1350eb55233d4d3efcfe..5294de241af9f769a439ee3ed20ac322cc14149b 100644 (file)
@@ -8,6 +8,7 @@
  */
 
 #include "inc.h"
+#include <minix/vm.h>
 
 struct hook_entry {
        int key;
@@ -21,7 +22,7 @@ struct hook_entry {
        { F5,   monparams_dmp, "Boot monitor parameters" },
        { F6,   irqtab_dmp, "IRQ hooks and policies" },
        { F7,   kmessages_dmp, "Kernel messages" },
-       { F9,   sched_dmp, "Scheduling queues" },
+       { F8,   vm_dmp, "VM status" },
        { F10,  kenv_dmp, "Kernel parameters" },
        { F11,  timing_dmp, "Timing details (if enabled)" },
        { SF1,  mproc_dmp, "Process manager process table" },
@@ -100,3 +101,11 @@ PUBLIC void mapping_dmp(void)
   printf("\n");
 }
 
+/*===========================================================================*
+ *                             vm_dmp                               *
+ *===========================================================================*/
+PUBLIC void vm_dmp(void)
+{
+       vm_ctl(VCTLP_STATS_MEM, 0);
+
+}
index a5a9c69605b602a7ebcbaad66c4eb22b34edeb88..3f01f5112701ba0a4068f1686b64f00c4aa31c07 100644 (file)
@@ -224,54 +224,6 @@ PUBLIC void image_dmp()
   printf("\n");
 }
 
-/*===========================================================================*
- *                             sched_dmp                                    *
- *===========================================================================*/
-PUBLIC void sched_dmp()
-{
-  struct proc *rdy_head[NR_SCHED_QUEUES];
-  struct kinfo kinfo;
-  register struct proc *rp;
-  vir_bytes ptr_diff;
-  int r;
-
-  /* First obtain a scheduling information. */
-  if ((r = sys_getschedinfo(proc, rdy_head)) != OK) {
-      report("IS","warning: couldn't get copy of process table", r);
-      return;
-  }
-  /* Then obtain kernel addresses to correct pointer information. */
-  if ((r = sys_getkinfo(&kinfo)) != OK) {
-      report("IS","warning: couldn't get kernel addresses", r);
-      return;
-  }
-
-  /* Update all pointers. Nasty pointer algorithmic ... */
-  ptr_diff = (vir_bytes) proc - (vir_bytes) kinfo.proc_addr;
-  for (r=0;r<NR_SCHED_QUEUES; r++)
-      if (rdy_head[r] != NIL_PROC)
-          rdy_head[r] = 
-              (struct proc *)((vir_bytes) rdy_head[r] + ptr_diff);
-  for (rp=BEG_PROC_ADDR; rp < END_PROC_ADDR; rp++)
-      if (rp->p_nextready != NIL_PROC)
-          rp->p_nextready =
-               (struct proc *)((vir_bytes) rp->p_nextready + ptr_diff);
-
-  /* Now show scheduling queues. */
-  printf("Dumping scheduling queues.\n");
-
-  for (r=0;r<NR_SCHED_QUEUES; r++) {
-      rp = rdy_head[r];
-      if (!rp) continue;
-      printf("%2d: ", r);
-      while (rp != NIL_PROC) {
-          printf("%3d ", rp->p_nr);
-          rp = rp->p_nextready;
-      }
-      printf("\n");
-  }
-  printf("\n");
-}
 
 /*===========================================================================*
  *                             kenv_dmp                                     *
@@ -311,9 +263,6 @@ PUBLIC void kenv_dmp()
     printf("- nr_tasks:     %3u\n", kinfo.nr_tasks); 
     printf("- release:      %.6s\n", kinfo.release); 
     printf("- version:      %.6s\n", kinfo.version); 
-#if DEBUG_LOCK_CHECK
-    printf("- relocking:    %d\n", kinfo.relocking); 
-#endif
     printf("\n");
 }
 
@@ -363,7 +312,7 @@ PUBLIC void privileges_dmp()
       return;
   }
 
-  printf("\n--nr-id-name---- -flags- -traps- grants -ipc_to-- -system calls--\n");
+  printf("\n--nr-id-name---- -flags- -traps- grants -ipc_to-- -ipc_sr-- -system calls--\n");
 
   PROCLOOP(rp, oldrp)
         r = -1;
index 7b71b2c49b0557d7e69fe809150268772310884a..617d9f27fd70f48ab5fe88acbc4c35c2da362b8a 100644 (file)
@@ -6,6 +6,7 @@ _PROTOTYPE( int  main, (int argc, char **argv)                          );
 /* dmp.c */
 _PROTOTYPE( int do_fkey_pressed, (message *m)                          );
 _PROTOTYPE( void mapping_dmp, (void)                                   );
+_PROTOTYPE( void vm_dmp, (void)                                        );
 
 /* dmp_kernel.c */
 _PROTOTYPE( void proctab_dmp, (void)                                   );