gdb.kernel - Fix functions
authorAlex Hornung <ahornung@gmail.com>
Fri, 10 Sep 2010 08:23:09 +0000 (09:23 +0100)
committerAlex Hornung <ahornung@gmail.com>
Fri, 10 Sep 2010 08:23:55 +0000 (09:23 +0100)
* Fix a bunch of functions in gdb.kernel, as well as some formatting
  issues.

test/debug/gdb.kernel

index 2643e31..e0d500a 100644 (file)
@@ -22,12 +22,12 @@ define pcomm
 end
 
 define lsvfs
-       set $vfc = vfsconf->vfc_next
-       printf "Filesystem      Refs    Flags\n"
+       set $vfc = (struct vfsconf *)vfsconf_list.stqh_first
+       printf "\nFilesystem      Refs    Flags\n"
        while ($vfc != 0)
                printf "%-10s %6d       0x%08x\n", $vfc->vfc_name, \
                        $vfc->vfc_refcount, $vfc->vfc_flags
-               set $vfc = $vfc->vfc_next
+               set $vfc = $vfc->vfc_next.stqe_next
        end
 end
 
@@ -40,7 +40,7 @@ define lsmount
 end
 
 define lsvfsops
-       set $vfc = vfsconf->vfc_next
+       set $vfc = (struct vfsconf *)vfsconf_list.stqh_first
        while ($vfc != 0)
                printf "Filesystem: %s, Refs: %d, Flags: 0x%08x\n", \
                        $vfc->vfc_name, $vfc->vfc_refcount, $vfc->vfc_flags
@@ -48,14 +48,14 @@ define lsvfsops
                set print pretty
                print *$vfc->vfc_vfsops
                set print pretty off
-               set $vfc = $vfc->vfc_next
+               set $vfc = $vfc->vfc_next.stqe_next
        end
 end
 
 
 define kldstat
        set $kld = linker_files.tqh_first
-       printf "Id Refs Address    Size     Name\n"
+       printf "\nId Refs Address    Size     Name\n"
        while ($kld != 0)
                printf "%2d %4d 0x%08x %-8x %s\n", \
                $kld->id, $kld->refs, $kld->address, $kld->size, $kld->filename
@@ -65,7 +65,7 @@ end
 
 define psx 
     set $cpu = 0
-    printf "cpu  pid    thread    flags comm       wchan wmesg\n"
+    printf "\ncpu  pid    thread    flags comm               wchan    wmesg\n"
     while ($cpu < ncpus)
        set $gd = &((struct privatespace *)&CPU_prvspace)[$cpu].mdglobaldata
        set $td = $gd->mi.gd_tdallq.tqh_first
@@ -76,11 +76,11 @@ define psx
                set $pid = -1
            end
            if ( $td->td_wmesg != 0 )
-               printf "%3d %5d %08x %08x %-10s %08x %s\n",     \
+               printf "%3d %5d %08x %08x %-18s %08x %s\n",     \
                    $cpu, $pid, $td, $td->td_flags, $td->td_comm, $td->td_wchan, \
                    $td->td_wmesg
            else
-               printf "%3d %5d %08x %08x %-10s %08x\n",        \
+               printf "%3d %5d %08x %08x %-18s %08x\n",        \
                    $cpu, $pid, $td, $td->td_flags, $td->td_comm, $td->td_wchan
            end
            set $td = $td->td_allq.tqe_next
@@ -92,7 +92,7 @@ end
 
 define running_threads
     set $icpu = 0
-       printf "cpu    curthread    wchan\n"
+       printf "\ncpu    curthread    wchan\n"
        while ($icpu < ncpus)
            set $ipvspace = (struct privatespace *)&CPU_prvspace
                set $gd = $ipvspace[$icpu].mdglobaldata.mi
@@ -106,7 +106,7 @@ end
 define psax
     set $proc = allproc->lh_first
     while $proc != 0
-       printf "%p%6d%10s\n",$proc,$proc->p_pid,$proc->p_thread->td_comm
+       printf "%p%6d%10s\n",$proc,$proc->p_pid,$proc->p_comm
        set $proc = $proc->p_list.le_next
     end
 end