edef203ced4c87b347882cebdb65191af3b1f5d7
[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+32 : offset(0), littleendian;
210       task_struct_prio : zero+32 : offset(192), littleendian;
211       task_struct_static_prio : zero+32 : offset(224), littleendian;
212       task_struct_normal_prio : zero+32 : offset(256), littleendian;
213       task_struct_tasks'next : zero+32 : offset(3584), littleendian;
214       task_struct_tasks'prev : zero+32 : offset(3616), littleendian;
215       task_struct_mm : zero+32 : offset(3648), littleendian;
216       task_struct_active_mm : zero+32 : offset(3680), littleendian;
217       task_struct_pid : zero+32 : offset(3936), littleendian;
218       task_struct_comm : 128 : offset(6304), 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 448L;
224         task_struct_tasks'prev = Int64.sub task_struct_tasks'prev 452L;
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(320), littleendian;
235       task_struct_static_prio : zero+32 : offset(352), littleendian;
236       task_struct_normal_prio : zero+32 : offset(384), littleendian;
237       task_struct_tasks'next : zero+64 : offset(1536), littleendian;
238       task_struct_tasks'prev : zero+64 : offset(1600), littleendian;
239       task_struct_mm : zero+64 : offset(1664), littleendian;
240       task_struct_active_mm : zero+64 : offset(1728), littleendian;
241       task_struct_pid : zero+32 : offset(2144), littleendian;
242       task_struct_comm : 128 : offset(5440), 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 192L;
248         task_struct_tasks'prev = Int64.sub task_struct_tasks'prev 200L;
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(224), littleendian;
259       task_struct_static_prio : zero+32 : offset(256), littleendian;
260       task_struct_normal_prio : zero+32 : offset(288), littleendian;
261       task_struct_tasks'next : zero+64 : offset(2816), littleendian;
262       task_struct_tasks'prev : zero+64 : offset(2880), littleendian;
263       task_struct_mm : zero+64 : offset(2944), littleendian;
264       task_struct_active_mm : zero+64 : offset(3008), littleendian;
265       task_struct_pid : zero+32 : offset(3328), littleendian;
266       task_struct_comm : 128 : offset(6848), 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 352L;
272         task_struct_tasks'prev = Int64.sub task_struct_tasks'prev 360L;
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+64 : offset(0), littleendian;
282       task_struct_prio : zero+32 : offset(256), littleendian;
283       task_struct_static_prio : zero+32 : offset(288), littleendian;
284       task_struct_normal_prio : zero+32 : offset(320), littleendian;
285       task_struct_tasks'next : zero+64 : offset(4096), littleendian;
286       task_struct_tasks'prev : zero+64 : offset(4160), littleendian;
287       task_struct_mm : zero+64 : offset(4224), littleendian;
288       task_struct_active_mm : zero+64 : offset(4288), littleendian;
289       task_struct_pid : zero+32 : offset(4608), littleendian;
290       task_struct_comm : 128 : offset(8712), 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 512L;
296         task_struct_tasks'prev = Int64.sub task_struct_tasks'prev 520L;
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+32 : offset(0), bigendian;
306       task_struct_prio : zero+32 : offset(192), bigendian;
307       task_struct_static_prio : zero+32 : offset(224), bigendian;
308       task_struct_normal_prio : zero+32 : offset(256), bigendian;
309       task_struct_tasks'next : zero+32 : offset(1024), bigendian;
310       task_struct_tasks'prev : zero+32 : offset(1056), bigendian;
311       task_struct_mm : zero+32 : offset(1088), bigendian;
312       task_struct_active_mm : zero+32 : offset(1120), bigendian;
313       task_struct_pid : zero+32 : offset(1376), bigendian;
314       task_struct_comm : 128 : offset(3264), 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 128L;
320         task_struct_tasks'prev = Int64.sub task_struct_tasks'prev 132L;
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), bigendian;
330       task_struct_prio : zero+32 : offset(320), bigendian;
331       task_struct_static_prio : zero+32 : offset(352), bigendian;
332       task_struct_normal_prio : zero+32 : offset(384), bigendian;
333       task_struct_tasks'next : zero+64 : offset(1600), bigendian;
334       task_struct_tasks'prev : zero+64 : offset(1664), bigendian;
335       task_struct_mm : zero+64 : offset(1728), bigendian;
336       task_struct_active_mm : zero+64 : offset(1792), bigendian;
337       task_struct_pid : zero+32 : offset(2208), bigendian;
338       task_struct_comm : 128 : offset(5440), 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 200L;
344         task_struct_tasks'prev = Int64.sub task_struct_tasks'prev 208L;
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), littleendian;
354       task_struct_prio : zero+32 : offset(320), littleendian;
355       task_struct_static_prio : zero+32 : offset(352), littleendian;
356       task_struct_normal_prio : zero+32 : offset(384), littleendian;
357       task_struct_tasks'next : zero+64 : offset(1728), littleendian;
358       task_struct_tasks'prev : zero+64 : offset(1792), littleendian;
359       task_struct_mm : zero+64 : offset(1856), littleendian;
360       task_struct_active_mm : zero+64 : offset(1920), littleendian;
361       task_struct_pid : zero+32 : offset(2336), littleendian;
362       task_struct_comm : 128 : offset(5568), 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 216L;
368         task_struct_tasks'prev = Int64.sub task_struct_tasks'prev 224L;
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), bigendian;
378       task_struct_prio : zero+32 : offset(256), bigendian;
379       task_struct_static_prio : zero+32 : offset(288), bigendian;
380       task_struct_normal_prio : zero+32 : offset(320), bigendian;
381       task_struct_tasks'next : zero+64 : offset(1472), bigendian;
382       task_struct_tasks'prev : zero+64 : offset(1536), bigendian;
383       task_struct_mm : zero+64 : offset(1600), bigendian;
384       task_struct_active_mm : zero+64 : offset(1664), bigendian;
385       task_struct_pid : zero+32 : offset(1984), bigendian;
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 184L;
392         task_struct_tasks'prev = Int64.sub task_struct_tasks'prev 192L;
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+64 : offset(0), littleendian;
402       task_struct_prio : zero+32 : offset(256), littleendian;
403       task_struct_static_prio : zero+32 : offset(288), littleendian;
404       task_struct_normal_prio : zero+32 : offset(320), littleendian;
405       task_struct_tasks'next : zero+64 : offset(1408), littleendian;
406       task_struct_tasks'prev : zero+64 : offset(1472), littleendian;
407       task_struct_mm : zero+64 : offset(1536), littleendian;
408       task_struct_active_mm : zero+64 : offset(1600), littleendian;
409       task_struct_pid : zero+32 : offset(1920), littleendian;
410       task_struct_comm : 128 : offset(5184), 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 176L;
416         task_struct_tasks'prev = Int64.sub task_struct_tasks'prev 184L;
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+32 : offset(0), bigendian;
426       task_struct_prio : zero+32 : offset(192), bigendian;
427       task_struct_static_prio : zero+32 : offset(224), bigendian;
428       task_struct_normal_prio : zero+32 : offset(256), bigendian;
429       task_struct_tasks'next : zero+32 : offset(2240), bigendian;
430       task_struct_tasks'prev : zero+32 : offset(2272), bigendian;
431       task_struct_mm : zero+32 : offset(2432), bigendian;
432       task_struct_active_mm : zero+32 : offset(2464), bigendian;
433       task_struct_pid : zero+32 : offset(2720), bigendian;
434       task_struct_comm : 128 : offset(4672), 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 280L;
440         task_struct_tasks'prev = Int64.sub task_struct_tasks'prev 284L;
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), bigendian;
450       task_struct_prio : zero+32 : offset(256), bigendian;
451       task_struct_static_prio : zero+32 : offset(288), bigendian;
452       task_struct_normal_prio : zero+32 : offset(320), bigendian;
453       task_struct_tasks'next : zero+64 : offset(2688), bigendian;
454       task_struct_tasks'prev : zero+64 : offset(2752), bigendian;
455       task_struct_mm : zero+64 : offset(3072), bigendian;
456       task_struct_active_mm : zero+64 : offset(3136), bigendian;
457       task_struct_pid : zero+32 : offset(3456), bigendian;
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 336L;
464         task_struct_tasks'prev = Int64.sub task_struct_tasks'prev 344L;
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+64 : offset(0), littleendian;
474       task_struct_prio : zero+32 : offset(256), littleendian;
475       task_struct_static_prio : zero+32 : offset(288), littleendian;
476       task_struct_normal_prio : zero+32 : offset(320), littleendian;
477       task_struct_tasks'next : zero+64 : offset(2624), littleendian;
478       task_struct_tasks'prev : zero+64 : offset(2688), littleendian;
479       task_struct_mm : zero+64 : offset(3008), littleendian;
480       task_struct_active_mm : zero+64 : offset(3072), littleendian;
481       task_struct_pid : zero+32 : offset(3392), littleendian;
482       task_struct_comm : 128 : offset(6720), 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 328L;
488         task_struct_tasks'prev = Int64.sub task_struct_tasks'prev 336L;
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+32 : offset(0), bigendian;
498       task_struct_prio : zero+32 : offset(192), bigendian;
499       task_struct_static_prio : zero+32 : offset(224), bigendian;
500       task_struct_normal_prio : zero+32 : offset(256), bigendian;
501       task_struct_tasks'next : zero+32 : offset(2304), bigendian;
502       task_struct_tasks'prev : zero+32 : offset(2336), bigendian;
503       task_struct_mm : zero+32 : offset(2496), bigendian;
504       task_struct_active_mm : zero+32 : offset(2528), bigendian;
505       task_struct_pid : zero+32 : offset(2784), bigendian;
506       task_struct_comm : 128 : offset(4736), 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 288L;
512         task_struct_tasks'prev = Int64.sub task_struct_tasks'prev 292L;
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), bigendian;
522       task_struct_prio : zero+32 : offset(256), bigendian;
523       task_struct_static_prio : zero+32 : offset(288), bigendian;
524       task_struct_normal_prio : zero+32 : offset(320), bigendian;
525       task_struct_tasks'next : zero+64 : offset(2880), bigendian;
526       task_struct_tasks'prev : zero+64 : offset(2944), bigendian;
527       task_struct_mm : zero+64 : offset(3264), bigendian;
528       task_struct_active_mm : zero+64 : offset(3328), bigendian;
529       task_struct_pid : zero+32 : offset(3648), bigendian;
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 360L;
536         task_struct_tasks'prev = Int64.sub task_struct_tasks'prev 368L;
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+64 : offset(0), littleendian;
546       task_struct_prio : zero+32 : offset(256), littleendian;
547       task_struct_static_prio : zero+32 : offset(288), littleendian;
548       task_struct_normal_prio : zero+32 : offset(320), littleendian;
549       task_struct_tasks'next : zero+64 : offset(2816), littleendian;
550       task_struct_tasks'prev : zero+64 : offset(2880), littleendian;
551       task_struct_mm : zero+64 : offset(3200), littleendian;
552       task_struct_active_mm : zero+64 : offset(3264), littleendian;
553       task_struct_pid : zero+32 : offset(3584), littleendian;
554       task_struct_comm : 128 : offset(6912), 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 352L;
560         task_struct_tasks'prev = Int64.sub task_struct_tasks'prev 360L;
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+32 : offset(0), bigendian;
570       task_struct_prio : zero+32 : offset(160), bigendian;
571       task_struct_static_prio : zero+32 : offset(192), bigendian;
572       task_struct_normal_prio : zero+32 : offset(224), bigendian;
573       task_struct_tasks'next : zero+32 : offset(2240), bigendian;
574       task_struct_tasks'prev : zero+32 : offset(2272), bigendian;
575       task_struct_mm : zero+32 : offset(2304), bigendian;
576       task_struct_active_mm : zero+32 : offset(2336), bigendian;
577       task_struct_pid : zero+32 : offset(2592), bigendian;
578       task_struct_comm : 128 : offset(4480), 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 280L;
584         task_struct_tasks'prev = Int64.sub task_struct_tasks'prev 284L;
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), bigendian;
594       task_struct_prio : zero+32 : offset(224), bigendian;
595       task_struct_static_prio : zero+32 : offset(256), bigendian;
596       task_struct_normal_prio : zero+32 : offset(288), bigendian;
597       task_struct_tasks'next : zero+64 : offset(2816), bigendian;
598       task_struct_tasks'prev : zero+64 : offset(2880), bigendian;
599       task_struct_mm : zero+64 : offset(2944), bigendian;
600       task_struct_active_mm : zero+64 : offset(3008), bigendian;
601       task_struct_pid : zero+32 : offset(3328), bigendian;
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 352L;
608         task_struct_tasks'prev = Int64.sub task_struct_tasks'prev 360L;
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+64 : offset(0), littleendian;
618       task_struct_prio : zero+32 : offset(224), littleendian;
619       task_struct_static_prio : zero+32 : offset(256), littleendian;
620       task_struct_normal_prio : zero+32 : offset(288), littleendian;
621       task_struct_tasks'next : zero+64 : offset(2752), littleendian;
622       task_struct_tasks'prev : zero+64 : offset(2816), littleendian;
623       task_struct_mm : zero+64 : offset(2880), littleendian;
624       task_struct_active_mm : zero+64 : offset(2944), littleendian;
625       task_struct_pid : zero+32 : offset(3264), littleendian;
626       task_struct_comm : 128 : offset(6528), 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 344L;
632         task_struct_tasks'prev = Int64.sub task_struct_tasks'prev 352L;
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+32 : offset(0), bigendian;
642       task_struct_prio : zero+32 : offset(160), bigendian;
643       task_struct_static_prio : zero+32 : offset(192), bigendian;
644       task_struct_normal_prio : zero+32 : offset(224), bigendian;
645       task_struct_tasks'next : zero+32 : offset(2176), bigendian;
646       task_struct_tasks'prev : zero+32 : offset(2208), bigendian;
647       task_struct_mm : zero+32 : offset(2240), bigendian;
648       task_struct_active_mm : zero+32 : offset(2272), bigendian;
649       task_struct_pid : zero+32 : offset(2528), bigendian;
650       task_struct_comm : 128 : offset(4416), 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 272L;
656         task_struct_tasks'prev = Int64.sub task_struct_tasks'prev 276L;
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), bigendian;
666       task_struct_prio : zero+32 : offset(224), bigendian;
667       task_struct_static_prio : zero+32 : offset(256), bigendian;
668       task_struct_normal_prio : zero+32 : offset(288), bigendian;
669       task_struct_tasks'next : zero+64 : offset(2880), bigendian;
670       task_struct_tasks'prev : zero+64 : offset(2944), bigendian;
671       task_struct_mm : zero+64 : offset(3008), bigendian;
672       task_struct_active_mm : zero+64 : offset(3072), bigendian;
673       task_struct_pid : zero+32 : offset(3392), bigendian;
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 360L;
680         task_struct_tasks'prev = Int64.sub task_struct_tasks'prev 368L;
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+64 : offset(0), littleendian;
690       task_struct_prio : zero+32 : offset(224), littleendian;
691       task_struct_static_prio : zero+32 : offset(256), littleendian;
692       task_struct_normal_prio : zero+32 : offset(288), littleendian;
693       task_struct_tasks'next : zero+64 : offset(2816), littleendian;
694       task_struct_tasks'prev : zero+64 : offset(2880), littleendian;
695       task_struct_mm : zero+64 : offset(2944), littleendian;
696       task_struct_active_mm : zero+64 : offset(3008), littleendian;
697       task_struct_pid : zero+32 : offset(3328), littleendian;
698       task_struct_comm : 128 : offset(6592), 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 352L;
704         task_struct_tasks'prev = Int64.sub task_struct_tasks'prev 360L;
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+32 : offset(0), bigendian;
714       task_struct_prio : zero+32 : offset(160), bigendian;
715       task_struct_static_prio : zero+32 : offset(192), bigendian;
716       task_struct_normal_prio : zero+32 : offset(224), bigendian;
717       task_struct_tasks'next : zero+32 : offset(2240), bigendian;
718       task_struct_tasks'prev : zero+32 : offset(2272), bigendian;
719       task_struct_mm : zero+32 : offset(2304), bigendian;
720       task_struct_active_mm : zero+32 : offset(2336), bigendian;
721       task_struct_pid : zero+32 : offset(2592), bigendian;
722       task_struct_comm : 128 : offset(4608), 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 280L;
728         task_struct_tasks'prev = Int64.sub task_struct_tasks'prev 284L;
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+64 : offset(0), bigendian;
738       task_struct_prio : zero+32 : offset(224), bigendian;
739       task_struct_static_prio : zero+32 : offset(256), bigendian;
740       task_struct_normal_prio : zero+32 : offset(288), bigendian;
741       task_struct_tasks'next : zero+64 : offset(2880), bigendian;
742       task_struct_tasks'prev : zero+64 : offset(2944), bigendian;
743       task_struct_mm : zero+64 : offset(3008), bigendian;
744       task_struct_active_mm : zero+64 : offset(3072), bigendian;
745       task_struct_pid : zero+32 : offset(3392), bigendian;
746       task_struct_comm : 128 : offset(6848), 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 360L;
752         task_struct_tasks'prev = Int64.sub task_struct_tasks'prev 368L;
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+32 : offset(0), bigendian;
762       task_struct_prio : zero+32 : offset(160), bigendian;
763       task_struct_static_prio : zero+32 : offset(192), bigendian;
764       task_struct_normal_prio : zero+32 : offset(224), bigendian;
765       task_struct_tasks'next : zero+32 : offset(3136), bigendian;
766       task_struct_tasks'prev : zero+32 : offset(3168), bigendian;
767       task_struct_mm : zero+32 : offset(3200), bigendian;
768       task_struct_active_mm : zero+32 : offset(3232), bigendian;
769       task_struct_pid : zero+32 : offset(3488), bigendian;
770       task_struct_comm : 128 : offset(5576), 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 392L;
776         task_struct_tasks'prev = Int64.sub task_struct_tasks'prev 396L;
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), bigendian;
786       task_struct_prio : zero+32 : offset(224), bigendian;
787       task_struct_static_prio : zero+32 : offset(256), bigendian;
788       task_struct_normal_prio : zero+32 : offset(288), bigendian;
789       task_struct_tasks'next : zero+64 : offset(3648), bigendian;
790       task_struct_tasks'prev : zero+64 : offset(3712), bigendian;
791       task_struct_mm : zero+64 : offset(3776), bigendian;
792       task_struct_active_mm : zero+64 : offset(3840), bigendian;
793       task_struct_pid : zero+32 : offset(4160), bigendian;
794       task_struct_comm : 128 : offset(7752), 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+64 : offset(0), littleendian;
810       task_struct_prio : zero+32 : offset(224), littleendian;
811       task_struct_static_prio : zero+32 : offset(256), littleendian;
812       task_struct_normal_prio : zero+32 : offset(288), littleendian;
813       task_struct_tasks'next : zero+64 : offset(3648), littleendian;
814       task_struct_tasks'prev : zero+64 : offset(3712), littleendian;
815       task_struct_mm : zero+64 : offset(3776), littleendian;
816       task_struct_active_mm : zero+64 : offset(3840), littleendian;
817       task_struct_pid : zero+32 : offset(4160), littleendian;
818       task_struct_comm : 128 : offset(7816), 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 456L;
824         task_struct_tasks'prev = Int64.sub task_struct_tasks'prev 464L;
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+32 : offset(0), littleendian;
834       task_struct_prio : zero+32 : offset(160), littleendian;
835       task_struct_static_prio : zero+32 : offset(192), littleendian;
836       task_struct_normal_prio : zero+32 : offset(224), littleendian;
837       task_struct_tasks'next : zero+32 : offset(3232), littleendian;
838       task_struct_tasks'prev : zero+32 : offset(3264), littleendian;
839       task_struct_mm : zero+32 : offset(3296), littleendian;
840       task_struct_active_mm : zero+32 : offset(3328), littleendian;
841       task_struct_pid : zero+32 : offset(3584), littleendian;
842       task_struct_comm : 128 : offset(5928), 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 404L;
848         task_struct_tasks'prev = Int64.sub task_struct_tasks'prev 408L;
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+64 : offset(0), littleendian;
858       task_struct_prio : zero+32 : offset(224), littleendian;
859       task_struct_static_prio : zero+32 : offset(256), littleendian;
860       task_struct_normal_prio : zero+32 : offset(288), littleendian;
861       task_struct_tasks'next : zero+64 : offset(3840), littleendian;
862       task_struct_tasks'prev : zero+64 : offset(3904), littleendian;
863       task_struct_mm : zero+64 : offset(3968), littleendian;
864       task_struct_active_mm : zero+64 : offset(4032), littleendian;
865       task_struct_pid : zero+32 : offset(4352), littleendian;
866       task_struct_comm : 128 : offset(8392), 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 480L;
872         task_struct_tasks'prev = Int64.sub task_struct_tasks'prev 488L;
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+32 : offset(0), littleendian;
882       task_struct_prio : zero+32 : offset(192), littleendian;
883       task_struct_static_prio : zero+32 : offset(224), littleendian;
884       task_struct_normal_prio : zero+32 : offset(256), littleendian;
885       task_struct_tasks'next : zero+32 : offset(3328), littleendian;
886       task_struct_tasks'prev : zero+32 : offset(3360), littleendian;
887       task_struct_mm : zero+32 : offset(3392), littleendian;
888       task_struct_active_mm : zero+32 : offset(3424), littleendian;
889       task_struct_pid : zero+32 : offset(3680), littleendian;
890       task_struct_comm : 128 : offset(6056), 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 416L;
896         task_struct_tasks'prev = Int64.sub task_struct_tasks'prev 420L;
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+32 : offset(0), bigendian;
906       task_struct_prio : zero+32 : offset(192), bigendian;
907       task_struct_static_prio : zero+32 : offset(224), bigendian;
908       task_struct_normal_prio : zero+32 : offset(256), bigendian;
909       task_struct_tasks'next : zero+32 : offset(3392), bigendian;
910       task_struct_tasks'prev : zero+32 : offset(3424), bigendian;
911       task_struct_mm : zero+32 : offset(3456), bigendian;
912       task_struct_active_mm : zero+32 : offset(3488), bigendian;
913       task_struct_pid : zero+32 : offset(3744), bigendian;
914       task_struct_comm : 128 : offset(6120), 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 424L;
920         task_struct_tasks'prev = Int64.sub task_struct_tasks'prev 428L;
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 let parser_39 bits = 
928   bitmatch bits with
929   | { task_struct_state : zero+64 : offset(0), bigendian;
930       task_struct_prio : zero+32 : offset(256), bigendian;
931       task_struct_static_prio : zero+32 : offset(288), bigendian;
932       task_struct_normal_prio : zero+32 : offset(320), bigendian;
933       task_struct_tasks'next : zero+64 : offset(4096), bigendian;
934       task_struct_tasks'prev : zero+64 : offset(4160), bigendian;
935       task_struct_mm : zero+64 : offset(4224), bigendian;
936       task_struct_active_mm : zero+64 : offset(4288), bigendian;
937       task_struct_pid : zero+32 : offset(4608), bigendian;
938       task_struct_comm : 128 : offset(8712), string } ->
939       { task_struct_state = task_struct_state;
940         task_struct_prio = task_struct_prio;
941         task_struct_static_prio = task_struct_static_prio;
942         task_struct_normal_prio = task_struct_normal_prio;
943         task_struct_tasks'next = Int64.sub task_struct_tasks'next 512L;
944         task_struct_tasks'prev = Int64.sub task_struct_tasks'prev 520L;
945         task_struct_mm = task_struct_mm;
946         task_struct_active_mm = task_struct_active_mm;
947         task_struct_pid = task_struct_pid;
948         task_struct_comm = task_struct_comm }
949   | { _ } ->
950       raise (ParseError (struct_name, "parser_39", match_err));;
951 let parser_40 bits = 
952   bitmatch bits with
953   | { task_struct_state : zero+32 : offset(0), littleendian;
954       task_struct_prio : zero+32 : offset(192), littleendian;
955       task_struct_static_prio : zero+32 : offset(224), littleendian;
956       task_struct_normal_prio : zero+32 : offset(256), littleendian;
957       task_struct_tasks'next : zero+32 : offset(3552), littleendian;
958       task_struct_tasks'prev : zero+32 : offset(3584), littleendian;
959       task_struct_mm : zero+32 : offset(3616), littleendian;
960       task_struct_active_mm : zero+32 : offset(3648), littleendian;
961       task_struct_pid : zero+32 : offset(3904), littleendian;
962       task_struct_comm : 128 : offset(6272), string } ->
963       { task_struct_state = task_struct_state;
964         task_struct_prio = task_struct_prio;
965         task_struct_static_prio = task_struct_static_prio;
966         task_struct_normal_prio = task_struct_normal_prio;
967         task_struct_tasks'next = Int64.sub task_struct_tasks'next 444L;
968         task_struct_tasks'prev = Int64.sub task_struct_tasks'prev 448L;
969         task_struct_mm = task_struct_mm;
970         task_struct_active_mm = task_struct_active_mm;
971         task_struct_pid = task_struct_pid;
972         task_struct_comm = task_struct_comm }
973   | { _ } ->
974       raise (ParseError (struct_name, "parser_40", match_err));;
975 let parser_41 bits = 
976   bitmatch bits with
977   | { task_struct_state : zero+32 : offset(0), bigendian;
978       task_struct_prio : zero+32 : offset(192), bigendian;
979       task_struct_static_prio : zero+32 : offset(224), bigendian;
980       task_struct_normal_prio : zero+32 : offset(256), bigendian;
981       task_struct_tasks'next : zero+32 : offset(3712), bigendian;
982       task_struct_tasks'prev : zero+32 : offset(3744), bigendian;
983       task_struct_mm : zero+32 : offset(3776), bigendian;
984       task_struct_active_mm : zero+32 : offset(3808), bigendian;
985       task_struct_pid : zero+32 : offset(4064), bigendian;
986       task_struct_comm : 128 : offset(6464), string } ->
987       { task_struct_state = task_struct_state;
988         task_struct_prio = task_struct_prio;
989         task_struct_static_prio = task_struct_static_prio;
990         task_struct_normal_prio = task_struct_normal_prio;
991         task_struct_tasks'next = Int64.sub task_struct_tasks'next 464L;
992         task_struct_tasks'prev = Int64.sub task_struct_tasks'prev 468L;
993         task_struct_mm = task_struct_mm;
994         task_struct_active_mm = task_struct_active_mm;
995         task_struct_pid = task_struct_pid;
996         task_struct_comm = task_struct_comm }
997   | { _ } ->
998       raise (ParseError (struct_name, "parser_41", match_err));;
999 let parser_42 bits = 
1000   bitmatch bits with
1001   | { task_struct_state : zero+64 : offset(0), bigendian;
1002       task_struct_prio : zero+32 : offset(256), bigendian;
1003       task_struct_static_prio : zero+32 : offset(288), bigendian;
1004       task_struct_normal_prio : zero+32 : offset(320), bigendian;
1005       task_struct_tasks'next : zero+64 : offset(4480), bigendian;
1006       task_struct_tasks'prev : zero+64 : offset(4544), bigendian;
1007       task_struct_mm : zero+64 : offset(4608), bigendian;
1008       task_struct_active_mm : zero+64 : offset(4672), bigendian;
1009       task_struct_pid : zero+32 : offset(4992), bigendian;
1010       task_struct_comm : 128 : offset(9024), string } ->
1011       { task_struct_state = task_struct_state;
1012         task_struct_prio = task_struct_prio;
1013         task_struct_static_prio = task_struct_static_prio;
1014         task_struct_normal_prio = task_struct_normal_prio;
1015         task_struct_tasks'next = Int64.sub task_struct_tasks'next 560L;
1016         task_struct_tasks'prev = Int64.sub task_struct_tasks'prev 568L;
1017         task_struct_mm = task_struct_mm;
1018         task_struct_active_mm = task_struct_active_mm;
1019         task_struct_pid = task_struct_pid;
1020         task_struct_comm = task_struct_comm }
1021   | { _ } ->
1022       raise (ParseError (struct_name, "parser_42", match_err));;
1023 let parser_43 bits = 
1024   bitmatch bits with
1025   | { task_struct_state : zero+64 : offset(0), littleendian;
1026       task_struct_prio : zero+32 : offset(256), littleendian;
1027       task_struct_static_prio : zero+32 : offset(288), littleendian;
1028       task_struct_normal_prio : zero+32 : offset(320), littleendian;
1029       task_struct_tasks'next : zero+64 : offset(4480), littleendian;
1030       task_struct_tasks'prev : zero+64 : offset(4544), littleendian;
1031       task_struct_mm : zero+64 : offset(4608), littleendian;
1032       task_struct_active_mm : zero+64 : offset(4672), littleendian;
1033       task_struct_pid : zero+32 : offset(4992), littleendian;
1034       task_struct_comm : 128 : offset(9024), string } ->
1035       { task_struct_state = task_struct_state;
1036         task_struct_prio = task_struct_prio;
1037         task_struct_static_prio = task_struct_static_prio;
1038         task_struct_normal_prio = task_struct_normal_prio;
1039         task_struct_tasks'next = Int64.sub task_struct_tasks'next 560L;
1040         task_struct_tasks'prev = Int64.sub task_struct_tasks'prev 568L;
1041         task_struct_mm = task_struct_mm;
1042         task_struct_active_mm = task_struct_active_mm;
1043         task_struct_pid = task_struct_pid;
1044         task_struct_comm = task_struct_comm }
1045   | { _ } ->
1046       raise (ParseError (struct_name, "parser_43", match_err));;
1047 let parser_44 bits = 
1048   bitmatch bits with
1049   | { task_struct_state : zero+64 : offset(0), littleendian;
1050       task_struct_prio : zero+32 : offset(320), littleendian;
1051       task_struct_static_prio : zero+32 : offset(352), littleendian;
1052       task_struct_normal_prio : zero+32 : offset(384), littleendian;
1053       task_struct_tasks'next : zero+64 : offset(1536), littleendian;
1054       task_struct_tasks'prev : zero+64 : offset(1600), littleendian;
1055       task_struct_mm : zero+64 : offset(1664), littleendian;
1056       task_struct_active_mm : zero+64 : offset(1728), littleendian;
1057       task_struct_pid : zero+32 : offset(2144), littleendian;
1058       task_struct_comm : 128 : offset(5376), string } ->
1059       { task_struct_state = task_struct_state;
1060         task_struct_prio = task_struct_prio;
1061         task_struct_static_prio = task_struct_static_prio;
1062         task_struct_normal_prio = task_struct_normal_prio;
1063         task_struct_tasks'next = Int64.sub task_struct_tasks'next 192L;
1064         task_struct_tasks'prev = Int64.sub task_struct_tasks'prev 200L;
1065         task_struct_mm = task_struct_mm;
1066         task_struct_active_mm = task_struct_active_mm;
1067         task_struct_pid = task_struct_pid;
1068         task_struct_comm = task_struct_comm }
1069   | { _ } ->
1070       raise (ParseError (struct_name, "parser_44", match_err));;
1071 module StringMap = Map.Make(String);;
1072 let map = StringMap.empty;;
1073 let v = (parser_1, 2704);;
1074 let map = StringMap.add "2.6.20-1.2933.fc6.i686" v map;;
1075 let v = (parser_1, 2704);;
1076 let map = StringMap.add "2.6.21-1.3145.fc7.i686" v map;;
1077 let v = (parser_1, 2704);;
1078 let map = StringMap.add "2.6.21-1.3190.fc7.i686" v map;;
1079 let v = (parser_1, 2704);;
1080 let map = StringMap.add "2.6.21-1.3228.fc7.i686" v map;;
1081 let v = (parser_2, 3364);;
1082 let map = StringMap.add "2.6.23.14-135.fc8.i686" v map;;
1083 let v = (parser_2, 3364);;
1084 let map = StringMap.add "2.6.23.14-78.fc7.i686" v map;;
1085 let v = (parser_3, 4180);;
1086 let map = StringMap.add "2.6.26.2-2.fc8.i686" v map;;
1087 let v = (parser_1, 1400);;
1088 let map = StringMap.add "2.6.20-1.2933.fc6.i686" v map;;
1089 let v = (parser_1, 2704);;
1090 let map = StringMap.add "2.6.21-1.3128.fc7.i686" v map;;
1091 let v = (parser_1, 2704);;
1092 let map = StringMap.add "2.6.21-1.3132.fc7.i686" v map;;
1093 let v = (parser_1, 2704);;
1094 let map = StringMap.add "2.6.21-1.3141.fc7.i686" v map;;
1095 let v = (parser_1, 2704);;
1096 let map = StringMap.add "2.6.21-1.3144.fc7.i686" v map;;
1097 let v = (parser_1, 1400);;
1098 let map = StringMap.add "2.6.21-1.3145.fc7.i686" v map;;
1099 let v = (parser_1, 1400);;
1100 let map = StringMap.add "2.6.21-1.3190.fc7.i686" v map;;
1101 let v = (parser_1, 2712);;
1102 let map = StringMap.add "2.6.21-1.3209.fc8.i686" v map;;
1103 let v = (parser_1, 2712);;
1104 let map = StringMap.add "2.6.21-1.3218.fc8.i686" v map;;
1105 let v = (parser_1, 2712);;
1106 let map = StringMap.add "2.6.21-1.3221.fc8.i686" v map;;
1107 let v = (parser_1, 1376);;
1108 let map = StringMap.add "2.6.21-1.3228.fc7.i686" v map;;
1109 let v = (parser_4, 2880);;
1110 let map = StringMap.add "2.6.21-1.3234.fc8.i686" v map;;
1111 let v = (parser_5, 2880);;
1112 let map = StringMap.add "2.6.21-1.3236.fc8.i686" v map;;
1113 let v = (parser_6, 2872);;
1114 let map = StringMap.add "2.6.21-1.3238.fc8.i686" v map;;
1115 let v = (parser_6, 2872);;
1116 let map = StringMap.add "2.6.21-1.3242.fc8.i686" v map;;
1117 let v = (parser_7, 2856);;
1118 let map = StringMap.add "2.6.22-0.23.rc7.git6.fc8.i686" v map;;
1119 let v = (parser_6, 2872);;
1120 let map = StringMap.add "2.6.22-0.rc7.2.fc8.i686" v map;;
1121 let v = (parser_2, 1548);;
1122 let map = StringMap.add "2.6.23.14-135.fc8.i686" v map;;
1123 let v = (parser_2, 1548);;
1124 let map = StringMap.add "2.6.23.14-78.fc7.i686" v map;;
1125 let v = (parser_8, 3540);;
1126 let map = StringMap.add "2.6.24-0.167.rc8.git4.fc9.i686" v map;;
1127 let v = (parser_8, 3540);;
1128 let map = StringMap.add "2.6.24-7.fc9.i686" v map;;
1129 let v = (parser_8, 3540);;
1130 let map = StringMap.add "2.6.24-9.fc9.i686" v map;;
1131 let v = (parser_3, 1328);;
1132 let map = StringMap.add "2.6.26.2-2.fc8.i686" v map;;
1133 let v = (parser_9, 4204);;
1134 let map = StringMap.add "2.6.27-0.244.rc2.git1.fc10.i686" v map;;
1135 let v = (parser_1, 2704);;
1136 let map = StringMap.add "2.6.20-1.2933.fc6.i686" v map;;
1137 let v = (parser_10, 3772);;
1138 let map = StringMap.add "2.6.20-1.2933.fc6.x86_64" v map;;
1139 let v = (parser_1, 2704);;
1140 let map = StringMap.add "2.6.21-1.3145.fc7.i686" v map;;
1141 let v = (parser_10, 3772);;
1142 let map = StringMap.add "2.6.21-1.3145.fc7.x86_64" v map;;
1143 let v = (parser_1, 2704);;
1144 let map = StringMap.add "2.6.21-1.3190.fc7.i686" v map;;
1145 let v = (parser_10, 3772);;
1146 let map = StringMap.add "2.6.21-1.3190.fc7.x86_64" v map;;
1147 let v = (parser_1, 2704);;
1148 let map = StringMap.add "2.6.21-1.3228.fc7.i686" v map;;
1149 let v = (parser_10, 3772);;
1150 let map = StringMap.add "2.6.21-1.3228.fc7.x86_64" v map;;
1151 let v = (parser_2, 3364);;
1152 let map = StringMap.add "2.6.23.14-135.fc8.i686" v map;;
1153 let v = (parser_11, 4468);;
1154 let map = StringMap.add "2.6.23.14-135.fc8.x86_64" v map;;
1155 let v = (parser_11, 4468);;
1156 let map = StringMap.add "2.6.23.14-78.fc7.x86_64" v map;;
1157 let v = (parser_3, 4180);;
1158 let map = StringMap.add "2.6.26.2-2.fc8.i686" v map;;
1159 let v = (parser_12, 5808);;
1160 let map = StringMap.add "2.6.26.2-2.fc8.x86_64" v map;;
1161 let v = (parser_1, 1384);;
1162 let map = StringMap.add "2.6.18-1.2798.fc6.i586" v map;;
1163 let v = (parser_1, 1384);;
1164 let map = StringMap.add "2.6.18-1.2798.fc6.i686" v map;;
1165 let v = (parser_13, 1576);;
1166 let map = StringMap.add "2.6.18-1.2798.fc6.ppc" v map;;
1167 let v = (parser_14, 2104);;
1168 let map = StringMap.add "2.6.18-1.2798.fc6.ppc64" v map;;
1169 let v = (parser_14, 2088);;
1170 let map = StringMap.add "2.6.18-1.2798.fc6.ppc64iseries" v map;;
1171 let v = (parser_15, 1928);;
1172 let map = StringMap.add "2.6.18-1.2798.fc6.x86_64" v map;;
1173 let v = (parser_1, 1400);;
1174 let map = StringMap.add "2.6.20-1.2933.fc6.i586" v map;;
1175 let v = (parser_1, 1400);;
1176 let map = StringMap.add "2.6.20-1.2933.fc6.i686" v map;;
1177 let v = (parser_13, 1592);;
1178 let map = StringMap.add "2.6.20-1.2933.fc6.ppc" v map;;
1179 let v = (parser_14, 2112);;
1180 let map = StringMap.add "2.6.20-1.2933.fc6.ppc64" v map;;
1181 let v = (parser_10, 1920);;
1182 let map = StringMap.add "2.6.20-1.2933.fc6.x86_64" v map;;
1183 let v = (parser_1, 2704);;
1184 let map = StringMap.add "2.6.21-1.3128.fc7.i586" v map;;
1185 let v = (parser_1, 2704);;
1186 let map = StringMap.add "2.6.21-1.3128.fc7.i686" v map;;
1187 let v = (parser_13, 1604);;
1188 let map = StringMap.add "2.6.21-1.3128.fc7.ppc" v map;;
1189 let v = (parser_14, 2132);;
1190 let map = StringMap.add "2.6.21-1.3128.fc7.ppc64" v map;;
1191 let v = (parser_10, 3772);;
1192 let map = StringMap.add "2.6.21-1.3128.fc7.x86_64" v map;;
1193 let v = (parser_1, 2704);;
1194 let map = StringMap.add "2.6.21-1.3132.fc7.i586" v map;;
1195 let v = (parser_1, 2704);;
1196 let map = StringMap.add "2.6.21-1.3132.fc7.i686" v map;;
1197 let v = (parser_13, 1604);;
1198 let map = StringMap.add "2.6.21-1.3132.fc7.ppc" v map;;
1199 let v = (parser_14, 2132);;
1200 let map = StringMap.add "2.6.21-1.3132.fc7.ppc64" v map;;
1201 let v = (parser_10, 3772);;
1202 let map = StringMap.add "2.6.21-1.3132.fc7.x86_64" v map;;
1203 let v = (parser_1, 2704);;
1204 let map = StringMap.add "2.6.21-1.3141.fc7.i586" v map;;
1205 let v = (parser_1, 2704);;
1206 let map = StringMap.add "2.6.21-1.3141.fc7.i686" v map;;
1207 let v = (parser_13, 1604);;
1208 let map = StringMap.add "2.6.21-1.3141.fc7.ppc" v map;;
1209 let v = (parser_14, 2132);;
1210 let map = StringMap.add "2.6.21-1.3141.fc7.ppc64" v map;;
1211 let v = (parser_10, 3772);;
1212 let map = StringMap.add "2.6.21-1.3141.fc7.x86_64" v map;;
1213 let v = (parser_1, 2704);;
1214 let map = StringMap.add "2.6.21-1.3144.fc7.i586" v map;;
1215 let v = (parser_1, 2704);;
1216 let map = StringMap.add "2.6.21-1.3144.fc7.i686" v map;;
1217 let v = (parser_13, 1604);;
1218 let map = StringMap.add "2.6.21-1.3144.fc7.ppc" v map;;
1219 let v = (parser_14, 2132);;
1220 let map = StringMap.add "2.6.21-1.3144.fc7.ppc64" v map;;
1221 let v = (parser_10, 3772);;
1222 let map = StringMap.add "2.6.21-1.3144.fc7.x86_64" v map;;
1223 let v = (parser_1, 1400);;
1224 let map = StringMap.add "2.6.21-1.3145.fc7.i586" v map;;
1225 let v = (parser_1, 1400);;
1226 let map = StringMap.add "2.6.21-1.3145.fc7.i686" v map;;
1227 let v = (parser_13, 1592);;
1228 let map = StringMap.add "2.6.21-1.3145.fc7.ppc" v map;;
1229 let v = (parser_14, 2112);;
1230 let map = StringMap.add "2.6.21-1.3145.fc7.ppc64" v map;;
1231 let v = (parser_10, 1920);;
1232 let map = StringMap.add "2.6.21-1.3145.fc7.x86_64" v map;;
1233 let v = (parser_1, 1400);;
1234 let map = StringMap.add "2.6.21-1.3190.fc7.i586" v map;;
1235 let v = (parser_1, 1400);;
1236 let map = StringMap.add "2.6.21-1.3190.fc7.i686" v map;;
1237 let v = (parser_13, 1592);;
1238 let map = StringMap.add "2.6.21-1.3190.fc7.ppc" v map;;
1239 let v = (parser_14, 2112);;
1240 let map = StringMap.add "2.6.21-1.3190.fc7.ppc64" v map;;
1241 let v = (parser_10, 1920);;
1242 let map = StringMap.add "2.6.21-1.3190.fc7.x86_64" v map;;
1243 let v = (parser_1, 2712);;
1244 let map = StringMap.add "2.6.21-1.3209.fc8.i586" v map;;
1245 let v = (parser_1, 2712);;
1246 let map = StringMap.add "2.6.21-1.3209.fc8.i686" v map;;
1247 let v = (parser_13, 1612);;
1248 let map = StringMap.add "2.6.21-1.3209.fc8.ppc" v map;;
1249 let v = (parser_16, 2116);;
1250 let map = StringMap.add "2.6.21-1.3209.fc8.ppc64" v map;;
1251 let v = (parser_17, 3756);;
1252 let map = StringMap.add "2.6.21-1.3209.fc8.x86_64" v map;;
1253 let v = (parser_1, 2712);;
1254 let map = StringMap.add "2.6.21-1.3218.fc8.i586" v map;;
1255 let v = (parser_1, 2712);;
1256 let map = StringMap.add "2.6.21-1.3218.fc8.i686" v map;;
1257 let v = (parser_13, 1612);;
1258 let map = StringMap.add "2.6.21-1.3218.fc8.ppc" v map;;
1259 let v = (parser_16, 2116);;
1260 let map = StringMap.add "2.6.21-1.3218.fc8.ppc64" v map;;
1261 let v = (parser_17, 3756);;
1262 let map = StringMap.add "2.6.21-1.3218.fc8.x86_64" v map;;
1263 let v = (parser_1, 2712);;
1264 let map = StringMap.add "2.6.21-1.3221.fc8.i586" v map;;
1265 let v = (parser_1, 2712);;
1266 let map = StringMap.add "2.6.21-1.3221.fc8.i686" v map;;
1267 let v = (parser_13, 1612);;
1268 let map = StringMap.add "2.6.21-1.3221.fc8.ppc" v map;;
1269 let v = (parser_16, 2116);;
1270 let map = StringMap.add "2.6.21-1.3221.fc8.ppc64" v map;;
1271 let v = (parser_17, 3756);;
1272 let map = StringMap.add "2.6.21-1.3221.fc8.x86_64" v map;;
1273 let v = (parser_1, 1376);;
1274 let map = StringMap.add "2.6.21-1.3228.fc7.i586" v map;;
1275 let v = (parser_1, 1376);;
1276 let map = StringMap.add "2.6.21-1.3228.fc7.i686" v map;;
1277 let v = (parser_13, 1560);;
1278 let map = StringMap.add "2.6.21-1.3228.fc7.ppc" v map;;
1279 let v = (parser_14, 2072);;
1280 let map = StringMap.add "2.6.21-1.3228.fc7.ppc64" v map;;
1281 let v = (parser_10, 1880);;
1282 let map = StringMap.add "2.6.21-1.3228.fc7.x86_64" v map;;
1283 let v = (parser_4, 2880);;
1284 let map = StringMap.add "2.6.21-1.3234.fc8.i686" v map;;
1285 let v = (parser_18, 1780);;
1286 let map = StringMap.add "2.6.21-1.3234.fc8.ppc" v map;;
1287 let v = (parser_19, 2292);;
1288 let map = StringMap.add "2.6.21-1.3234.fc8.ppc64" v map;;
1289 let v = (parser_20, 3932);;
1290 let map = StringMap.add "2.6.21-1.3234.fc8.x86_64" v map;;
1291 let v = (parser_5, 2880);;
1292 let map = StringMap.add "2.6.21-1.3236.fc8.i686" v map;;
1293 let v = (parser_21, 1780);;
1294 let map = StringMap.add "2.6.21-1.3236.fc8.ppc" v map;;
1295 let v = (parser_22, 2308);;
1296 let map = StringMap.add "2.6.21-1.3236.fc8.ppc64" v map;;
1297 let v = (parser_23, 3948);;
1298 let map = StringMap.add "2.6.21-1.3236.fc8.x86_64" v map;;
1299 let v = (parser_6, 2872);;
1300 let map = StringMap.add "2.6.21-1.3238.fc8.i686" v map;;
1301 let v = (parser_24, 1756);;
1302 let map = StringMap.add "2.6.21-1.3238.fc8.ppc" v map;;
1303 let v = (parser_25, 2276);;
1304 let map = StringMap.add "2.6.21-1.3238.fc8.ppc64" v map;;
1305 let v = (parser_26, 3916);;
1306 let map = StringMap.add "2.6.21-1.3238.fc8.x86_64" v map;;
1307 let v = (parser_6, 2872);;
1308 let map = StringMap.add "2.6.21-1.3242.fc8.i686" v map;;
1309 let v = (parser_24, 1756);;
1310 let map = StringMap.add "2.6.21-1.3242.fc8.ppc" v map;;
1311 let v = (parser_25, 2276);;
1312 let map = StringMap.add "2.6.21-1.3242.fc8.ppc64" v map;;
1313 let v = (parser_26, 3916);;
1314 let map = StringMap.add "2.6.21-1.3242.fc8.x86_64" v map;;
1315 let v = (parser_7, 2856);;
1316 let map = StringMap.add "2.6.22-0.23.rc7.git6.fc8.i686" v map;;
1317 let v = (parser_27, 1756);;
1318 let map = StringMap.add "2.6.22-0.23.rc7.git6.fc8.ppc" v map;;
1319 let v = (parser_28, 2292);;
1320 let map = StringMap.add "2.6.22-0.23.rc7.git6.fc8.ppc64" v map;;
1321 let v = (parser_29, 3932);;
1322 let map = StringMap.add "2.6.22-0.23.rc7.git6.fc8.x86_64" v map;;
1323 let v = (parser_6, 2872);;
1324 let map = StringMap.add "2.6.22-0.rc7.2.fc8.i686" v map;;
1325 let v = (parser_24, 1756);;
1326 let map = StringMap.add "2.6.22-0.rc7.2.fc8.ppc" v map;;
1327 let v = (parser_25, 2276);;
1328 let map = StringMap.add "2.6.22-0.rc7.2.fc8.ppc64" v map;;
1329 let v = (parser_26, 3916);;
1330 let map = StringMap.add "2.6.22-0.rc7.2.fc8.x86_64" v map;;
1331 let v = (parser_2, 1548);;
1332 let map = StringMap.add "2.6.23.14-135.fc8.i586" v map;;
1333 let v = (parser_2, 1548);;
1334 let map = StringMap.add "2.6.23.14-135.fc8.i686" v map;;
1335 let v = (parser_30, 1736);;
1336 let map = StringMap.add "2.6.23.14-135.fc8.ppc" v map;;
1337 let v = (parser_31, 2272);;
1338 let map = StringMap.add "2.6.23.14-135.fc8.ppc64" v map;;
1339 let v = (parser_11, 2080);;
1340 let map = StringMap.add "2.6.23.14-135.fc8.x86_64" v map;;
1341 let v = (parser_2, 1548);;
1342 let map = StringMap.add "2.6.23.14-78.fc7.i586" v map;;
1343 let v = (parser_2, 1548);;
1344 let map = StringMap.add "2.6.23.14-78.fc7.i686" v map;;
1345 let v = (parser_30, 1736);;
1346 let map = StringMap.add "2.6.23.14-78.fc7.ppc" v map;;
1347 let v = (parser_31, 2272);;
1348 let map = StringMap.add "2.6.23.14-78.fc7.ppc64" v map;;
1349 let v = (parser_11, 2080);;
1350 let map = StringMap.add "2.6.23.14-78.fc7.x86_64" v map;;
1351 let v = (parser_8, 3540);;
1352 let map = StringMap.add "2.6.24-0.167.rc8.git4.fc9.i586" v map;;
1353 let v = (parser_8, 3540);;
1354 let map = StringMap.add "2.6.24-0.167.rc8.git4.fc9.i686" v map;;
1355 let v = (parser_32, 1936);;
1356 let map = StringMap.add "2.6.24-0.167.rc8.git4.fc9.ppc" v map;;
1357 let v = (parser_33, 2492);;
1358 let map = StringMap.add "2.6.24-0.167.rc8.git4.fc9.ppc64" v map;;
1359 let v = (parser_34, 4684);;
1360 let map = StringMap.add "2.6.24-0.167.rc8.git4.fc9.x86_64" v map;;
1361 let v = (parser_8, 3540);;
1362 let map = StringMap.add "2.6.24-7.fc9.i586" v map;;
1363 let v = (parser_8, 3540);;
1364 let map = StringMap.add "2.6.24-7.fc9.i686" v map;;
1365 let v = (parser_32, 1936);;
1366 let map = StringMap.add "2.6.24-7.fc9.ppc" v map;;
1367 let v = (parser_33, 2492);;
1368 let map = StringMap.add "2.6.24-7.fc9.ppc64" v map;;
1369 let v = (parser_34, 4684);;
1370 let map = StringMap.add "2.6.24-7.fc9.x86_64" v map;;
1371 let v = (parser_8, 3540);;
1372 let map = StringMap.add "2.6.24-9.fc9.i586" v map;;
1373 let v = (parser_8, 3540);;
1374 let map = StringMap.add "2.6.24-9.fc9.i686" v map;;
1375 let v = (parser_32, 1936);;
1376 let map = StringMap.add "2.6.24-9.fc9.ppc" v map;;
1377 let v = (parser_33, 2492);;
1378 let map = StringMap.add "2.6.24-9.fc9.ppc64" v map;;
1379 let v = (parser_34, 4684);;
1380 let map = StringMap.add "2.6.24-9.fc9.x86_64" v map;;
1381 let v = (parser_35, 1832);;
1382 let map = StringMap.add "2.6.25.11-97.fc9.i686" v map;;
1383 let v = (parser_36, 2496);;
1384 let map = StringMap.add "2.6.25.11-97.fc9.x86_64" v map;;
1385 let v = (parser_37, 1324);;
1386 let map = StringMap.add "2.6.26.2-2.fc8.i586" v map;;
1387 let v = (parser_3, 1328);;
1388 let map = StringMap.add "2.6.26.2-2.fc8.i686" v map;;
1389 let v = (parser_38, 1968);;
1390 let map = StringMap.add "2.6.26.2-2.fc8.ppc" v map;;
1391 let v = (parser_39, 2572);;
1392 let map = StringMap.add "2.6.26.2-2.fc8.ppc64" v map;;
1393 let v = (parser_12, 2072);;
1394 let map = StringMap.add "2.6.26.2-2.fc8.x86_64" v map;;
1395 let v = (parser_40, 4200);;
1396 let map = StringMap.add "2.6.27-0.244.rc2.git1.fc10.i586" v map;;
1397 let v = (parser_9, 4204);;
1398 let map = StringMap.add "2.6.27-0.244.rc2.git1.fc10.i686" v map;;
1399 let v = (parser_41, 2124);;
1400 let map = StringMap.add "2.6.27-0.244.rc2.git1.fc10.ppc" v map;;
1401 let v = (parser_42, 6712);;
1402 let map = StringMap.add "2.6.27-0.244.rc2.git1.fc10.ppc64" v map;;
1403 let v = (parser_43, 5824);;
1404 let map = StringMap.add "2.6.27-0.244.rc2.git1.fc10.x86_64" v map;;
1405 let v = (parser_1, 1368);;
1406 let map = StringMap.add "2.6.18-1.2798.fc6.i686" v map;;
1407 let v = (parser_14, 2104);;
1408 let map = StringMap.add "2.6.18-1.2798.fc6.ppc64" v map;;
1409 let v = (parser_14, 2088);;
1410 let map = StringMap.add "2.6.18-1.2798.fc6.ppc64iseries" v map;;
1411 let v = (parser_44, 1856);;
1412 let map = StringMap.add "2.6.18-1.2798.fc6.x86_64" v map;;
1413 let v = (parser_1, 1384);;
1414 let map = StringMap.add "2.6.20-1.2933.fc6.i686" v map;;
1415 let v = (parser_14, 2112);;
1416 let map = StringMap.add "2.6.20-1.2933.fc6.ppc64" v map;;
1417 let v = (parser_10, 1880);;
1418 let map = StringMap.add "2.6.20-1.2933.fc6.x86_64" v map;;
1419 let v = (parser_14, 2132);;
1420 let map = StringMap.add "2.6.21-1.3128.fc7.ppc64" v map;;
1421 let v = (parser_10, 3780);;
1422 let map = StringMap.add "2.6.21-1.3128.fc7.x86_64" v map;;
1423 let v = (parser_14, 2132);;
1424 let map = StringMap.add "2.6.21-1.3132.fc7.ppc64" v map;;
1425 let v = (parser_10, 3780);;
1426 let map = StringMap.add "2.6.21-1.3132.fc7.x86_64" v map;;
1427 let v = (parser_14, 2132);;
1428 let map = StringMap.add "2.6.21-1.3141.fc7.ppc64" v map;;
1429 let v = (parser_10, 3780);;
1430 let map = StringMap.add "2.6.21-1.3141.fc7.x86_64" v map;;
1431 let v = (parser_14, 2132);;
1432 let map = StringMap.add "2.6.21-1.3144.fc7.ppc64" v map;;
1433 let v = (parser_10, 3780);;
1434 let map = StringMap.add "2.6.21-1.3144.fc7.x86_64" v map;;
1435 let v = (parser_14, 2112);;
1436 let map = StringMap.add "2.6.21-1.3145.fc7.ppc64" v map;;
1437 let v = (parser_10, 1880);;
1438 let map = StringMap.add "2.6.21-1.3145.fc7.x86_64" v map;;
1439 let v = (parser_14, 2112);;
1440 let map = StringMap.add "2.6.21-1.3190.fc7.ppc64" v map;;
1441 let v = (parser_10, 1880);;
1442 let map = StringMap.add "2.6.21-1.3190.fc7.x86_64" v map;;
1443 let v = (parser_16, 2116);;
1444 let map = StringMap.add "2.6.21-1.3209.fc8.ppc64" v map;;
1445 let v = (parser_16, 2116);;
1446 let map = StringMap.add "2.6.21-1.3218.fc8.ppc64" v map;;
1447 let v = (parser_16, 2116);;
1448 let map = StringMap.add "2.6.21-1.3221.fc8.ppc64" v map;;
1449 let v = (parser_14, 2072);;
1450 let map = StringMap.add "2.6.21-1.3228.fc7.ppc64" v map;;
1451 let v = (parser_10, 1832);;
1452 let map = StringMap.add "2.6.21-1.3228.fc7.x86_64" v map;;
1453 let v = (parser_19, 2292);;
1454 let map = StringMap.add "2.6.21-1.3234.fc8.ppc64" v map;;
1455 let v = (parser_22, 2308);;
1456 let map = StringMap.add "2.6.21-1.3236.fc8.ppc64" v map;;
1457 let v = (parser_25, 2276);;
1458 let map = StringMap.add "2.6.21-1.3238.fc8.ppc64" v map;;
1459 let v = (parser_25, 2276);;
1460 let map = StringMap.add "2.6.21-1.3242.fc8.ppc64" v map;;
1461 let v = (parser_28, 2292);;
1462 let map = StringMap.add "2.6.22-0.23.rc7.git6.fc8.ppc64" v map;;
1463 let v = (parser_25, 2276);;
1464 let map = StringMap.add "2.6.22-0.rc7.2.fc8.ppc64" v map;;
1465 let v = (parser_31, 2272);;
1466 let map = StringMap.add "2.6.23.14-135.fc8.ppc64" v map;;
1467 let v = (parser_31, 2272);;
1468 let map = StringMap.add "2.6.23.14-78.fc7.ppc64" v map;;
1469 let v = (parser_33, 2492);;
1470 let map = StringMap.add "2.6.24-0.167.rc8.git4.fc9.ppc64" v map;;
1471 let v = (parser_33, 2492);;
1472 let map = StringMap.add "2.6.24-7.fc9.ppc64" v map;;
1473 let v = (parser_33, 2492);;
1474 let map = StringMap.add "2.6.24-9.fc9.ppc64" v map;;
1475 let v = (parser_39, 2572);;
1476 let map = StringMap.add "2.6.26.2-2.fc8.ppc64" v map;;
1477 let v = (parser_42, 6712);;
1478 let map = StringMap.add "2.6.27-0.244.rc2.git1.fc10.ppc64" v map;;
1479 let v = (parser_13, 1592);;
1480 let map = StringMap.add "2.6.18-1.2798.fc6.ppc" v map;;
1481 let v = (parser_13, 1608);;
1482 let map = StringMap.add "2.6.20-1.2933.fc6.ppc" v map;;
1483 let v = (parser_13, 1620);;
1484 let map = StringMap.add "2.6.21-1.3128.fc7.ppc" v map;;
1485 let v = (parser_13, 1620);;
1486 let map = StringMap.add "2.6.21-1.3132.fc7.ppc" v map;;
1487 let v = (parser_13, 1620);;
1488 let map = StringMap.add "2.6.21-1.3141.fc7.ppc" v map;;
1489 let v = (parser_13, 1620);;
1490 let map = StringMap.add "2.6.21-1.3144.fc7.ppc" v map;;
1491 let v = (parser_13, 1608);;
1492 let map = StringMap.add "2.6.21-1.3145.fc7.ppc" v map;;
1493 let v = (parser_13, 1608);;
1494 let map = StringMap.add "2.6.21-1.3190.fc7.ppc" v map;;
1495 let v = (parser_13, 1628);;
1496 let map = StringMap.add "2.6.21-1.3209.fc8.ppc" v map;;
1497 let v = (parser_13, 1628);;
1498 let map = StringMap.add "2.6.21-1.3218.fc8.ppc" v map;;
1499 let v = (parser_13, 1628);;
1500 let map = StringMap.add "2.6.21-1.3221.fc8.ppc" v map;;
1501 let v = (parser_13, 1584);;
1502 let map = StringMap.add "2.6.21-1.3228.fc7.ppc" v map;;
1503 let v = (parser_18, 1796);;
1504 let map = StringMap.add "2.6.21-1.3234.fc8.ppc" v map;;
1505 let v = (parser_21, 1796);;
1506 let map = StringMap.add "2.6.21-1.3236.fc8.ppc" v map;;
1507 let v = (parser_24, 1772);;
1508 let map = StringMap.add "2.6.21-1.3238.fc8.ppc" v map;;
1509 let v = (parser_24, 1772);;
1510 let map = StringMap.add "2.6.21-1.3242.fc8.ppc" v map;;
1511 let v = (parser_27, 1772);;
1512 let map = StringMap.add "2.6.22-0.23.rc7.git6.fc8.ppc" v map;;
1513 let v = (parser_24, 1772);;
1514 let map = StringMap.add "2.6.22-0.rc7.2.fc8.ppc" v map;;
1515 let v = (parser_30, 1760);;
1516 let map = StringMap.add "2.6.23.14-135.fc8.ppc" v map;;
1517 let v = (parser_30, 1760);;
1518 let map = StringMap.add "2.6.23.14-78.fc7.ppc" v map;;
1519 let v = (parser_32, 1948);;
1520 let map = StringMap.add "2.6.24-0.167.rc8.git4.fc9.ppc" v map;;
1521 let v = (parser_32, 1948);;
1522 let map = StringMap.add "2.6.24-7.fc9.ppc" v map;;
1523 let v = (parser_32, 1948);;
1524 let map = StringMap.add "2.6.24-9.fc9.ppc" v map;;
1525 let v = (parser_38, 1992);;
1526 let map = StringMap.add "2.6.26.2-2.fc8.ppc" v map;;
1527 let v = (parser_41, 2136);;
1528 let map = StringMap.add "2.6.27-0.244.rc2.git1.fc10.ppc" v map;;
1529 let v = (parser_1, 1384);;
1530 let map = StringMap.add "2.6.18-1.2798.fc6.i686" v map;;
1531 let v = (parser_15, 1928);;
1532 let map = StringMap.add "2.6.18-1.2798.fc6.x86_64" v map;;
1533 let v = (parser_1, 1400);;
1534 let map = StringMap.add "2.6.20-1.2933.fc6.i686" v map;;
1535 let v = (parser_10, 1920);;
1536 let map = StringMap.add "2.6.20-1.2933.fc6.x86_64" v map;;
1537 type kernel_version = string;;
1538 let task_struct_known version = StringMap.mem version map;;
1539 let task_struct_size version =
1540   let (_, size) = StringMap.find version map in size;;
1541 let task_struct_of_bits version bits =
1542   let (parsefn, _) = StringMap.find version map in parsefn bits;;
1543 let get_task_struct version mem addr =
1544   let (parsefn, size) = StringMap.find version map in
1545   let bytes = Virt_mem_mmap.get_bytes mem addr size in
1546   let bits = Bitstring.bitstring_of_string bytes in parsefn bits;;