6b940d7a37278d00370014776300c3fc76f1d9d3
[virt-mem.git] / lib / kernel_task_struct.ml
1 let warning =
2   "This code is automatically generated from the kernel database by kerneldb-to-parser program.  Any edits you make will be lost.";;
3 let zero = 0;;
4 let struct_name = "task_struct";;
5 let match_err = "failed to match kernel structure";;
6 exception ParseError of string * string * string;;
7 type t =
8   { task_struct_active_mm : Virt_mem_mmap.addr; task_struct_comm : string;
9     task_struct_mm : Virt_mem_mmap.addr; task_struct_normal_prio : int64;
10     task_struct_pid : int64; task_struct_prio : int64;
11     task_struct_state : int64; task_struct_static_prio : int64;
12     task_struct_tasks'next : Virt_mem_mmap.addr;
13     task_struct_tasks'prev : Virt_mem_mmap.addr
14   };;
15 let parser_1 bits = 
16   bitmatch bits with
17   | { task_struct_state : zero+32 : offset(0), littleendian;
18       task_struct_prio : zero+32 : offset(192), littleendian;
19       task_struct_static_prio : zero+32 : offset(224), littleendian;
20       task_struct_normal_prio : zero+32 : offset(256), littleendian;
21       task_struct_tasks'next : zero+32 : offset(992), littleendian;
22       task_struct_tasks'prev : zero+32 : offset(1024), littleendian;
23       task_struct_mm : zero+32 : offset(1056), littleendian;
24       task_struct_active_mm : zero+32 : offset(1088), littleendian;
25       task_struct_pid : zero+32 : offset(1344), littleendian;
26       task_struct_comm : 128 : offset(3232), string } ->
27       { task_struct_state = task_struct_state;
28         task_struct_prio = task_struct_prio;
29         task_struct_static_prio = task_struct_static_prio;
30         task_struct_normal_prio = task_struct_normal_prio;
31         task_struct_tasks'next = Int64.sub task_struct_tasks'next 124L;
32         task_struct_tasks'prev = Int64.sub task_struct_tasks'prev 128L;
33         task_struct_mm = task_struct_mm;
34         task_struct_active_mm = task_struct_active_mm;
35         task_struct_pid = task_struct_pid;
36         task_struct_comm = task_struct_comm }
37   | { _ } ->
38       raise (ParseError (struct_name, "parser_1", match_err));;
39 let parser_2 bits = 
40   bitmatch bits with
41   | { task_struct_state : zero+32 : offset(0), littleendian;
42       task_struct_prio : zero+32 : offset(160), littleendian;
43       task_struct_static_prio : zero+32 : offset(192), littleendian;
44       task_struct_normal_prio : zero+32 : offset(224), littleendian;
45       task_struct_tasks'next : zero+32 : offset(2144), littleendian;
46       task_struct_tasks'prev : zero+32 : offset(2176), littleendian;
47       task_struct_mm : zero+32 : offset(2208), littleendian;
48       task_struct_active_mm : zero+32 : offset(2240), littleendian;
49       task_struct_pid : zero+32 : offset(2496), littleendian;
50       task_struct_comm : 128 : offset(4512), string } ->
51       { task_struct_state = task_struct_state;
52         task_struct_prio = task_struct_prio;
53         task_struct_static_prio = task_struct_static_prio;
54         task_struct_normal_prio = task_struct_normal_prio;
55         task_struct_tasks'next = Int64.sub task_struct_tasks'next 268L;
56         task_struct_tasks'prev = Int64.sub task_struct_tasks'prev 272L;
57         task_struct_mm = task_struct_mm;
58         task_struct_active_mm = task_struct_active_mm;
59         task_struct_pid = task_struct_pid;
60         task_struct_comm = task_struct_comm }
61   | { _ } ->
62       raise (ParseError (struct_name, "parser_2", match_err));;
63 let parser_3 bits = 
64   bitmatch bits with
65   | { task_struct_state : zero+32 : offset(0), littleendian;
66       task_struct_prio : zero+32 : offset(192), littleendian;
67       task_struct_static_prio : zero+32 : offset(224), littleendian;
68       task_struct_normal_prio : zero+32 : offset(256), littleendian;
69       task_struct_tasks'next : zero+32 : offset(3360), littleendian;
70       task_struct_tasks'prev : zero+32 : offset(3392), littleendian;
71       task_struct_mm : zero+32 : offset(3424), littleendian;
72       task_struct_active_mm : zero+32 : offset(3456), littleendian;
73       task_struct_pid : zero+32 : offset(3712), littleendian;
74       task_struct_comm : 128 : offset(6088), string } ->
75       { task_struct_state = task_struct_state;
76         task_struct_prio = task_struct_prio;
77         task_struct_static_prio = task_struct_static_prio;
78         task_struct_normal_prio = task_struct_normal_prio;
79         task_struct_tasks'next = Int64.sub task_struct_tasks'next 420L;
80         task_struct_tasks'prev = Int64.sub task_struct_tasks'prev 424L;
81         task_struct_mm = task_struct_mm;
82         task_struct_active_mm = task_struct_active_mm;
83         task_struct_pid = task_struct_pid;
84         task_struct_comm = task_struct_comm }
85   | { _ } ->
86       raise (ParseError (struct_name, "parser_3", match_err));;
87 let parser_4 bits = 
88   bitmatch bits with
89   | { task_struct_state : zero+32 : offset(0), littleendian;
90       task_struct_prio : zero+32 : offset(192), littleendian;
91       task_struct_static_prio : zero+32 : offset(224), littleendian;
92       task_struct_normal_prio : zero+32 : offset(256), littleendian;
93       task_struct_tasks'next : zero+32 : offset(2144), littleendian;
94       task_struct_tasks'prev : zero+32 : offset(2176), littleendian;
95       task_struct_mm : zero+32 : offset(2336), littleendian;
96       task_struct_active_mm : zero+32 : offset(2368), littleendian;
97       task_struct_pid : zero+32 : offset(2624), littleendian;
98       task_struct_comm : 128 : offset(4544), string } ->
99       { task_struct_state = task_struct_state;
100         task_struct_prio = task_struct_prio;
101         task_struct_static_prio = task_struct_static_prio;
102         task_struct_normal_prio = task_struct_normal_prio;
103         task_struct_tasks'next = Int64.sub task_struct_tasks'next 268L;
104         task_struct_tasks'prev = Int64.sub task_struct_tasks'prev 272L;
105         task_struct_mm = task_struct_mm;
106         task_struct_active_mm = task_struct_active_mm;
107         task_struct_pid = task_struct_pid;
108         task_struct_comm = task_struct_comm }
109   | { _ } ->
110       raise (ParseError (struct_name, "parser_4", match_err));;
111 let parser_5 bits = 
112   bitmatch bits with
113   | { task_struct_state : zero+32 : offset(0), littleendian;
114       task_struct_prio : zero+32 : offset(192), littleendian;
115       task_struct_static_prio : zero+32 : offset(224), littleendian;
116       task_struct_normal_prio : zero+32 : offset(256), littleendian;
117       task_struct_tasks'next : zero+32 : offset(2208), littleendian;
118       task_struct_tasks'prev : zero+32 : offset(2240), littleendian;
119       task_struct_mm : zero+32 : offset(2400), littleendian;
120       task_struct_active_mm : zero+32 : offset(2432), littleendian;
121       task_struct_pid : zero+32 : offset(2688), littleendian;
122       task_struct_comm : 128 : offset(4608), string } ->
123       { task_struct_state = task_struct_state;
124         task_struct_prio = task_struct_prio;
125         task_struct_static_prio = task_struct_static_prio;
126         task_struct_normal_prio = task_struct_normal_prio;
127         task_struct_tasks'next = Int64.sub task_struct_tasks'next 276L;
128         task_struct_tasks'prev = Int64.sub task_struct_tasks'prev 280L;
129         task_struct_mm = task_struct_mm;
130         task_struct_active_mm = task_struct_active_mm;
131         task_struct_pid = task_struct_pid;
132         task_struct_comm = task_struct_comm }
133   | { _ } ->
134       raise (ParseError (struct_name, "parser_5", match_err));;
135 let parser_6 bits = 
136   bitmatch bits with
137   | { task_struct_state : zero+32 : offset(0), littleendian;
138       task_struct_prio : zero+32 : offset(160), littleendian;
139       task_struct_static_prio : zero+32 : offset(192), littleendian;
140       task_struct_normal_prio : zero+32 : offset(224), littleendian;
141       task_struct_tasks'next : zero+32 : offset(2176), littleendian;
142       task_struct_tasks'prev : zero+32 : offset(2208), littleendian;
143       task_struct_mm : zero+32 : offset(2240), littleendian;
144       task_struct_active_mm : zero+32 : offset(2272), littleendian;
145       task_struct_pid : zero+32 : offset(2528), littleendian;
146       task_struct_comm : 128 : offset(4416), string } ->
147       { task_struct_state = task_struct_state;
148         task_struct_prio = task_struct_prio;
149         task_struct_static_prio = task_struct_static_prio;
150         task_struct_normal_prio = task_struct_normal_prio;
151         task_struct_tasks'next = Int64.sub task_struct_tasks'next 272L;
152         task_struct_tasks'prev = Int64.sub task_struct_tasks'prev 276L;
153         task_struct_mm = task_struct_mm;
154         task_struct_active_mm = task_struct_active_mm;
155         task_struct_pid = task_struct_pid;
156         task_struct_comm = task_struct_comm }
157   | { _ } ->
158       raise (ParseError (struct_name, "parser_6", match_err));;
159 let parser_7 bits = 
160   bitmatch bits with
161   | { task_struct_state : zero+32 : offset(0), littleendian;
162       task_struct_prio : zero+32 : offset(160), littleendian;
163       task_struct_static_prio : zero+32 : offset(192), littleendian;
164       task_struct_normal_prio : zero+32 : offset(224), littleendian;
165       task_struct_tasks'next : zero+32 : offset(2144), littleendian;
166       task_struct_tasks'prev : zero+32 : offset(2176), littleendian;
167       task_struct_mm : zero+32 : offset(2208), littleendian;
168       task_struct_active_mm : zero+32 : offset(2240), littleendian;
169       task_struct_pid : zero+32 : offset(2496), littleendian;
170       task_struct_comm : 128 : offset(4384), string } ->
171       { task_struct_state = task_struct_state;
172         task_struct_prio = task_struct_prio;
173         task_struct_static_prio = task_struct_static_prio;
174         task_struct_normal_prio = task_struct_normal_prio;
175         task_struct_tasks'next = Int64.sub task_struct_tasks'next 268L;
176         task_struct_tasks'prev = Int64.sub task_struct_tasks'prev 272L;
177         task_struct_mm = task_struct_mm;
178         task_struct_active_mm = task_struct_active_mm;
179         task_struct_pid = task_struct_pid;
180         task_struct_comm = task_struct_comm }
181   | { _ } ->
182       raise (ParseError (struct_name, "parser_7", match_err));;
183 let parser_8 bits = 
184   bitmatch bits with
185   | { task_struct_state : zero+32 : offset(0), littleendian;
186       task_struct_prio : zero+32 : offset(160), littleendian;
187       task_struct_static_prio : zero+32 : offset(192), littleendian;
188       task_struct_normal_prio : zero+32 : offset(224), littleendian;
189       task_struct_tasks'next : zero+32 : offset(3008), littleendian;
190       task_struct_tasks'prev : zero+32 : offset(3040), littleendian;
191       task_struct_mm : zero+32 : offset(3072), littleendian;
192       task_struct_active_mm : zero+32 : offset(3104), littleendian;
193       task_struct_pid : zero+32 : offset(3360), littleendian;
194       task_struct_comm : 128 : offset(5416), string } ->
195       { task_struct_state = task_struct_state;
196         task_struct_prio = task_struct_prio;
197         task_struct_static_prio = task_struct_static_prio;
198         task_struct_normal_prio = task_struct_normal_prio;
199         task_struct_tasks'next = Int64.sub task_struct_tasks'next 376L;
200         task_struct_tasks'prev = Int64.sub task_struct_tasks'prev 380L;
201         task_struct_mm = task_struct_mm;
202         task_struct_active_mm = task_struct_active_mm;
203         task_struct_pid = task_struct_pid;
204         task_struct_comm = task_struct_comm }
205   | { _ } ->
206       raise (ParseError (struct_name, "parser_8", match_err));;
207 let parser_9 bits = 
208   bitmatch bits with
209   | { task_struct_state : zero+64 : offset(0), littleendian;
210       task_struct_prio : zero+32 : offset(320), littleendian;
211       task_struct_static_prio : zero+32 : offset(352), littleendian;
212       task_struct_normal_prio : zero+32 : offset(384), littleendian;
213       task_struct_tasks'next : zero+64 : offset(1536), littleendian;
214       task_struct_tasks'prev : zero+64 : offset(1600), littleendian;
215       task_struct_mm : zero+64 : offset(1664), littleendian;
216       task_struct_active_mm : zero+64 : offset(1728), littleendian;
217       task_struct_pid : zero+32 : offset(2144), littleendian;
218       task_struct_comm : 128 : offset(5440), string } ->
219       { task_struct_state = task_struct_state;
220         task_struct_prio = task_struct_prio;
221         task_struct_static_prio = task_struct_static_prio;
222         task_struct_normal_prio = task_struct_normal_prio;
223         task_struct_tasks'next = Int64.sub task_struct_tasks'next 192L;
224         task_struct_tasks'prev = Int64.sub task_struct_tasks'prev 200L;
225         task_struct_mm = task_struct_mm;
226         task_struct_active_mm = task_struct_active_mm;
227         task_struct_pid = task_struct_pid;
228         task_struct_comm = task_struct_comm }
229   | { _ } ->
230       raise (ParseError (struct_name, "parser_9", match_err));;
231 let parser_10 bits = 
232   bitmatch bits with
233   | { task_struct_state : zero+64 : offset(0), littleendian;
234       task_struct_prio : zero+32 : offset(224), littleendian;
235       task_struct_static_prio : zero+32 : offset(256), littleendian;
236       task_struct_normal_prio : zero+32 : offset(288), littleendian;
237       task_struct_tasks'next : zero+64 : offset(2816), littleendian;
238       task_struct_tasks'prev : zero+64 : offset(2880), littleendian;
239       task_struct_mm : zero+64 : offset(2944), littleendian;
240       task_struct_active_mm : zero+64 : offset(3008), littleendian;
241       task_struct_pid : zero+32 : offset(3328), littleendian;
242       task_struct_comm : 128 : offset(6848), string } ->
243       { task_struct_state = task_struct_state;
244         task_struct_prio = task_struct_prio;
245         task_struct_static_prio = task_struct_static_prio;
246         task_struct_normal_prio = task_struct_normal_prio;
247         task_struct_tasks'next = Int64.sub task_struct_tasks'next 352L;
248         task_struct_tasks'prev = Int64.sub task_struct_tasks'prev 360L;
249         task_struct_mm = task_struct_mm;
250         task_struct_active_mm = task_struct_active_mm;
251         task_struct_pid = task_struct_pid;
252         task_struct_comm = task_struct_comm }
253   | { _ } ->
254       raise (ParseError (struct_name, "parser_10", match_err));;
255 let parser_11 bits = 
256   bitmatch bits with
257   | { task_struct_state : zero+64 : offset(0), littleendian;
258       task_struct_prio : zero+32 : offset(256), littleendian;
259       task_struct_static_prio : zero+32 : offset(288), littleendian;
260       task_struct_normal_prio : zero+32 : offset(320), littleendian;
261       task_struct_tasks'next : zero+64 : offset(4096), littleendian;
262       task_struct_tasks'prev : zero+64 : offset(4160), littleendian;
263       task_struct_mm : zero+64 : offset(4224), littleendian;
264       task_struct_active_mm : zero+64 : offset(4288), littleendian;
265       task_struct_pid : zero+32 : offset(4608), littleendian;
266       task_struct_comm : 128 : offset(8712), string } ->
267       { task_struct_state = task_struct_state;
268         task_struct_prio = task_struct_prio;
269         task_struct_static_prio = task_struct_static_prio;
270         task_struct_normal_prio = task_struct_normal_prio;
271         task_struct_tasks'next = Int64.sub task_struct_tasks'next 512L;
272         task_struct_tasks'prev = Int64.sub task_struct_tasks'prev 520L;
273         task_struct_mm = task_struct_mm;
274         task_struct_active_mm = task_struct_active_mm;
275         task_struct_pid = task_struct_pid;
276         task_struct_comm = task_struct_comm }
277   | { _ } ->
278       raise (ParseError (struct_name, "parser_11", match_err));;
279 let parser_12 bits = 
280   bitmatch bits with
281   | { task_struct_state : zero+32 : offset(0), bigendian;
282       task_struct_prio : zero+32 : offset(192), bigendian;
283       task_struct_static_prio : zero+32 : offset(224), bigendian;
284       task_struct_normal_prio : zero+32 : offset(256), bigendian;
285       task_struct_tasks'next : zero+32 : offset(1024), bigendian;
286       task_struct_tasks'prev : zero+32 : offset(1056), bigendian;
287       task_struct_mm : zero+32 : offset(1088), bigendian;
288       task_struct_active_mm : zero+32 : offset(1120), bigendian;
289       task_struct_pid : zero+32 : offset(1376), bigendian;
290       task_struct_comm : 128 : offset(3264), string } ->
291       { task_struct_state = task_struct_state;
292         task_struct_prio = task_struct_prio;
293         task_struct_static_prio = task_struct_static_prio;
294         task_struct_normal_prio = task_struct_normal_prio;
295         task_struct_tasks'next = Int64.sub task_struct_tasks'next 128L;
296         task_struct_tasks'prev = Int64.sub task_struct_tasks'prev 132L;
297         task_struct_mm = task_struct_mm;
298         task_struct_active_mm = task_struct_active_mm;
299         task_struct_pid = task_struct_pid;
300         task_struct_comm = task_struct_comm }
301   | { _ } ->
302       raise (ParseError (struct_name, "parser_12", match_err));;
303 let parser_13 bits = 
304   bitmatch bits with
305   | { task_struct_state : zero+64 : offset(0), bigendian;
306       task_struct_prio : zero+32 : offset(320), bigendian;
307       task_struct_static_prio : zero+32 : offset(352), bigendian;
308       task_struct_normal_prio : zero+32 : offset(384), bigendian;
309       task_struct_tasks'next : zero+64 : offset(1600), bigendian;
310       task_struct_tasks'prev : zero+64 : offset(1664), bigendian;
311       task_struct_mm : zero+64 : offset(1728), bigendian;
312       task_struct_active_mm : zero+64 : offset(1792), bigendian;
313       task_struct_pid : zero+32 : offset(2208), bigendian;
314       task_struct_comm : 128 : offset(5440), string } ->
315       { task_struct_state = task_struct_state;
316         task_struct_prio = task_struct_prio;
317         task_struct_static_prio = task_struct_static_prio;
318         task_struct_normal_prio = task_struct_normal_prio;
319         task_struct_tasks'next = Int64.sub task_struct_tasks'next 200L;
320         task_struct_tasks'prev = Int64.sub task_struct_tasks'prev 208L;
321         task_struct_mm = task_struct_mm;
322         task_struct_active_mm = task_struct_active_mm;
323         task_struct_pid = task_struct_pid;
324         task_struct_comm = task_struct_comm }
325   | { _ } ->
326       raise (ParseError (struct_name, "parser_13", match_err));;
327 let parser_14 bits = 
328   bitmatch bits with
329   | { task_struct_state : zero+64 : offset(0), littleendian;
330       task_struct_prio : zero+32 : offset(320), littleendian;
331       task_struct_static_prio : zero+32 : offset(352), littleendian;
332       task_struct_normal_prio : zero+32 : offset(384), littleendian;
333       task_struct_tasks'next : zero+64 : offset(1728), littleendian;
334       task_struct_tasks'prev : zero+64 : offset(1792), littleendian;
335       task_struct_mm : zero+64 : offset(1856), littleendian;
336       task_struct_active_mm : zero+64 : offset(1920), littleendian;
337       task_struct_pid : zero+32 : offset(2336), littleendian;
338       task_struct_comm : 128 : offset(5568), string } ->
339       { task_struct_state = task_struct_state;
340         task_struct_prio = task_struct_prio;
341         task_struct_static_prio = task_struct_static_prio;
342         task_struct_normal_prio = task_struct_normal_prio;
343         task_struct_tasks'next = Int64.sub task_struct_tasks'next 216L;
344         task_struct_tasks'prev = Int64.sub task_struct_tasks'prev 224L;
345         task_struct_mm = task_struct_mm;
346         task_struct_active_mm = task_struct_active_mm;
347         task_struct_pid = task_struct_pid;
348         task_struct_comm = task_struct_comm }
349   | { _ } ->
350       raise (ParseError (struct_name, "parser_14", match_err));;
351 let parser_15 bits = 
352   bitmatch bits with
353   | { task_struct_state : zero+64 : offset(0), bigendian;
354       task_struct_prio : zero+32 : offset(256), bigendian;
355       task_struct_static_prio : zero+32 : offset(288), bigendian;
356       task_struct_normal_prio : zero+32 : offset(320), bigendian;
357       task_struct_tasks'next : zero+64 : offset(1472), bigendian;
358       task_struct_tasks'prev : zero+64 : offset(1536), bigendian;
359       task_struct_mm : zero+64 : offset(1600), bigendian;
360       task_struct_active_mm : zero+64 : offset(1664), bigendian;
361       task_struct_pid : zero+32 : offset(1984), bigendian;
362       task_struct_comm : 128 : offset(5184), string } ->
363       { task_struct_state = task_struct_state;
364         task_struct_prio = task_struct_prio;
365         task_struct_static_prio = task_struct_static_prio;
366         task_struct_normal_prio = task_struct_normal_prio;
367         task_struct_tasks'next = Int64.sub task_struct_tasks'next 184L;
368         task_struct_tasks'prev = Int64.sub task_struct_tasks'prev 192L;
369         task_struct_mm = task_struct_mm;
370         task_struct_active_mm = task_struct_active_mm;
371         task_struct_pid = task_struct_pid;
372         task_struct_comm = task_struct_comm }
373   | { _ } ->
374       raise (ParseError (struct_name, "parser_15", match_err));;
375 let parser_16 bits = 
376   bitmatch bits with
377   | { task_struct_state : zero+64 : offset(0), littleendian;
378       task_struct_prio : zero+32 : offset(256), littleendian;
379       task_struct_static_prio : zero+32 : offset(288), littleendian;
380       task_struct_normal_prio : zero+32 : offset(320), littleendian;
381       task_struct_tasks'next : zero+64 : offset(1408), littleendian;
382       task_struct_tasks'prev : zero+64 : offset(1472), littleendian;
383       task_struct_mm : zero+64 : offset(1536), littleendian;
384       task_struct_active_mm : zero+64 : offset(1600), littleendian;
385       task_struct_pid : zero+32 : offset(1920), littleendian;
386       task_struct_comm : 128 : offset(5184), string } ->
387       { task_struct_state = task_struct_state;
388         task_struct_prio = task_struct_prio;
389         task_struct_static_prio = task_struct_static_prio;
390         task_struct_normal_prio = task_struct_normal_prio;
391         task_struct_tasks'next = Int64.sub task_struct_tasks'next 176L;
392         task_struct_tasks'prev = Int64.sub task_struct_tasks'prev 184L;
393         task_struct_mm = task_struct_mm;
394         task_struct_active_mm = task_struct_active_mm;
395         task_struct_pid = task_struct_pid;
396         task_struct_comm = task_struct_comm }
397   | { _ } ->
398       raise (ParseError (struct_name, "parser_16", match_err));;
399 let parser_17 bits = 
400   bitmatch bits with
401   | { task_struct_state : zero+32 : offset(0), bigendian;
402       task_struct_prio : zero+32 : offset(192), bigendian;
403       task_struct_static_prio : zero+32 : offset(224), bigendian;
404       task_struct_normal_prio : zero+32 : offset(256), bigendian;
405       task_struct_tasks'next : zero+32 : offset(2240), bigendian;
406       task_struct_tasks'prev : zero+32 : offset(2272), bigendian;
407       task_struct_mm : zero+32 : offset(2432), bigendian;
408       task_struct_active_mm : zero+32 : offset(2464), bigendian;
409       task_struct_pid : zero+32 : offset(2720), bigendian;
410       task_struct_comm : 128 : offset(4672), string } ->
411       { task_struct_state = task_struct_state;
412         task_struct_prio = task_struct_prio;
413         task_struct_static_prio = task_struct_static_prio;
414         task_struct_normal_prio = task_struct_normal_prio;
415         task_struct_tasks'next = Int64.sub task_struct_tasks'next 280L;
416         task_struct_tasks'prev = Int64.sub task_struct_tasks'prev 284L;
417         task_struct_mm = task_struct_mm;
418         task_struct_active_mm = task_struct_active_mm;
419         task_struct_pid = task_struct_pid;
420         task_struct_comm = task_struct_comm }
421   | { _ } ->
422       raise (ParseError (struct_name, "parser_17", match_err));;
423 let parser_18 bits = 
424   bitmatch bits with
425   | { task_struct_state : zero+64 : offset(0), bigendian;
426       task_struct_prio : zero+32 : offset(256), bigendian;
427       task_struct_static_prio : zero+32 : offset(288), bigendian;
428       task_struct_normal_prio : zero+32 : offset(320), bigendian;
429       task_struct_tasks'next : zero+64 : offset(2688), bigendian;
430       task_struct_tasks'prev : zero+64 : offset(2752), bigendian;
431       task_struct_mm : zero+64 : offset(3072), bigendian;
432       task_struct_active_mm : zero+64 : offset(3136), bigendian;
433       task_struct_pid : zero+32 : offset(3456), bigendian;
434       task_struct_comm : 128 : offset(6720), string } ->
435       { task_struct_state = task_struct_state;
436         task_struct_prio = task_struct_prio;
437         task_struct_static_prio = task_struct_static_prio;
438         task_struct_normal_prio = task_struct_normal_prio;
439         task_struct_tasks'next = Int64.sub task_struct_tasks'next 336L;
440         task_struct_tasks'prev = Int64.sub task_struct_tasks'prev 344L;
441         task_struct_mm = task_struct_mm;
442         task_struct_active_mm = task_struct_active_mm;
443         task_struct_pid = task_struct_pid;
444         task_struct_comm = task_struct_comm }
445   | { _ } ->
446       raise (ParseError (struct_name, "parser_18", match_err));;
447 let parser_19 bits = 
448   bitmatch bits with
449   | { task_struct_state : zero+64 : offset(0), littleendian;
450       task_struct_prio : zero+32 : offset(256), littleendian;
451       task_struct_static_prio : zero+32 : offset(288), littleendian;
452       task_struct_normal_prio : zero+32 : offset(320), littleendian;
453       task_struct_tasks'next : zero+64 : offset(2624), littleendian;
454       task_struct_tasks'prev : zero+64 : offset(2688), littleendian;
455       task_struct_mm : zero+64 : offset(3008), littleendian;
456       task_struct_active_mm : zero+64 : offset(3072), littleendian;
457       task_struct_pid : zero+32 : offset(3392), littleendian;
458       task_struct_comm : 128 : offset(6720), string } ->
459       { task_struct_state = task_struct_state;
460         task_struct_prio = task_struct_prio;
461         task_struct_static_prio = task_struct_static_prio;
462         task_struct_normal_prio = task_struct_normal_prio;
463         task_struct_tasks'next = Int64.sub task_struct_tasks'next 328L;
464         task_struct_tasks'prev = Int64.sub task_struct_tasks'prev 336L;
465         task_struct_mm = task_struct_mm;
466         task_struct_active_mm = task_struct_active_mm;
467         task_struct_pid = task_struct_pid;
468         task_struct_comm = task_struct_comm }
469   | { _ } ->
470       raise (ParseError (struct_name, "parser_19", match_err));;
471 let parser_20 bits = 
472   bitmatch bits with
473   | { task_struct_state : zero+32 : offset(0), bigendian;
474       task_struct_prio : zero+32 : offset(192), bigendian;
475       task_struct_static_prio : zero+32 : offset(224), bigendian;
476       task_struct_normal_prio : zero+32 : offset(256), bigendian;
477       task_struct_tasks'next : zero+32 : offset(2304), bigendian;
478       task_struct_tasks'prev : zero+32 : offset(2336), bigendian;
479       task_struct_mm : zero+32 : offset(2496), bigendian;
480       task_struct_active_mm : zero+32 : offset(2528), bigendian;
481       task_struct_pid : zero+32 : offset(2784), bigendian;
482       task_struct_comm : 128 : offset(4736), string } ->
483       { task_struct_state = task_struct_state;
484         task_struct_prio = task_struct_prio;
485         task_struct_static_prio = task_struct_static_prio;
486         task_struct_normal_prio = task_struct_normal_prio;
487         task_struct_tasks'next = Int64.sub task_struct_tasks'next 288L;
488         task_struct_tasks'prev = Int64.sub task_struct_tasks'prev 292L;
489         task_struct_mm = task_struct_mm;
490         task_struct_active_mm = task_struct_active_mm;
491         task_struct_pid = task_struct_pid;
492         task_struct_comm = task_struct_comm }
493   | { _ } ->
494       raise (ParseError (struct_name, "parser_20", match_err));;
495 let parser_21 bits = 
496   bitmatch bits with
497   | { task_struct_state : zero+64 : offset(0), bigendian;
498       task_struct_prio : zero+32 : offset(256), bigendian;
499       task_struct_static_prio : zero+32 : offset(288), bigendian;
500       task_struct_normal_prio : zero+32 : offset(320), bigendian;
501       task_struct_tasks'next : zero+64 : offset(2880), bigendian;
502       task_struct_tasks'prev : zero+64 : offset(2944), bigendian;
503       task_struct_mm : zero+64 : offset(3264), bigendian;
504       task_struct_active_mm : zero+64 : offset(3328), bigendian;
505       task_struct_pid : zero+32 : offset(3648), bigendian;
506       task_struct_comm : 128 : offset(6912), string } ->
507       { task_struct_state = task_struct_state;
508         task_struct_prio = task_struct_prio;
509         task_struct_static_prio = task_struct_static_prio;
510         task_struct_normal_prio = task_struct_normal_prio;
511         task_struct_tasks'next = Int64.sub task_struct_tasks'next 360L;
512         task_struct_tasks'prev = Int64.sub task_struct_tasks'prev 368L;
513         task_struct_mm = task_struct_mm;
514         task_struct_active_mm = task_struct_active_mm;
515         task_struct_pid = task_struct_pid;
516         task_struct_comm = task_struct_comm }
517   | { _ } ->
518       raise (ParseError (struct_name, "parser_21", match_err));;
519 let parser_22 bits = 
520   bitmatch bits with
521   | { task_struct_state : zero+64 : offset(0), littleendian;
522       task_struct_prio : zero+32 : offset(256), littleendian;
523       task_struct_static_prio : zero+32 : offset(288), littleendian;
524       task_struct_normal_prio : zero+32 : offset(320), littleendian;
525       task_struct_tasks'next : zero+64 : offset(2816), littleendian;
526       task_struct_tasks'prev : zero+64 : offset(2880), littleendian;
527       task_struct_mm : zero+64 : offset(3200), littleendian;
528       task_struct_active_mm : zero+64 : offset(3264), littleendian;
529       task_struct_pid : zero+32 : offset(3584), littleendian;
530       task_struct_comm : 128 : offset(6912), string } ->
531       { task_struct_state = task_struct_state;
532         task_struct_prio = task_struct_prio;
533         task_struct_static_prio = task_struct_static_prio;
534         task_struct_normal_prio = task_struct_normal_prio;
535         task_struct_tasks'next = Int64.sub task_struct_tasks'next 352L;
536         task_struct_tasks'prev = Int64.sub task_struct_tasks'prev 360L;
537         task_struct_mm = task_struct_mm;
538         task_struct_active_mm = task_struct_active_mm;
539         task_struct_pid = task_struct_pid;
540         task_struct_comm = task_struct_comm }
541   | { _ } ->
542       raise (ParseError (struct_name, "parser_22", match_err));;
543 let parser_23 bits = 
544   bitmatch bits with
545   | { task_struct_state : zero+32 : offset(0), bigendian;
546       task_struct_prio : zero+32 : offset(160), bigendian;
547       task_struct_static_prio : zero+32 : offset(192), bigendian;
548       task_struct_normal_prio : zero+32 : offset(224), bigendian;
549       task_struct_tasks'next : zero+32 : offset(2240), bigendian;
550       task_struct_tasks'prev : zero+32 : offset(2272), bigendian;
551       task_struct_mm : zero+32 : offset(2304), bigendian;
552       task_struct_active_mm : zero+32 : offset(2336), bigendian;
553       task_struct_pid : zero+32 : offset(2592), bigendian;
554       task_struct_comm : 128 : offset(4480), string } ->
555       { task_struct_state = task_struct_state;
556         task_struct_prio = task_struct_prio;
557         task_struct_static_prio = task_struct_static_prio;
558         task_struct_normal_prio = task_struct_normal_prio;
559         task_struct_tasks'next = Int64.sub task_struct_tasks'next 280L;
560         task_struct_tasks'prev = Int64.sub task_struct_tasks'prev 284L;
561         task_struct_mm = task_struct_mm;
562         task_struct_active_mm = task_struct_active_mm;
563         task_struct_pid = task_struct_pid;
564         task_struct_comm = task_struct_comm }
565   | { _ } ->
566       raise (ParseError (struct_name, "parser_23", match_err));;
567 let parser_24 bits = 
568   bitmatch bits with
569   | { task_struct_state : zero+64 : offset(0), bigendian;
570       task_struct_prio : zero+32 : offset(224), bigendian;
571       task_struct_static_prio : zero+32 : offset(256), bigendian;
572       task_struct_normal_prio : zero+32 : offset(288), bigendian;
573       task_struct_tasks'next : zero+64 : offset(2816), bigendian;
574       task_struct_tasks'prev : zero+64 : offset(2880), bigendian;
575       task_struct_mm : zero+64 : offset(2944), bigendian;
576       task_struct_active_mm : zero+64 : offset(3008), bigendian;
577       task_struct_pid : zero+32 : offset(3328), bigendian;
578       task_struct_comm : 128 : offset(6528), string } ->
579       { task_struct_state = task_struct_state;
580         task_struct_prio = task_struct_prio;
581         task_struct_static_prio = task_struct_static_prio;
582         task_struct_normal_prio = task_struct_normal_prio;
583         task_struct_tasks'next = Int64.sub task_struct_tasks'next 352L;
584         task_struct_tasks'prev = Int64.sub task_struct_tasks'prev 360L;
585         task_struct_mm = task_struct_mm;
586         task_struct_active_mm = task_struct_active_mm;
587         task_struct_pid = task_struct_pid;
588         task_struct_comm = task_struct_comm }
589   | { _ } ->
590       raise (ParseError (struct_name, "parser_24", match_err));;
591 let parser_25 bits = 
592   bitmatch bits with
593   | { task_struct_state : zero+64 : offset(0), littleendian;
594       task_struct_prio : zero+32 : offset(224), littleendian;
595       task_struct_static_prio : zero+32 : offset(256), littleendian;
596       task_struct_normal_prio : zero+32 : offset(288), littleendian;
597       task_struct_tasks'next : zero+64 : offset(2752), littleendian;
598       task_struct_tasks'prev : zero+64 : offset(2816), littleendian;
599       task_struct_mm : zero+64 : offset(2880), littleendian;
600       task_struct_active_mm : zero+64 : offset(2944), littleendian;
601       task_struct_pid : zero+32 : offset(3264), littleendian;
602       task_struct_comm : 128 : offset(6528), string } ->
603       { task_struct_state = task_struct_state;
604         task_struct_prio = task_struct_prio;
605         task_struct_static_prio = task_struct_static_prio;
606         task_struct_normal_prio = task_struct_normal_prio;
607         task_struct_tasks'next = Int64.sub task_struct_tasks'next 344L;
608         task_struct_tasks'prev = Int64.sub task_struct_tasks'prev 352L;
609         task_struct_mm = task_struct_mm;
610         task_struct_active_mm = task_struct_active_mm;
611         task_struct_pid = task_struct_pid;
612         task_struct_comm = task_struct_comm }
613   | { _ } ->
614       raise (ParseError (struct_name, "parser_25", match_err));;
615 let parser_26 bits = 
616   bitmatch bits with
617   | { task_struct_state : zero+32 : offset(0), bigendian;
618       task_struct_prio : zero+32 : offset(160), bigendian;
619       task_struct_static_prio : zero+32 : offset(192), bigendian;
620       task_struct_normal_prio : zero+32 : offset(224), bigendian;
621       task_struct_tasks'next : zero+32 : offset(2176), bigendian;
622       task_struct_tasks'prev : zero+32 : offset(2208), bigendian;
623       task_struct_mm : zero+32 : offset(2240), bigendian;
624       task_struct_active_mm : zero+32 : offset(2272), bigendian;
625       task_struct_pid : zero+32 : offset(2528), bigendian;
626       task_struct_comm : 128 : offset(4416), string } ->
627       { task_struct_state = task_struct_state;
628         task_struct_prio = task_struct_prio;
629         task_struct_static_prio = task_struct_static_prio;
630         task_struct_normal_prio = task_struct_normal_prio;
631         task_struct_tasks'next = Int64.sub task_struct_tasks'next 272L;
632         task_struct_tasks'prev = Int64.sub task_struct_tasks'prev 276L;
633         task_struct_mm = task_struct_mm;
634         task_struct_active_mm = task_struct_active_mm;
635         task_struct_pid = task_struct_pid;
636         task_struct_comm = task_struct_comm }
637   | { _ } ->
638       raise (ParseError (struct_name, "parser_26", match_err));;
639 let parser_27 bits = 
640   bitmatch bits with
641   | { task_struct_state : zero+64 : offset(0), bigendian;
642       task_struct_prio : zero+32 : offset(224), bigendian;
643       task_struct_static_prio : zero+32 : offset(256), bigendian;
644       task_struct_normal_prio : zero+32 : offset(288), bigendian;
645       task_struct_tasks'next : zero+64 : offset(2880), bigendian;
646       task_struct_tasks'prev : zero+64 : offset(2944), bigendian;
647       task_struct_mm : zero+64 : offset(3008), bigendian;
648       task_struct_active_mm : zero+64 : offset(3072), bigendian;
649       task_struct_pid : zero+32 : offset(3392), bigendian;
650       task_struct_comm : 128 : offset(6592), string } ->
651       { task_struct_state = task_struct_state;
652         task_struct_prio = task_struct_prio;
653         task_struct_static_prio = task_struct_static_prio;
654         task_struct_normal_prio = task_struct_normal_prio;
655         task_struct_tasks'next = Int64.sub task_struct_tasks'next 360L;
656         task_struct_tasks'prev = Int64.sub task_struct_tasks'prev 368L;
657         task_struct_mm = task_struct_mm;
658         task_struct_active_mm = task_struct_active_mm;
659         task_struct_pid = task_struct_pid;
660         task_struct_comm = task_struct_comm }
661   | { _ } ->
662       raise (ParseError (struct_name, "parser_27", match_err));;
663 let parser_28 bits = 
664   bitmatch bits with
665   | { task_struct_state : zero+64 : offset(0), littleendian;
666       task_struct_prio : zero+32 : offset(224), littleendian;
667       task_struct_static_prio : zero+32 : offset(256), littleendian;
668       task_struct_normal_prio : zero+32 : offset(288), littleendian;
669       task_struct_tasks'next : zero+64 : offset(2816), littleendian;
670       task_struct_tasks'prev : zero+64 : offset(2880), littleendian;
671       task_struct_mm : zero+64 : offset(2944), littleendian;
672       task_struct_active_mm : zero+64 : offset(3008), littleendian;
673       task_struct_pid : zero+32 : offset(3328), littleendian;
674       task_struct_comm : 128 : offset(6592), string } ->
675       { task_struct_state = task_struct_state;
676         task_struct_prio = task_struct_prio;
677         task_struct_static_prio = task_struct_static_prio;
678         task_struct_normal_prio = task_struct_normal_prio;
679         task_struct_tasks'next = Int64.sub task_struct_tasks'next 352L;
680         task_struct_tasks'prev = Int64.sub task_struct_tasks'prev 360L;
681         task_struct_mm = task_struct_mm;
682         task_struct_active_mm = task_struct_active_mm;
683         task_struct_pid = task_struct_pid;
684         task_struct_comm = task_struct_comm }
685   | { _ } ->
686       raise (ParseError (struct_name, "parser_28", match_err));;
687 let parser_29 bits = 
688   bitmatch bits with
689   | { task_struct_state : zero+32 : offset(0), bigendian;
690       task_struct_prio : zero+32 : offset(160), bigendian;
691       task_struct_static_prio : zero+32 : offset(192), bigendian;
692       task_struct_normal_prio : zero+32 : offset(224), bigendian;
693       task_struct_tasks'next : zero+32 : offset(2240), bigendian;
694       task_struct_tasks'prev : zero+32 : offset(2272), bigendian;
695       task_struct_mm : zero+32 : offset(2304), bigendian;
696       task_struct_active_mm : zero+32 : offset(2336), bigendian;
697       task_struct_pid : zero+32 : offset(2592), bigendian;
698       task_struct_comm : 128 : offset(4608), string } ->
699       { task_struct_state = task_struct_state;
700         task_struct_prio = task_struct_prio;
701         task_struct_static_prio = task_struct_static_prio;
702         task_struct_normal_prio = task_struct_normal_prio;
703         task_struct_tasks'next = Int64.sub task_struct_tasks'next 280L;
704         task_struct_tasks'prev = Int64.sub task_struct_tasks'prev 284L;
705         task_struct_mm = task_struct_mm;
706         task_struct_active_mm = task_struct_active_mm;
707         task_struct_pid = task_struct_pid;
708         task_struct_comm = task_struct_comm }
709   | { _ } ->
710       raise (ParseError (struct_name, "parser_29", match_err));;
711 let parser_30 bits = 
712   bitmatch bits with
713   | { task_struct_state : zero+64 : offset(0), bigendian;
714       task_struct_prio : zero+32 : offset(224), bigendian;
715       task_struct_static_prio : zero+32 : offset(256), bigendian;
716       task_struct_normal_prio : zero+32 : offset(288), bigendian;
717       task_struct_tasks'next : zero+64 : offset(2880), bigendian;
718       task_struct_tasks'prev : zero+64 : offset(2944), bigendian;
719       task_struct_mm : zero+64 : offset(3008), bigendian;
720       task_struct_active_mm : zero+64 : offset(3072), bigendian;
721       task_struct_pid : zero+32 : offset(3392), bigendian;
722       task_struct_comm : 128 : offset(6848), string } ->
723       { task_struct_state = task_struct_state;
724         task_struct_prio = task_struct_prio;
725         task_struct_static_prio = task_struct_static_prio;
726         task_struct_normal_prio = task_struct_normal_prio;
727         task_struct_tasks'next = Int64.sub task_struct_tasks'next 360L;
728         task_struct_tasks'prev = Int64.sub task_struct_tasks'prev 368L;
729         task_struct_mm = task_struct_mm;
730         task_struct_active_mm = task_struct_active_mm;
731         task_struct_pid = task_struct_pid;
732         task_struct_comm = task_struct_comm }
733   | { _ } ->
734       raise (ParseError (struct_name, "parser_30", match_err));;
735 let parser_31 bits = 
736   bitmatch bits with
737   | { task_struct_state : zero+32 : offset(0), bigendian;
738       task_struct_prio : zero+32 : offset(160), bigendian;
739       task_struct_static_prio : zero+32 : offset(192), bigendian;
740       task_struct_normal_prio : zero+32 : offset(224), bigendian;
741       task_struct_tasks'next : zero+32 : offset(3136), bigendian;
742       task_struct_tasks'prev : zero+32 : offset(3168), bigendian;
743       task_struct_mm : zero+32 : offset(3200), bigendian;
744       task_struct_active_mm : zero+32 : offset(3232), bigendian;
745       task_struct_pid : zero+32 : offset(3488), bigendian;
746       task_struct_comm : 128 : offset(5576), string } ->
747       { task_struct_state = task_struct_state;
748         task_struct_prio = task_struct_prio;
749         task_struct_static_prio = task_struct_static_prio;
750         task_struct_normal_prio = task_struct_normal_prio;
751         task_struct_tasks'next = Int64.sub task_struct_tasks'next 392L;
752         task_struct_tasks'prev = Int64.sub task_struct_tasks'prev 396L;
753         task_struct_mm = task_struct_mm;
754         task_struct_active_mm = task_struct_active_mm;
755         task_struct_pid = task_struct_pid;
756         task_struct_comm = task_struct_comm }
757   | { _ } ->
758       raise (ParseError (struct_name, "parser_31", match_err));;
759 let parser_32 bits = 
760   bitmatch bits with
761   | { task_struct_state : zero+64 : offset(0), bigendian;
762       task_struct_prio : zero+32 : offset(224), bigendian;
763       task_struct_static_prio : zero+32 : offset(256), bigendian;
764       task_struct_normal_prio : zero+32 : offset(288), bigendian;
765       task_struct_tasks'next : zero+64 : offset(3648), bigendian;
766       task_struct_tasks'prev : zero+64 : offset(3712), bigendian;
767       task_struct_mm : zero+64 : offset(3776), bigendian;
768       task_struct_active_mm : zero+64 : offset(3840), bigendian;
769       task_struct_pid : zero+32 : offset(4160), bigendian;
770       task_struct_comm : 128 : offset(7752), string } ->
771       { task_struct_state = task_struct_state;
772         task_struct_prio = task_struct_prio;
773         task_struct_static_prio = task_struct_static_prio;
774         task_struct_normal_prio = task_struct_normal_prio;
775         task_struct_tasks'next = Int64.sub task_struct_tasks'next 456L;
776         task_struct_tasks'prev = Int64.sub task_struct_tasks'prev 464L;
777         task_struct_mm = task_struct_mm;
778         task_struct_active_mm = task_struct_active_mm;
779         task_struct_pid = task_struct_pid;
780         task_struct_comm = task_struct_comm }
781   | { _ } ->
782       raise (ParseError (struct_name, "parser_32", match_err));;
783 let parser_33 bits = 
784   bitmatch bits with
785   | { task_struct_state : zero+64 : offset(0), littleendian;
786       task_struct_prio : zero+32 : offset(224), littleendian;
787       task_struct_static_prio : zero+32 : offset(256), littleendian;
788       task_struct_normal_prio : zero+32 : offset(288), littleendian;
789       task_struct_tasks'next : zero+64 : offset(3648), littleendian;
790       task_struct_tasks'prev : zero+64 : offset(3712), littleendian;
791       task_struct_mm : zero+64 : offset(3776), littleendian;
792       task_struct_active_mm : zero+64 : offset(3840), littleendian;
793       task_struct_pid : zero+32 : offset(4160), littleendian;
794       task_struct_comm : 128 : offset(7816), string } ->
795       { task_struct_state = task_struct_state;
796         task_struct_prio = task_struct_prio;
797         task_struct_static_prio = task_struct_static_prio;
798         task_struct_normal_prio = task_struct_normal_prio;
799         task_struct_tasks'next = Int64.sub task_struct_tasks'next 456L;
800         task_struct_tasks'prev = Int64.sub task_struct_tasks'prev 464L;
801         task_struct_mm = task_struct_mm;
802         task_struct_active_mm = task_struct_active_mm;
803         task_struct_pid = task_struct_pid;
804         task_struct_comm = task_struct_comm }
805   | { _ } ->
806       raise (ParseError (struct_name, "parser_33", match_err));;
807 let parser_34 bits = 
808   bitmatch bits with
809   | { task_struct_state : zero+32 : offset(0), littleendian;
810       task_struct_prio : zero+32 : offset(160), littleendian;
811       task_struct_static_prio : zero+32 : offset(192), littleendian;
812       task_struct_normal_prio : zero+32 : offset(224), littleendian;
813       task_struct_tasks'next : zero+32 : offset(3232), littleendian;
814       task_struct_tasks'prev : zero+32 : offset(3264), littleendian;
815       task_struct_mm : zero+32 : offset(3296), littleendian;
816       task_struct_active_mm : zero+32 : offset(3328), littleendian;
817       task_struct_pid : zero+32 : offset(3584), littleendian;
818       task_struct_comm : 128 : offset(5928), string } ->
819       { task_struct_state = task_struct_state;
820         task_struct_prio = task_struct_prio;
821         task_struct_static_prio = task_struct_static_prio;
822         task_struct_normal_prio = task_struct_normal_prio;
823         task_struct_tasks'next = Int64.sub task_struct_tasks'next 404L;
824         task_struct_tasks'prev = Int64.sub task_struct_tasks'prev 408L;
825         task_struct_mm = task_struct_mm;
826         task_struct_active_mm = task_struct_active_mm;
827         task_struct_pid = task_struct_pid;
828         task_struct_comm = task_struct_comm }
829   | { _ } ->
830       raise (ParseError (struct_name, "parser_34", match_err));;
831 let parser_35 bits = 
832   bitmatch bits with
833   | { task_struct_state : zero+64 : offset(0), littleendian;
834       task_struct_prio : zero+32 : offset(224), littleendian;
835       task_struct_static_prio : zero+32 : offset(256), littleendian;
836       task_struct_normal_prio : zero+32 : offset(288), littleendian;
837       task_struct_tasks'next : zero+64 : offset(3840), littleendian;
838       task_struct_tasks'prev : zero+64 : offset(3904), littleendian;
839       task_struct_mm : zero+64 : offset(3968), littleendian;
840       task_struct_active_mm : zero+64 : offset(4032), littleendian;
841       task_struct_pid : zero+32 : offset(4352), littleendian;
842       task_struct_comm : 128 : offset(8392), string } ->
843       { task_struct_state = task_struct_state;
844         task_struct_prio = task_struct_prio;
845         task_struct_static_prio = task_struct_static_prio;
846         task_struct_normal_prio = task_struct_normal_prio;
847         task_struct_tasks'next = Int64.sub task_struct_tasks'next 480L;
848         task_struct_tasks'prev = Int64.sub task_struct_tasks'prev 488L;
849         task_struct_mm = task_struct_mm;
850         task_struct_active_mm = task_struct_active_mm;
851         task_struct_pid = task_struct_pid;
852         task_struct_comm = task_struct_comm }
853   | { _ } ->
854       raise (ParseError (struct_name, "parser_35", match_err));;
855 let parser_36 bits = 
856   bitmatch bits with
857   | { task_struct_state : zero+32 : offset(0), littleendian;
858       task_struct_prio : zero+32 : offset(192), littleendian;
859       task_struct_static_prio : zero+32 : offset(224), littleendian;
860       task_struct_normal_prio : zero+32 : offset(256), littleendian;
861       task_struct_tasks'next : zero+32 : offset(3328), littleendian;
862       task_struct_tasks'prev : zero+32 : offset(3360), littleendian;
863       task_struct_mm : zero+32 : offset(3392), littleendian;
864       task_struct_active_mm : zero+32 : offset(3424), littleendian;
865       task_struct_pid : zero+32 : offset(3680), littleendian;
866       task_struct_comm : 128 : offset(6056), string } ->
867       { task_struct_state = task_struct_state;
868         task_struct_prio = task_struct_prio;
869         task_struct_static_prio = task_struct_static_prio;
870         task_struct_normal_prio = task_struct_normal_prio;
871         task_struct_tasks'next = Int64.sub task_struct_tasks'next 416L;
872         task_struct_tasks'prev = Int64.sub task_struct_tasks'prev 420L;
873         task_struct_mm = task_struct_mm;
874         task_struct_active_mm = task_struct_active_mm;
875         task_struct_pid = task_struct_pid;
876         task_struct_comm = task_struct_comm }
877   | { _ } ->
878       raise (ParseError (struct_name, "parser_36", match_err));;
879 let parser_37 bits = 
880   bitmatch bits with
881   | { task_struct_state : zero+64 : offset(0), bigendian;
882       task_struct_prio : zero+32 : offset(256), bigendian;
883       task_struct_static_prio : zero+32 : offset(288), bigendian;
884       task_struct_normal_prio : zero+32 : offset(320), bigendian;
885       task_struct_tasks'next : zero+64 : offset(4096), bigendian;
886       task_struct_tasks'prev : zero+64 : offset(4160), bigendian;
887       task_struct_mm : zero+64 : offset(4224), bigendian;
888       task_struct_active_mm : zero+64 : offset(4288), bigendian;
889       task_struct_pid : zero+32 : offset(4608), bigendian;
890       task_struct_comm : 128 : offset(8712), string } ->
891       { task_struct_state = task_struct_state;
892         task_struct_prio = task_struct_prio;
893         task_struct_static_prio = task_struct_static_prio;
894         task_struct_normal_prio = task_struct_normal_prio;
895         task_struct_tasks'next = Int64.sub task_struct_tasks'next 512L;
896         task_struct_tasks'prev = Int64.sub task_struct_tasks'prev 520L;
897         task_struct_mm = task_struct_mm;
898         task_struct_active_mm = task_struct_active_mm;
899         task_struct_pid = task_struct_pid;
900         task_struct_comm = task_struct_comm }
901   | { _ } ->
902       raise (ParseError (struct_name, "parser_37", match_err));;
903 let parser_38 bits = 
904   bitmatch bits with
905   | { task_struct_state : zero+64 : offset(0), littleendian;
906       task_struct_prio : zero+32 : offset(320), littleendian;
907       task_struct_static_prio : zero+32 : offset(352), littleendian;
908       task_struct_normal_prio : zero+32 : offset(384), littleendian;
909       task_struct_tasks'next : zero+64 : offset(1536), littleendian;
910       task_struct_tasks'prev : zero+64 : offset(1600), littleendian;
911       task_struct_mm : zero+64 : offset(1664), littleendian;
912       task_struct_active_mm : zero+64 : offset(1728), littleendian;
913       task_struct_pid : zero+32 : offset(2144), littleendian;
914       task_struct_comm : 128 : offset(5376), string } ->
915       { task_struct_state = task_struct_state;
916         task_struct_prio = task_struct_prio;
917         task_struct_static_prio = task_struct_static_prio;
918         task_struct_normal_prio = task_struct_normal_prio;
919         task_struct_tasks'next = Int64.sub task_struct_tasks'next 192L;
920         task_struct_tasks'prev = Int64.sub task_struct_tasks'prev 200L;
921         task_struct_mm = task_struct_mm;
922         task_struct_active_mm = task_struct_active_mm;
923         task_struct_pid = task_struct_pid;
924         task_struct_comm = task_struct_comm }
925   | { _ } ->
926       raise (ParseError (struct_name, "parser_38", match_err));;
927 module StringMap = Map.Make(String);;
928 let map = StringMap.empty;;
929 let v = (parser_1, 2704);;
930 let map = StringMap.add "2.6.20-1.2933.fc6.i686" v map;;
931 let v = (parser_1, 2704);;
932 let map = StringMap.add "2.6.21-1.3145.fc7.i686" v map;;
933 let v = (parser_1, 2704);;
934 let map = StringMap.add "2.6.21-1.3190.fc7.i686" v map;;
935 let v = (parser_1, 2704);;
936 let map = StringMap.add "2.6.21-1.3228.fc7.i686" v map;;
937 let v = (parser_2, 3364);;
938 let map = StringMap.add "2.6.23.14-135.fc8.i686" v map;;
939 let v = (parser_2, 3364);;
940 let map = StringMap.add "2.6.23.14-78.fc7.i686" v map;;
941 let v = (parser_3, 4180);;
942 let map = StringMap.add "2.6.26.2-2.fc8.i686" v map;;
943 let v = (parser_1, 1400);;
944 let map = StringMap.add "2.6.20-1.2933.fc6.i686" v map;;
945 let v = (parser_1, 2704);;
946 let map = StringMap.add "2.6.21-1.3128.fc7.i686" v map;;
947 let v = (parser_1, 2704);;
948 let map = StringMap.add "2.6.21-1.3132.fc7.i686" v map;;
949 let v = (parser_1, 2704);;
950 let map = StringMap.add "2.6.21-1.3141.fc7.i686" v map;;
951 let v = (parser_1, 2704);;
952 let map = StringMap.add "2.6.21-1.3144.fc7.i686" v map;;
953 let v = (parser_1, 1400);;
954 let map = StringMap.add "2.6.21-1.3145.fc7.i686" v map;;
955 let v = (parser_1, 1400);;
956 let map = StringMap.add "2.6.21-1.3190.fc7.i686" v map;;
957 let v = (parser_1, 2712);;
958 let map = StringMap.add "2.6.21-1.3209.fc8.i686" v map;;
959 let v = (parser_1, 2712);;
960 let map = StringMap.add "2.6.21-1.3218.fc8.i686" v map;;
961 let v = (parser_1, 2712);;
962 let map = StringMap.add "2.6.21-1.3221.fc8.i686" v map;;
963 let v = (parser_1, 1376);;
964 let map = StringMap.add "2.6.21-1.3228.fc7.i686" v map;;
965 let v = (parser_4, 2880);;
966 let map = StringMap.add "2.6.21-1.3234.fc8.i686" v map;;
967 let v = (parser_5, 2880);;
968 let map = StringMap.add "2.6.21-1.3236.fc8.i686" v map;;
969 let v = (parser_6, 2872);;
970 let map = StringMap.add "2.6.21-1.3238.fc8.i686" v map;;
971 let v = (parser_6, 2872);;
972 let map = StringMap.add "2.6.21-1.3242.fc8.i686" v map;;
973 let v = (parser_7, 2856);;
974 let map = StringMap.add "2.6.22-0.23.rc7.git6.fc8.i686" v map;;
975 let v = (parser_6, 2872);;
976 let map = StringMap.add "2.6.22-0.rc7.2.fc8.i686" v map;;
977 let v = (parser_2, 1548);;
978 let map = StringMap.add "2.6.23.14-135.fc8.i686" v map;;
979 let v = (parser_2, 1548);;
980 let map = StringMap.add "2.6.23.14-78.fc7.i686" v map;;
981 let v = (parser_8, 3540);;
982 let map = StringMap.add "2.6.24-0.167.rc8.git4.fc9.i686" v map;;
983 let v = (parser_8, 3540);;
984 let map = StringMap.add "2.6.24-7.fc9.i686" v map;;
985 let v = (parser_8, 3540);;
986 let map = StringMap.add "2.6.24-9.fc9.i686" v map;;
987 let v = (parser_3, 1328);;
988 let map = StringMap.add "2.6.26.2-2.fc8.i686" v map;;
989 let v = (parser_1, 2704);;
990 let map = StringMap.add "2.6.20-1.2933.fc6.i686" v map;;
991 let v = (parser_9, 3772);;
992 let map = StringMap.add "2.6.20-1.2933.fc6.x86_64" v map;;
993 let v = (parser_1, 2704);;
994 let map = StringMap.add "2.6.21-1.3145.fc7.i686" v map;;
995 let v = (parser_9, 3772);;
996 let map = StringMap.add "2.6.21-1.3145.fc7.x86_64" v map;;
997 let v = (parser_1, 2704);;
998 let map = StringMap.add "2.6.21-1.3190.fc7.i686" v map;;
999 let v = (parser_9, 3772);;
1000 let map = StringMap.add "2.6.21-1.3190.fc7.x86_64" v map;;
1001 let v = (parser_1, 2704);;
1002 let map = StringMap.add "2.6.21-1.3228.fc7.i686" v map;;
1003 let v = (parser_9, 3772);;
1004 let map = StringMap.add "2.6.21-1.3228.fc7.x86_64" v map;;
1005 let v = (parser_2, 3364);;
1006 let map = StringMap.add "2.6.23.14-135.fc8.i686" v map;;
1007 let v = (parser_10, 4468);;
1008 let map = StringMap.add "2.6.23.14-135.fc8.x86_64" v map;;
1009 let v = (parser_10, 4468);;
1010 let map = StringMap.add "2.6.23.14-78.fc7.x86_64" v map;;
1011 let v = (parser_3, 4180);;
1012 let map = StringMap.add "2.6.26.2-2.fc8.i686" v map;;
1013 let v = (parser_11, 5808);;
1014 let map = StringMap.add "2.6.26.2-2.fc8.x86_64" v map;;
1015 let v = (parser_1, 1384);;
1016 let map = StringMap.add "2.6.18-1.2798.fc6.i586" v map;;
1017 let v = (parser_1, 1384);;
1018 let map = StringMap.add "2.6.18-1.2798.fc6.i686" v map;;
1019 let v = (parser_12, 1576);;
1020 let map = StringMap.add "2.6.18-1.2798.fc6.ppc" v map;;
1021 let v = (parser_13, 2104);;
1022 let map = StringMap.add "2.6.18-1.2798.fc6.ppc64" v map;;
1023 let v = (parser_13, 2088);;
1024 let map = StringMap.add "2.6.18-1.2798.fc6.ppc64iseries" v map;;
1025 let v = (parser_14, 1928);;
1026 let map = StringMap.add "2.6.18-1.2798.fc6.x86_64" v map;;
1027 let v = (parser_1, 1400);;
1028 let map = StringMap.add "2.6.20-1.2933.fc6.i586" v map;;
1029 let v = (parser_1, 1400);;
1030 let map = StringMap.add "2.6.20-1.2933.fc6.i686" v map;;
1031 let v = (parser_12, 1592);;
1032 let map = StringMap.add "2.6.20-1.2933.fc6.ppc" v map;;
1033 let v = (parser_13, 2112);;
1034 let map = StringMap.add "2.6.20-1.2933.fc6.ppc64" v map;;
1035 let v = (parser_9, 1920);;
1036 let map = StringMap.add "2.6.20-1.2933.fc6.x86_64" v map;;
1037 let v = (parser_1, 2704);;
1038 let map = StringMap.add "2.6.21-1.3128.fc7.i586" v map;;
1039 let v = (parser_1, 2704);;
1040 let map = StringMap.add "2.6.21-1.3128.fc7.i686" v map;;
1041 let v = (parser_12, 1604);;
1042 let map = StringMap.add "2.6.21-1.3128.fc7.ppc" v map;;
1043 let v = (parser_13, 2132);;
1044 let map = StringMap.add "2.6.21-1.3128.fc7.ppc64" v map;;
1045 let v = (parser_9, 3772);;
1046 let map = StringMap.add "2.6.21-1.3128.fc7.x86_64" v map;;
1047 let v = (parser_1, 2704);;
1048 let map = StringMap.add "2.6.21-1.3132.fc7.i586" v map;;
1049 let v = (parser_1, 2704);;
1050 let map = StringMap.add "2.6.21-1.3132.fc7.i686" v map;;
1051 let v = (parser_12, 1604);;
1052 let map = StringMap.add "2.6.21-1.3132.fc7.ppc" v map;;
1053 let v = (parser_13, 2132);;
1054 let map = StringMap.add "2.6.21-1.3132.fc7.ppc64" v map;;
1055 let v = (parser_9, 3772);;
1056 let map = StringMap.add "2.6.21-1.3132.fc7.x86_64" v map;;
1057 let v = (parser_1, 2704);;
1058 let map = StringMap.add "2.6.21-1.3141.fc7.i586" v map;;
1059 let v = (parser_1, 2704);;
1060 let map = StringMap.add "2.6.21-1.3141.fc7.i686" v map;;
1061 let v = (parser_12, 1604);;
1062 let map = StringMap.add "2.6.21-1.3141.fc7.ppc" v map;;
1063 let v = (parser_13, 2132);;
1064 let map = StringMap.add "2.6.21-1.3141.fc7.ppc64" v map;;
1065 let v = (parser_9, 3772);;
1066 let map = StringMap.add "2.6.21-1.3141.fc7.x86_64" v map;;
1067 let v = (parser_1, 2704);;
1068 let map = StringMap.add "2.6.21-1.3144.fc7.i586" v map;;
1069 let v = (parser_1, 2704);;
1070 let map = StringMap.add "2.6.21-1.3144.fc7.i686" v map;;
1071 let v = (parser_12, 1604);;
1072 let map = StringMap.add "2.6.21-1.3144.fc7.ppc" v map;;
1073 let v = (parser_13, 2132);;
1074 let map = StringMap.add "2.6.21-1.3144.fc7.ppc64" v map;;
1075 let v = (parser_9, 3772);;
1076 let map = StringMap.add "2.6.21-1.3144.fc7.x86_64" v map;;
1077 let v = (parser_1, 1400);;
1078 let map = StringMap.add "2.6.21-1.3145.fc7.i586" v map;;
1079 let v = (parser_1, 1400);;
1080 let map = StringMap.add "2.6.21-1.3145.fc7.i686" v map;;
1081 let v = (parser_12, 1592);;
1082 let map = StringMap.add "2.6.21-1.3145.fc7.ppc" v map;;
1083 let v = (parser_13, 2112);;
1084 let map = StringMap.add "2.6.21-1.3145.fc7.ppc64" v map;;
1085 let v = (parser_9, 1920);;
1086 let map = StringMap.add "2.6.21-1.3145.fc7.x86_64" v map;;
1087 let v = (parser_1, 1400);;
1088 let map = StringMap.add "2.6.21-1.3190.fc7.i586" v map;;
1089 let v = (parser_1, 1400);;
1090 let map = StringMap.add "2.6.21-1.3190.fc7.i686" v map;;
1091 let v = (parser_12, 1592);;
1092 let map = StringMap.add "2.6.21-1.3190.fc7.ppc" v map;;
1093 let v = (parser_13, 2112);;
1094 let map = StringMap.add "2.6.21-1.3190.fc7.ppc64" v map;;
1095 let v = (parser_9, 1920);;
1096 let map = StringMap.add "2.6.21-1.3190.fc7.x86_64" v map;;
1097 let v = (parser_1, 2712);;
1098 let map = StringMap.add "2.6.21-1.3209.fc8.i586" v map;;
1099 let v = (parser_1, 2712);;
1100 let map = StringMap.add "2.6.21-1.3209.fc8.i686" v map;;
1101 let v = (parser_12, 1612);;
1102 let map = StringMap.add "2.6.21-1.3209.fc8.ppc" v map;;
1103 let v = (parser_15, 2116);;
1104 let map = StringMap.add "2.6.21-1.3209.fc8.ppc64" v map;;
1105 let v = (parser_16, 3756);;
1106 let map = StringMap.add "2.6.21-1.3209.fc8.x86_64" v map;;
1107 let v = (parser_1, 2712);;
1108 let map = StringMap.add "2.6.21-1.3218.fc8.i586" v map;;
1109 let v = (parser_1, 2712);;
1110 let map = StringMap.add "2.6.21-1.3218.fc8.i686" v map;;
1111 let v = (parser_12, 1612);;
1112 let map = StringMap.add "2.6.21-1.3218.fc8.ppc" v map;;
1113 let v = (parser_15, 2116);;
1114 let map = StringMap.add "2.6.21-1.3218.fc8.ppc64" v map;;
1115 let v = (parser_16, 3756);;
1116 let map = StringMap.add "2.6.21-1.3218.fc8.x86_64" v map;;
1117 let v = (parser_1, 2712);;
1118 let map = StringMap.add "2.6.21-1.3221.fc8.i586" v map;;
1119 let v = (parser_1, 2712);;
1120 let map = StringMap.add "2.6.21-1.3221.fc8.i686" v map;;
1121 let v = (parser_12, 1612);;
1122 let map = StringMap.add "2.6.21-1.3221.fc8.ppc" v map;;
1123 let v = (parser_15, 2116);;
1124 let map = StringMap.add "2.6.21-1.3221.fc8.ppc64" v map;;
1125 let v = (parser_16, 3756);;
1126 let map = StringMap.add "2.6.21-1.3221.fc8.x86_64" v map;;
1127 let v = (parser_1, 1376);;
1128 let map = StringMap.add "2.6.21-1.3228.fc7.i586" v map;;
1129 let v = (parser_1, 1376);;
1130 let map = StringMap.add "2.6.21-1.3228.fc7.i686" v map;;
1131 let v = (parser_12, 1560);;
1132 let map = StringMap.add "2.6.21-1.3228.fc7.ppc" v map;;
1133 let v = (parser_13, 2072);;
1134 let map = StringMap.add "2.6.21-1.3228.fc7.ppc64" v map;;
1135 let v = (parser_9, 1880);;
1136 let map = StringMap.add "2.6.21-1.3228.fc7.x86_64" v map;;
1137 let v = (parser_4, 2880);;
1138 let map = StringMap.add "2.6.21-1.3234.fc8.i686" v map;;
1139 let v = (parser_17, 1780);;
1140 let map = StringMap.add "2.6.21-1.3234.fc8.ppc" v map;;
1141 let v = (parser_18, 2292);;
1142 let map = StringMap.add "2.6.21-1.3234.fc8.ppc64" v map;;
1143 let v = (parser_19, 3932);;
1144 let map = StringMap.add "2.6.21-1.3234.fc8.x86_64" v map;;
1145 let v = (parser_5, 2880);;
1146 let map = StringMap.add "2.6.21-1.3236.fc8.i686" v map;;
1147 let v = (parser_20, 1780);;
1148 let map = StringMap.add "2.6.21-1.3236.fc8.ppc" v map;;
1149 let v = (parser_21, 2308);;
1150 let map = StringMap.add "2.6.21-1.3236.fc8.ppc64" v map;;
1151 let v = (parser_22, 3948);;
1152 let map = StringMap.add "2.6.21-1.3236.fc8.x86_64" v map;;
1153 let v = (parser_6, 2872);;
1154 let map = StringMap.add "2.6.21-1.3238.fc8.i686" v map;;
1155 let v = (parser_23, 1756);;
1156 let map = StringMap.add "2.6.21-1.3238.fc8.ppc" v map;;
1157 let v = (parser_24, 2276);;
1158 let map = StringMap.add "2.6.21-1.3238.fc8.ppc64" v map;;
1159 let v = (parser_25, 3916);;
1160 let map = StringMap.add "2.6.21-1.3238.fc8.x86_64" v map;;
1161 let v = (parser_6, 2872);;
1162 let map = StringMap.add "2.6.21-1.3242.fc8.i686" v map;;
1163 let v = (parser_23, 1756);;
1164 let map = StringMap.add "2.6.21-1.3242.fc8.ppc" v map;;
1165 let v = (parser_24, 2276);;
1166 let map = StringMap.add "2.6.21-1.3242.fc8.ppc64" v map;;
1167 let v = (parser_25, 3916);;
1168 let map = StringMap.add "2.6.21-1.3242.fc8.x86_64" v map;;
1169 let v = (parser_7, 2856);;
1170 let map = StringMap.add "2.6.22-0.23.rc7.git6.fc8.i686" v map;;
1171 let v = (parser_26, 1756);;
1172 let map = StringMap.add "2.6.22-0.23.rc7.git6.fc8.ppc" v map;;
1173 let v = (parser_27, 2292);;
1174 let map = StringMap.add "2.6.22-0.23.rc7.git6.fc8.ppc64" v map;;
1175 let v = (parser_28, 3932);;
1176 let map = StringMap.add "2.6.22-0.23.rc7.git6.fc8.x86_64" v map;;
1177 let v = (parser_6, 2872);;
1178 let map = StringMap.add "2.6.22-0.rc7.2.fc8.i686" v map;;
1179 let v = (parser_23, 1756);;
1180 let map = StringMap.add "2.6.22-0.rc7.2.fc8.ppc" v map;;
1181 let v = (parser_24, 2276);;
1182 let map = StringMap.add "2.6.22-0.rc7.2.fc8.ppc64" v map;;
1183 let v = (parser_25, 3916);;
1184 let map = StringMap.add "2.6.22-0.rc7.2.fc8.x86_64" v map;;
1185 let v = (parser_2, 1548);;
1186 let map = StringMap.add "2.6.23.14-135.fc8.i586" v map;;
1187 let v = (parser_2, 1548);;
1188 let map = StringMap.add "2.6.23.14-135.fc8.i686" v map;;
1189 let v = (parser_29, 1736);;
1190 let map = StringMap.add "2.6.23.14-135.fc8.ppc" v map;;
1191 let v = (parser_30, 2272);;
1192 let map = StringMap.add "2.6.23.14-135.fc8.ppc64" v map;;
1193 let v = (parser_10, 2080);;
1194 let map = StringMap.add "2.6.23.14-135.fc8.x86_64" v map;;
1195 let v = (parser_2, 1548);;
1196 let map = StringMap.add "2.6.23.14-78.fc7.i586" v map;;
1197 let v = (parser_2, 1548);;
1198 let map = StringMap.add "2.6.23.14-78.fc7.i686" v map;;
1199 let v = (parser_29, 1736);;
1200 let map = StringMap.add "2.6.23.14-78.fc7.ppc" v map;;
1201 let v = (parser_30, 2272);;
1202 let map = StringMap.add "2.6.23.14-78.fc7.ppc64" v map;;
1203 let v = (parser_10, 2080);;
1204 let map = StringMap.add "2.6.23.14-78.fc7.x86_64" v map;;
1205 let v = (parser_8, 3540);;
1206 let map = StringMap.add "2.6.24-0.167.rc8.git4.fc9.i586" v map;;
1207 let v = (parser_8, 3540);;
1208 let map = StringMap.add "2.6.24-0.167.rc8.git4.fc9.i686" v map;;
1209 let v = (parser_31, 1936);;
1210 let map = StringMap.add "2.6.24-0.167.rc8.git4.fc9.ppc" v map;;
1211 let v = (parser_32, 2492);;
1212 let map = StringMap.add "2.6.24-0.167.rc8.git4.fc9.ppc64" v map;;
1213 let v = (parser_33, 4684);;
1214 let map = StringMap.add "2.6.24-0.167.rc8.git4.fc9.x86_64" v map;;
1215 let v = (parser_8, 3540);;
1216 let map = StringMap.add "2.6.24-7.fc9.i586" v map;;
1217 let v = (parser_8, 3540);;
1218 let map = StringMap.add "2.6.24-7.fc9.i686" v map;;
1219 let v = (parser_31, 1936);;
1220 let map = StringMap.add "2.6.24-7.fc9.ppc" v map;;
1221 let v = (parser_32, 2492);;
1222 let map = StringMap.add "2.6.24-7.fc9.ppc64" v map;;
1223 let v = (parser_33, 4684);;
1224 let map = StringMap.add "2.6.24-7.fc9.x86_64" v map;;
1225 let v = (parser_8, 3540);;
1226 let map = StringMap.add "2.6.24-9.fc9.i586" v map;;
1227 let v = (parser_8, 3540);;
1228 let map = StringMap.add "2.6.24-9.fc9.i686" v map;;
1229 let v = (parser_31, 1936);;
1230 let map = StringMap.add "2.6.24-9.fc9.ppc" v map;;
1231 let v = (parser_32, 2492);;
1232 let map = StringMap.add "2.6.24-9.fc9.ppc64" v map;;
1233 let v = (parser_33, 4684);;
1234 let map = StringMap.add "2.6.24-9.fc9.x86_64" v map;;
1235 let v = (parser_34, 1832);;
1236 let map = StringMap.add "2.6.25.11-97.fc9.i686" v map;;
1237 let v = (parser_35, 2496);;
1238 let map = StringMap.add "2.6.25.11-97.fc9.x86_64" v map;;
1239 let v = (parser_36, 1324);;
1240 let map = StringMap.add "2.6.26.2-2.fc8.i586" v map;;
1241 let v = (parser_3, 1328);;
1242 let map = StringMap.add "2.6.26.2-2.fc8.i686" v map;;
1243 let v = (parser_37, 2572);;
1244 let map = StringMap.add "2.6.26.2-2.fc8.ppc64" v map;;
1245 let v = (parser_1, 1368);;
1246 let map = StringMap.add "2.6.18-1.2798.fc6.i686" v map;;
1247 let v = (parser_13, 2104);;
1248 let map = StringMap.add "2.6.18-1.2798.fc6.ppc64" v map;;
1249 let v = (parser_13, 2088);;
1250 let map = StringMap.add "2.6.18-1.2798.fc6.ppc64iseries" v map;;
1251 let v = (parser_38, 1856);;
1252 let map = StringMap.add "2.6.18-1.2798.fc6.x86_64" v map;;
1253 let v = (parser_1, 1384);;
1254 let map = StringMap.add "2.6.20-1.2933.fc6.i686" v map;;
1255 let v = (parser_13, 2112);;
1256 let map = StringMap.add "2.6.20-1.2933.fc6.ppc64" v map;;
1257 let v = (parser_9, 1880);;
1258 let map = StringMap.add "2.6.20-1.2933.fc6.x86_64" v map;;
1259 let v = (parser_13, 2132);;
1260 let map = StringMap.add "2.6.21-1.3128.fc7.ppc64" v map;;
1261 let v = (parser_9, 3780);;
1262 let map = StringMap.add "2.6.21-1.3128.fc7.x86_64" v map;;
1263 let v = (parser_13, 2132);;
1264 let map = StringMap.add "2.6.21-1.3132.fc7.ppc64" v map;;
1265 let v = (parser_9, 3780);;
1266 let map = StringMap.add "2.6.21-1.3132.fc7.x86_64" v map;;
1267 let v = (parser_13, 2132);;
1268 let map = StringMap.add "2.6.21-1.3141.fc7.ppc64" v map;;
1269 let v = (parser_9, 3780);;
1270 let map = StringMap.add "2.6.21-1.3141.fc7.x86_64" v map;;
1271 let v = (parser_13, 2132);;
1272 let map = StringMap.add "2.6.21-1.3144.fc7.ppc64" v map;;
1273 let v = (parser_9, 3780);;
1274 let map = StringMap.add "2.6.21-1.3144.fc7.x86_64" v map;;
1275 let v = (parser_13, 2112);;
1276 let map = StringMap.add "2.6.21-1.3145.fc7.ppc64" v map;;
1277 let v = (parser_9, 1880);;
1278 let map = StringMap.add "2.6.21-1.3145.fc7.x86_64" v map;;
1279 let v = (parser_13, 2112);;
1280 let map = StringMap.add "2.6.21-1.3190.fc7.ppc64" v map;;
1281 let v = (parser_9, 1880);;
1282 let map = StringMap.add "2.6.21-1.3190.fc7.x86_64" v map;;
1283 let v = (parser_15, 2116);;
1284 let map = StringMap.add "2.6.21-1.3209.fc8.ppc64" v map;;
1285 let v = (parser_15, 2116);;
1286 let map = StringMap.add "2.6.21-1.3218.fc8.ppc64" v map;;
1287 let v = (parser_15, 2116);;
1288 let map = StringMap.add "2.6.21-1.3221.fc8.ppc64" v map;;
1289 let v = (parser_13, 2072);;
1290 let map = StringMap.add "2.6.21-1.3228.fc7.ppc64" v map;;
1291 let v = (parser_9, 1832);;
1292 let map = StringMap.add "2.6.21-1.3228.fc7.x86_64" v map;;
1293 let v = (parser_18, 2292);;
1294 let map = StringMap.add "2.6.21-1.3234.fc8.ppc64" v map;;
1295 let v = (parser_21, 2308);;
1296 let map = StringMap.add "2.6.21-1.3236.fc8.ppc64" v map;;
1297 let v = (parser_24, 2276);;
1298 let map = StringMap.add "2.6.21-1.3238.fc8.ppc64" v map;;
1299 let v = (parser_24, 2276);;
1300 let map = StringMap.add "2.6.21-1.3242.fc8.ppc64" v map;;
1301 let v = (parser_27, 2292);;
1302 let map = StringMap.add "2.6.22-0.23.rc7.git6.fc8.ppc64" v map;;
1303 let v = (parser_24, 2276);;
1304 let map = StringMap.add "2.6.22-0.rc7.2.fc8.ppc64" v map;;
1305 let v = (parser_30, 2272);;
1306 let map = StringMap.add "2.6.23.14-135.fc8.ppc64" v map;;
1307 let v = (parser_30, 2272);;
1308 let map = StringMap.add "2.6.23.14-78.fc7.ppc64" v map;;
1309 let v = (parser_32, 2492);;
1310 let map = StringMap.add "2.6.24-0.167.rc8.git4.fc9.ppc64" v map;;
1311 let v = (parser_32, 2492);;
1312 let map = StringMap.add "2.6.24-7.fc9.ppc64" v map;;
1313 let v = (parser_32, 2492);;
1314 let map = StringMap.add "2.6.24-9.fc9.ppc64" v map;;
1315 let v = (parser_37, 2572);;
1316 let map = StringMap.add "2.6.26.2-2.fc8.ppc64" v map;;
1317 let v = (parser_12, 1592);;
1318 let map = StringMap.add "2.6.18-1.2798.fc6.ppc" v map;;
1319 let v = (parser_12, 1608);;
1320 let map = StringMap.add "2.6.20-1.2933.fc6.ppc" v map;;
1321 let v = (parser_12, 1620);;
1322 let map = StringMap.add "2.6.21-1.3128.fc7.ppc" v map;;
1323 let v = (parser_12, 1620);;
1324 let map = StringMap.add "2.6.21-1.3132.fc7.ppc" v map;;
1325 let v = (parser_12, 1620);;
1326 let map = StringMap.add "2.6.21-1.3141.fc7.ppc" v map;;
1327 let v = (parser_12, 1620);;
1328 let map = StringMap.add "2.6.21-1.3144.fc7.ppc" v map;;
1329 let v = (parser_12, 1608);;
1330 let map = StringMap.add "2.6.21-1.3145.fc7.ppc" v map;;
1331 let v = (parser_12, 1608);;
1332 let map = StringMap.add "2.6.21-1.3190.fc7.ppc" v map;;
1333 let v = (parser_12, 1628);;
1334 let map = StringMap.add "2.6.21-1.3209.fc8.ppc" v map;;
1335 let v = (parser_12, 1628);;
1336 let map = StringMap.add "2.6.21-1.3218.fc8.ppc" v map;;
1337 let v = (parser_12, 1628);;
1338 let map = StringMap.add "2.6.21-1.3221.fc8.ppc" v map;;
1339 let v = (parser_12, 1584);;
1340 let map = StringMap.add "2.6.21-1.3228.fc7.ppc" v map;;
1341 let v = (parser_17, 1796);;
1342 let map = StringMap.add "2.6.21-1.3234.fc8.ppc" v map;;
1343 let v = (parser_20, 1796);;
1344 let map = StringMap.add "2.6.21-1.3236.fc8.ppc" v map;;
1345 let v = (parser_23, 1772);;
1346 let map = StringMap.add "2.6.21-1.3238.fc8.ppc" v map;;
1347 let v = (parser_23, 1772);;
1348 let map = StringMap.add "2.6.21-1.3242.fc8.ppc" v map;;
1349 let v = (parser_26, 1772);;
1350 let map = StringMap.add "2.6.22-0.23.rc7.git6.fc8.ppc" v map;;
1351 let v = (parser_23, 1772);;
1352 let map = StringMap.add "2.6.22-0.rc7.2.fc8.ppc" v map;;
1353 let v = (parser_29, 1760);;
1354 let map = StringMap.add "2.6.23.14-135.fc8.ppc" v map;;
1355 let v = (parser_29, 1760);;
1356 let map = StringMap.add "2.6.23.14-78.fc7.ppc" v map;;
1357 let v = (parser_31, 1948);;
1358 let map = StringMap.add "2.6.24-0.167.rc8.git4.fc9.ppc" v map;;
1359 let v = (parser_31, 1948);;
1360 let map = StringMap.add "2.6.24-7.fc9.ppc" v map;;
1361 let v = (parser_31, 1948);;
1362 let map = StringMap.add "2.6.24-9.fc9.ppc" v map;;
1363 let v = (parser_1, 1384);;
1364 let map = StringMap.add "2.6.18-1.2798.fc6.i686" v map;;
1365 let v = (parser_14, 1928);;
1366 let map = StringMap.add "2.6.18-1.2798.fc6.x86_64" v map;;
1367 let v = (parser_1, 1400);;
1368 let map = StringMap.add "2.6.20-1.2933.fc6.i686" v map;;
1369 let v = (parser_9, 1920);;
1370 let map = StringMap.add "2.6.20-1.2933.fc6.x86_64" v map;;
1371 type kernel_version = string;;
1372 let task_struct_known version = StringMap.mem version map;;
1373 let task_struct_size version =
1374   let (_, size) = StringMap.find version map in size;;
1375 let task_struct_of_bits version bits =
1376   let (parsefn, _) = StringMap.find version map in parsefn bits;;
1377 let get_task_struct version mem addr =
1378   let (parsefn, size) = StringMap.find version map in
1379   let bytes = Virt_mem_mmap.get_bytes mem addr size in
1380   let bits = Bitstring.bitstring_of_string bytes in parsefn bits;;