1
2
3
4#line 43 "include/asm-generic/int-ll64.h"
5typedef unsigned char u8;
6#line 46 "include/asm-generic/int-ll64.h"
7typedef unsigned short u16;
8#line 49 "include/asm-generic/int-ll64.h"
9typedef unsigned int u32;
10#line 52 "include/asm-generic/int-ll64.h"
11typedef unsigned long long u64;
12#line 14 "include/asm-generic/posix_types.h"
13typedef long __kernel_long_t;
14#line 15 "include/asm-generic/posix_types.h"
15typedef unsigned long __kernel_ulong_t;
16#line 75 "include/asm-generic/posix_types.h"
17typedef __kernel_ulong_t __kernel_size_t;
18#line 76 "include/asm-generic/posix_types.h"
19typedef __kernel_long_t __kernel_ssize_t;
20#line 27 "include/linux/types.h"
21typedef unsigned short umode_t;
22#line 63 "include/linux/types.h"
23typedef __kernel_size_t size_t;
24#line 68 "include/linux/types.h"
25typedef __kernel_ssize_t ssize_t;
26#line 202 "include/linux/types.h"
27typedef unsigned int gfp_t;
28#line 221 "include/linux/types.h"
29struct __anonstruct_atomic_t_6 {
30 int counter ;
31};
32#line 221 "include/linux/types.h"
33typedef struct __anonstruct_atomic_t_6 atomic_t;
34#line 226 "include/linux/types.h"
35struct __anonstruct_atomic64_t_7 {
36 long counter ;
37};
38#line 226 "include/linux/types.h"
39typedef struct __anonstruct_atomic64_t_7 atomic64_t;
40#line 227 "include/linux/types.h"
41struct list_head {
42 struct list_head *next ;
43 struct list_head *prev ;
44};
45#line 58 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/page_types.h"
46struct page;
47#line 58
48struct page;
49#line 327 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/paravirt_types.h"
50struct arch_spinlock;
51#line 327
52struct arch_spinlock;
53#line 433 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
54struct kmem_cache;
55#line 23 "include/asm-generic/atomic-long.h"
56typedef atomic64_t atomic_long_t;
57#line 14 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
58typedef u16 __ticket_t;
59#line 15 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
60typedef u32 __ticketpair_t;
61#line 16 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
62struct __raw_tickets {
63 __ticket_t head ;
64 __ticket_t tail ;
65};
66#line 26 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
67union __anonunion_ldv_5907_29 {
68 __ticketpair_t head_tail ;
69 struct __raw_tickets tickets ;
70};
71#line 26 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
72struct arch_spinlock {
73 union __anonunion_ldv_5907_29 ldv_5907 ;
74};
75#line 27 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
76typedef struct arch_spinlock arch_spinlock_t;
77#line 34 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/rwlock.h"
78struct lockdep_map;
79#line 34
80struct lockdep_map;
81#line 55 "include/linux/debug_locks.h"
82struct stack_trace {
83 unsigned int nr_entries ;
84 unsigned int max_entries ;
85 unsigned long *entries ;
86 int skip ;
87};
88#line 26 "include/linux/stacktrace.h"
89struct lockdep_subclass_key {
90 char __one_byte ;
91};
92#line 53 "include/linux/lockdep.h"
93struct lock_class_key {
94 struct lockdep_subclass_key subkeys[8U] ;
95};
96#line 59 "include/linux/lockdep.h"
97struct lock_class {
98 struct list_head hash_entry ;
99 struct list_head lock_entry ;
100 struct lockdep_subclass_key *key ;
101 unsigned int subclass ;
102 unsigned int dep_gen_id ;
103 unsigned long usage_mask ;
104 struct stack_trace usage_traces[13U] ;
105 struct list_head locks_after ;
106 struct list_head locks_before ;
107 unsigned int version ;
108 unsigned long ops ;
109 char const *name ;
110 int name_version ;
111 unsigned long contention_point[4U] ;
112 unsigned long contending_point[4U] ;
113};
114#line 144 "include/linux/lockdep.h"
115struct lockdep_map {
116 struct lock_class_key *key ;
117 struct lock_class *class_cache[2U] ;
118 char const *name ;
119 int cpu ;
120 unsigned long ip ;
121};
122#line 556 "include/linux/lockdep.h"
123struct raw_spinlock {
124 arch_spinlock_t raw_lock ;
125 unsigned int magic ;
126 unsigned int owner_cpu ;
127 void *owner ;
128 struct lockdep_map dep_map ;
129};
130#line 33 "include/linux/spinlock_types.h"
131struct __anonstruct_ldv_6122_33 {
132 u8 __padding[24U] ;
133 struct lockdep_map dep_map ;
134};
135#line 33 "include/linux/spinlock_types.h"
136union __anonunion_ldv_6123_32 {
137 struct raw_spinlock rlock ;
138 struct __anonstruct_ldv_6122_33 ldv_6122 ;
139};
140#line 33 "include/linux/spinlock_types.h"
141struct spinlock {
142 union __anonunion_ldv_6123_32 ldv_6123 ;
143};
144#line 76 "include/linux/spinlock_types.h"
145typedef struct spinlock spinlock_t;
146#line 445 "include/linux/elf.h"
147struct sock;
148#line 445
149struct sock;
150#line 446
151struct kobject;
152#line 446
153struct kobject;
154#line 447
155enum kobj_ns_type {
156 KOBJ_NS_TYPE_NONE = 0,
157 KOBJ_NS_TYPE_NET = 1,
158 KOBJ_NS_TYPES = 2
159} ;
160#line 453 "include/linux/elf.h"
161struct kobj_ns_type_operations {
162 enum kobj_ns_type type ;
163 void *(*grab_current_ns)(void) ;
164 void const *(*netlink_ns)(struct sock * ) ;
165 void const *(*initial_ns)(void) ;
166 void (*drop_ns)(void * ) ;
167};
168#line 57 "include/linux/kobject_ns.h"
169struct attribute {
170 char const *name ;
171 umode_t mode ;
172 struct lock_class_key *key ;
173 struct lock_class_key skey ;
174};
175#line 98 "include/linux/sysfs.h"
176struct sysfs_ops {
177 ssize_t (*show)(struct kobject * , struct attribute * , char * ) ;
178 ssize_t (*store)(struct kobject * , struct attribute * , char const * , size_t ) ;
179 void const *(*namespace)(struct kobject * , struct attribute const * ) ;
180};
181#line 117
182struct sysfs_dirent;
183#line 117
184struct sysfs_dirent;
185#line 182 "include/linux/sysfs.h"
186struct kref {
187 atomic_t refcount ;
188};
189#line 49 "include/linux/kobject.h"
190struct kset;
191#line 49
192struct kobj_type;
193#line 49 "include/linux/kobject.h"
194struct kobject {
195 char const *name ;
196 struct list_head entry ;
197 struct kobject *parent ;
198 struct kset *kset ;
199 struct kobj_type *ktype ;
200 struct sysfs_dirent *sd ;
201 struct kref kref ;
202 unsigned char state_initialized : 1 ;
203 unsigned char state_in_sysfs : 1 ;
204 unsigned char state_add_uevent_sent : 1 ;
205 unsigned char state_remove_uevent_sent : 1 ;
206 unsigned char uevent_suppress : 1 ;
207};
208#line 107 "include/linux/kobject.h"
209struct kobj_type {
210 void (*release)(struct kobject * ) ;
211 struct sysfs_ops const *sysfs_ops ;
212 struct attribute **default_attrs ;
213 struct kobj_ns_type_operations const *(*child_ns_type)(struct kobject * ) ;
214 void const *(*namespace)(struct kobject * ) ;
215};
216#line 115 "include/linux/kobject.h"
217struct kobj_uevent_env {
218 char *envp[32U] ;
219 int envp_idx ;
220 char buf[2048U] ;
221 int buflen ;
222};
223#line 122 "include/linux/kobject.h"
224struct kset_uevent_ops {
225 int (* const filter)(struct kset * , struct kobject * ) ;
226 char const *(* const name)(struct kset * , struct kobject * ) ;
227 int (* const uevent)(struct kset * , struct kobject * , struct kobj_uevent_env * ) ;
228};
229#line 139 "include/linux/kobject.h"
230struct kset {
231 struct list_head list ;
232 spinlock_t list_lock ;
233 struct kobject kobj ;
234 struct kset_uevent_ops const *uevent_ops ;
235};
236#line 88 "include/linux/kmemleak.h"
237struct kmem_cache_cpu {
238 void **freelist ;
239 unsigned long tid ;
240 struct page *page ;
241 struct page *partial ;
242 int node ;
243 unsigned int stat[26U] ;
244};
245#line 55 "include/linux/slub_def.h"
246struct kmem_cache_node {
247 spinlock_t list_lock ;
248 unsigned long nr_partial ;
249 struct list_head partial ;
250 atomic_long_t nr_slabs ;
251 atomic_long_t total_objects ;
252 struct list_head full ;
253};
254#line 66 "include/linux/slub_def.h"
255struct kmem_cache_order_objects {
256 unsigned long x ;
257};
258#line 76 "include/linux/slub_def.h"
259struct kmem_cache {
260 struct kmem_cache_cpu *cpu_slab ;
261 unsigned long flags ;
262 unsigned long min_partial ;
263 int size ;
264 int objsize ;
265 int offset ;
266 int cpu_partial ;
267 struct kmem_cache_order_objects oo ;
268 struct kmem_cache_order_objects max ;
269 struct kmem_cache_order_objects min ;
270 gfp_t allocflags ;
271 int refcount ;
272 void (*ctor)(void * ) ;
273 int inuse ;
274 int align ;
275 int reserved ;
276 char const *name ;
277 struct list_head list ;
278 struct kobject kobj ;
279 int remote_node_defrag_ratio ;
280 struct kmem_cache_node *node[1024U] ;
281};
282#line 1650 "include/linux/input.h"
283struct rc_map_table {
284 u32 scancode ;
285 u32 keycode ;
286};
287#line 35 "include/media/rc-map.h"
288struct rc_map {
289 struct rc_map_table *scan ;
290 unsigned int size ;
291 unsigned int len ;
292 unsigned int alloc ;
293 u64 rc_type ;
294 char const *name ;
295 spinlock_t lock ;
296};
297#line 45 "include/media/rc-map.h"
298struct rc_map_list {
299 struct list_head list ;
300 struct rc_map map ;
301};
302#line 2 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/9161/dscv_tempdir/dscv/ri/43_1a/drivers/media/rc/keymaps/rc-it913x-v1.c.p"
303void ldv_spin_lock(void) ;
304#line 3
305void ldv_spin_unlock(void) ;
306#line 4
307int ldv_spin_trylock(void) ;
308#line 220 "include/linux/slub_def.h"
309extern void *kmem_cache_alloc(struct kmem_cache * , gfp_t ) ;
310#line 223
311void *ldv_kmem_cache_alloc_16(struct kmem_cache *ldv_func_arg1 , gfp_t ldv_func_arg2 ) ;
312#line 11 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/9161/dscv_tempdir/dscv/ri/43_1a/drivers/media/rc/keymaps/rc-it913x-v1.c.p"
313void ldv_check_alloc_flags(gfp_t flags ) ;
314#line 12
315void ldv_check_alloc_nonatomic(void) ;
316#line 14
317struct page *ldv_check_alloc_flags_and_return_some_page(gfp_t flags ) ;
318#line 53 "include/media/rc-map.h"
319extern int rc_map_register(struct rc_map_list * ) ;
320#line 54
321extern void rc_map_unregister(struct rc_map_list * ) ;
322#line 30 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/9161/dscv_tempdir/dscv/ri/43_1a/drivers/media/rc/keymaps/rc-it913x-v1.c.p"
323static struct rc_map_table it913x_v1_rc[52U] =
324#line 30 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/9161/dscv_tempdir/dscv/ri/43_1a/drivers/media/rc/keymaps/rc-it913x-v1.c.p"
325 { {6411777U, 393U},
326 {6411778U, 4U},
327 {6411779U, 116U},
328 {6411780U, 2U},
329 {6411781U, 6U},
330 {6411782U, 7U},
331 {6411783U, 403U},
332 {6411784U, 3U},
333 {6411785U, 402U},
334 {6411786U, 10U},
335 {6411787U, 372U},
336 {6411788U, 8U},
337 {6411789U, 9U},
338 {6411790U, 115U},
339 {6411791U, 5U},
340 {6411792U, 1U},
341 {6411793U, 11U},
342 {6411794U, 352U},
343 {6411795U, 114U},
344 {6411796U, 167U},
345 {6411797U, 128U},
346 {6411798U, 207U},
347 {6411799U, 113U},
348 {6411800U, 103U},
349 {6411801U, 108U},
350 {6411802U, 105U},
351 {6411803U, 106U},
352 {6411804U, 398U},
353 {6411805U, 399U},
354 {6411806U, 400U},
355 {6411807U, 401U},
356 {6411843U, 356U},
357 {8421133U, 11U},
358 {8421124U, 2U},
359 {8421125U, 3U},
360 {8421126U, 4U},
361 {8421127U, 5U},
362 {8421128U, 6U},
363 {8421129U, 7U},
364 {8421130U, 8U},
365 {8421147U, 9U},
366 {8421151U, 10U},
367 {8421138U, 116U},
368 {8421121U, 439U},
369 {8421145U, 119U},
370 {8421150U, 115U},
371 {8421123U, 114U},
372 {8421146U, 402U},
373 {8421122U, 403U},
374 {8421132U, 372U},
375 {8421120U, 167U},
376 {8421134U, 128U}};
377#line 87 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/9161/dscv_tempdir/dscv/ri/43_1a/drivers/media/rc/keymaps/rc-it913x-v1.c.p"
378static struct rc_map_list it913x_v1_map = {{(struct list_head *)0, (struct list_head *)0}, {(struct rc_map_table *)(& it913x_v1_rc),
379 52U, 0U, 0U, 2ULL, "rc-it913x-v1",
380 {{{{{0U}}, 0U, 0U, (void *)0,
381 {(struct lock_class_key *)0,
382 {(struct lock_class *)0,
383 (struct lock_class *)0},
384 (char const *)0, 0, 0UL}}}}}};
385#line 96 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/9161/dscv_tempdir/dscv/ri/43_1a/drivers/media/rc/keymaps/rc-it913x-v1.c.p"
386static int init_rc_it913x_v1_map(void)
387{ int tmp ;
388
389 {
390 {
391#line 98
392 tmp = rc_map_register(& it913x_v1_map);
393 }
394#line 98
395 return (tmp);
396}
397}
398#line 101 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/9161/dscv_tempdir/dscv/ri/43_1a/drivers/media/rc/keymaps/rc-it913x-v1.c.p"
399static void exit_rc_it913x_v1_map(void)
400{
401
402 {
403 {
404#line 103
405 rc_map_unregister(& it913x_v1_map);
406 }
407#line 104
408 return;
409}
410}
411#line 128
412extern void ldv_check_final_state(void) ;
413#line 134
414extern void ldv_initialize(void) ;
415#line 137
416extern int __VERIFIER_nondet_int(void) ;
417#line 140 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/9161/dscv_tempdir/dscv/ri/43_1a/drivers/media/rc/keymaps/rc-it913x-v1.c.p"
418int LDV_IN_INTERRUPT ;
419#line 143 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/9161/dscv_tempdir/dscv/ri/43_1a/drivers/media/rc/keymaps/rc-it913x-v1.c.p"
420void main(void)
421{ int tmp ;
422 int tmp___0 ;
423 int tmp___1 ;
424
425 {
426 {
427#line 155
428 LDV_IN_INTERRUPT = 1;
429#line 164
430 ldv_initialize();
431#line 170
432 tmp = init_rc_it913x_v1_map();
433 }
434#line 170
435 if (tmp != 0) {
436#line 171
437 goto ldv_final;
438 } else {
439
440 }
441#line 173
442 goto ldv_19081;
443 ldv_19080:
444 {
445#line 176
446 tmp___0 = __VERIFIER_nondet_int();
447 }
448 {
449#line 178
450 goto switch_default;
451#line 176
452 if (0) {
453 switch_default: ;
454#line 178
455 goto ldv_19079;
456 } else {
457 switch_break: ;
458 }
459 }
460 ldv_19079: ;
461 ldv_19081:
462 {
463#line 173
464 tmp___1 = __VERIFIER_nondet_int();
465 }
466#line 173
467 if (tmp___1 != 0) {
468#line 174
469 goto ldv_19080;
470 } else {
471#line 176
472 goto ldv_19082;
473 }
474 ldv_19082: ;
475 {
476#line 190
477 exit_rc_it913x_v1_map();
478 }
479 ldv_final:
480 {
481#line 193
482 ldv_check_final_state();
483 }
484#line 196
485 return;
486}
487}
488#line 5 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/9161/dscv_tempdir/dscv/ri/43_1a/kernel-rules/files/engine-blast-assert.h"
489void ldv_blast_assert(void)
490{
491
492 {
493 ERROR: ;
494#line 6
495 goto ERROR;
496}
497}
498#line 6 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/9161/dscv_tempdir/dscv/ri/43_1a/kernel-rules/files/engine-blast.h"
499extern int __VERIFIER_nondet_int(void) ;
500#line 217 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/9161/dscv_tempdir/dscv/ri/43_1a/drivers/media/rc/keymaps/rc-it913x-v1.c.p"
501int ldv_spin = 0;
502#line 221 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/9161/dscv_tempdir/dscv/ri/43_1a/drivers/media/rc/keymaps/rc-it913x-v1.c.p"
503void ldv_check_alloc_flags(gfp_t flags )
504{
505
506 {
507#line 224
508 if (ldv_spin != 0) {
509#line 224
510 if (flags != 32U) {
511 {
512#line 224
513 ldv_blast_assert();
514 }
515 } else {
516
517 }
518 } else {
519
520 }
521#line 227
522 return;
523}
524}
525#line 227
526extern struct page *ldv_some_page(void) ;
527#line 230 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/9161/dscv_tempdir/dscv/ri/43_1a/drivers/media/rc/keymaps/rc-it913x-v1.c.p"
528struct page *ldv_check_alloc_flags_and_return_some_page(gfp_t flags )
529{ struct page *tmp ;
530
531 {
532#line 233
533 if (ldv_spin != 0) {
534#line 233
535 if (flags != 32U) {
536 {
537#line 233
538 ldv_blast_assert();
539 }
540 } else {
541
542 }
543 } else {
544
545 }
546 {
547#line 235
548 tmp = ldv_some_page();
549 }
550#line 235
551 return (tmp);
552}
553}
554#line 239 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/9161/dscv_tempdir/dscv/ri/43_1a/drivers/media/rc/keymaps/rc-it913x-v1.c.p"
555void ldv_check_alloc_nonatomic(void)
556{
557
558 {
559#line 242
560 if (ldv_spin != 0) {
561 {
562#line 242
563 ldv_blast_assert();
564 }
565 } else {
566
567 }
568#line 245
569 return;
570}
571}
572#line 246 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/9161/dscv_tempdir/dscv/ri/43_1a/drivers/media/rc/keymaps/rc-it913x-v1.c.p"
573void ldv_spin_lock(void)
574{
575
576 {
577#line 249
578 ldv_spin = 1;
579#line 250
580 return;
581}
582}
583#line 253 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/9161/dscv_tempdir/dscv/ri/43_1a/drivers/media/rc/keymaps/rc-it913x-v1.c.p"
584void ldv_spin_unlock(void)
585{
586
587 {
588#line 256
589 ldv_spin = 0;
590#line 257
591 return;
592}
593}
594#line 260 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/9161/dscv_tempdir/dscv/ri/43_1a/drivers/media/rc/keymaps/rc-it913x-v1.c.p"
595int ldv_spin_trylock(void)
596{ int is_lock ;
597
598 {
599 {
600#line 265
601 is_lock = __VERIFIER_nondet_int();
602 }
603#line 267
604 if (is_lock != 0) {
605#line 270
606 return (0);
607 } else {
608#line 275
609 ldv_spin = 1;
610#line 277
611 return (1);
612 }
613}
614}
615#line 444 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/9161/dscv_tempdir/dscv/ri/43_1a/drivers/media/rc/keymaps/rc-it913x-v1.c.p"
616void *ldv_kmem_cache_alloc_16(struct kmem_cache *ldv_func_arg1 , gfp_t ldv_func_arg2 )
617{
618
619 {
620 {
621#line 450
622 ldv_check_alloc_flags(ldv_func_arg2);
623#line 452
624 kmem_cache_alloc(ldv_func_arg1, ldv_func_arg2);
625 }
626#line 453
627 return ((void *)0);
628}
629}