]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/blob - sys/modules/vinum/.gdbinit.vinum
This commit was generated by cvs2svn to compensate for changes in r48730,
[FreeBSD/FreeBSD.git] / sys / modules / vinum / .gdbinit.vinum
1 define rq
2 rqq rq
3 end
4 document rq
5 Show information about the request pointed to by the variable 
6 rq in the current frame.
7 end
8 define rqq
9 set $rq = (struct request *) $arg0
10 printf "Request: \n" 
11 output/x *$rq
12 printf "\n"
13 bpp $rq->bp
14 set $rqg = $rq->rqg
15 while ($rqg != 0)
16   printf "\nRequest group at %x:\n", $rqg
17   output/x *$rqg
18   printf "\n"
19   set $rqno = 0
20   while ($rqno < $rqg->count)
21     printf "rqg->rqe [%d]: ", $rqno
22     rrqe &$rqg->rqe[$rqno]
23     set $rqno = $rqno + 1
24     end
25   set $rqg = $rqg->next
26   end
27 end
28 document rqq
29 Show information about the request (struct rq) pointed at by the parameter
30 end
31 define rqe
32 rrqe rqe
33 end
34 define rrqe
35 set $rqe = (struct rqelement *) $arg0
36     printf "sdoffset 0x%x, useroffset 0x%x, dataoffset 0x%x, datalen 0x%x, groupoffset 0x%x, grouplen 0x%x, buflen 0x%x\n", \
37       $rqe->sdoffset, \
38       $rqe->useroffset, \
39       $rqe->dataoffset, \
40       $rqe->datalen, \
41       $rqe->groupoffset, \
42       $rqe->grouplen, \
43       $rqe->buflen
44     printf "  Flags 0x%x,  Subdisk %d  Drive %d\n", \
45       $rqe->flags, \
46       $rqe->sdno, \
47       $rqe->driveno
48     bpp &$rqe->b
49 end
50 document rqe
51 Show information about the request element pointed to by the
52 variable rqe in the current frame.
53 end
54 document rrqe
55 Show information about the request element (struct rqe) pointed
56 at by the parameter.
57 end
58 define rqq0
59 printf "rq->prq [0].rqe[0].sdno: " 
60 output/x rq->prq[0].rqe[0].sdno
61 printf "\nBuffer: device: " 
62 output/x rq->prq[0].rqe[0].b.b_dev
63 printf " data: " 
64 output/x rq->prq[0].rqe[0].b.b_data
65 printf " length: " 
66 output/x rq->prq[0].rqe[0].b.b_bcount
67 printf " drive offset: " 
68 output/x rq->prq[0].rqe[0].b.b_blkno
69 printf " subdisk offset: " 
70 output/x rq->prq[0].rqe[0].sdoffset
71 printf "\nFlags: " 
72 if (rq->prq[0].rqe[0].b.b_flags & 0x10)
73 printf "busy "
74 end
75 if (rq->prq[0].rqe[0].b.b_flags & 0x200)
76 printf "done "
77 end
78 if (rq->prq[0].rqe[0].b.b_flags & 0x800)
79 printf "error "
80 end
81 if (rq->prq[0].rqe[0].b.b_flags & 0x100000)
82 printf "read "
83 end
84 output/x rq->prq[0].rqe[0].b.b_flags
85 printf "\nrq->prq [0].rqe[1].sdno: " 
86 output/x rq->prq[0].rqe[1].sdno
87 printf "\nBuffer: device: " 
88 output/x rq->prq[0].rqe[1].b.b_dev
89 printf " data: " 
90 output/x rq->prq[0].rqe[1].b.b_data
91 printf " length: " 
92 output/x rq->prq[0].rqe[1].b.b_bcount
93 printf " drive offset: " 
94 output/x rq->prq[0].rqe[1].b.b_blkno
95 printf " subdisk offset: " 
96 output/x rq->prq[0].rqe[1].sdoffset
97 printf "\nFlags: " 
98 output/x rq->prq[0].rqe[1].b.b_flags
99 echo \n
100 end
101 define rqq1
102 printf "\nrq->prq [1].rqe[0].sdno: " 
103 output/x rq->prq[1].rqe[0].sdno
104 printf "\nBuffer: device: " 
105 output/x rq->prq[1].rqe[0].b.b_dev
106 printf " data: " 
107 output/x rq->prq[1].rqe[0].b.b_data
108 printf " length: " 
109 output/x rq->prq[1].rqe[0].b.b_bcount
110 printf " drive offset: " 
111 output/x rq->prq[1].rqe[0].b.b_blkno
112 printf " subdisk offset: " 
113 output/x rq->prq[1].rqe[0].sdoffset
114 printf "\nFlags: " 
115 output/x rq->prq[1].rqe[0].b.b_flags
116 printf "\nrq->prq [1].rqe[1].sdno: " 
117 output/x rq->prq[1].rqe[1].sdno
118 printf "\nBuffer: device: " 
119 output/x rq->prq[1].rqe[1].b.b_dev
120 printf " data: 0x%x  length 0x%x  drive offset 0x%x  sd offset 0x%x\n" rq->prq[1].rqe[1].b.b_data,
121  rq->prq[1].rqe[1].b.b_bcount,
122  rq->prq[1].rqe[1].b.b_blkno,
123  rq->prq[1].rqe[1].sdoffset
124 printf "\nFlags: " 
125 output/x rq->prq[1].rqe[1].b.b_flags
126 echo \n
127 end
128 define xy
129 bpp
130 echo stripeoffset
131 p stripeoffset
132 echo stripebase
133 p stripebase
134 echo sdno
135 p sdno
136 echo sdoffset
137 p sdoffset
138 echo rqe->sectors
139 p rqe->sectors
140 echo rqe->sdoffset
141 p rqe->sdoffset
142 end
143 define rqi
144    set $rqipe = *VC->rqipp
145    set $rqip = $rqipe + 1
146    set $rqend  = VC->rqinfop + 32
147    if ($rqip == $rqend)
148       set $rqip = *VC->rqinfop
149    end
150    set $done = 0
151    while ($done == 0)
152       printf "%X:\t%d.%06d\tUBP: %x\t", $rqip, $rqip->timestamp.tv_sec, $rqip->timestamp.tv_usec, $rqip->bp
153       p $rqip->type
154       bpp $rqip->bp
155       if ($rqip->type < loginfo_rqe)
156          bpp &$rqip->info
157       else 
158          rrqe &$rqip->info
159       end
160       set $rqip = $rqip + 1
161       if ($rqip == $rqipe)
162          set $done = 1
163       end
164       if ($rqip == $rqend)
165          set $rqip = VC->rqinfop
166       end
167    end
168 end