1
2
3
4#line 23 "include/asm-generic/int-ll64.h"
5typedef unsigned short __u16;
6#line 26 "include/asm-generic/int-ll64.h"
7typedef unsigned int __u32;
8#line 30 "include/asm-generic/int-ll64.h"
9typedef unsigned long long __u64;
10#line 43 "include/asm-generic/int-ll64.h"
11typedef unsigned char u8;
12#line 45 "include/asm-generic/int-ll64.h"
13typedef short s16;
14#line 46 "include/asm-generic/int-ll64.h"
15typedef unsigned short u16;
16#line 49 "include/asm-generic/int-ll64.h"
17typedef unsigned int u32;
18#line 51 "include/asm-generic/int-ll64.h"
19typedef long long s64;
20#line 52 "include/asm-generic/int-ll64.h"
21typedef unsigned long long u64;
22#line 14 "include/asm-generic/posix_types.h"
23typedef long __kernel_long_t;
24#line 15 "include/asm-generic/posix_types.h"
25typedef unsigned long __kernel_ulong_t;
26#line 75 "include/asm-generic/posix_types.h"
27typedef __kernel_ulong_t __kernel_size_t;
28#line 76 "include/asm-generic/posix_types.h"
29typedef __kernel_long_t __kernel_ssize_t;
30#line 91 "include/asm-generic/posix_types.h"
31typedef long long __kernel_loff_t;
32#line 21 "include/linux/types.h"
33typedef __u32 __kernel_dev_t;
34#line 24 "include/linux/types.h"
35typedef __kernel_dev_t dev_t;
36#line 27 "include/linux/types.h"
37typedef unsigned short umode_t;
38#line 38 "include/linux/types.h"
39typedef _Bool bool;
40#line 54 "include/linux/types.h"
41typedef __kernel_loff_t loff_t;
42#line 63 "include/linux/types.h"
43typedef __kernel_size_t size_t;
44#line 68 "include/linux/types.h"
45typedef __kernel_ssize_t ssize_t;
46#line 202 "include/linux/types.h"
47typedef unsigned int gfp_t;
48#line 221 "include/linux/types.h"
49struct __anonstruct_atomic_t_6 {
50 int counter ;
51};
52#line 221 "include/linux/types.h"
53typedef struct __anonstruct_atomic_t_6 atomic_t;
54#line 226 "include/linux/types.h"
55struct __anonstruct_atomic64_t_7 {
56 long counter ;
57};
58#line 226 "include/linux/types.h"
59typedef struct __anonstruct_atomic64_t_7 atomic64_t;
60#line 227 "include/linux/types.h"
61struct list_head {
62 struct list_head *next ;
63 struct list_head *prev ;
64};
65#line 55 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/alternative.h"
66struct module;
67#line 146 "include/linux/init.h"
68typedef void (*ctor_fn_t)(void);
69#line 46 "include/linux/dynamic_debug.h"
70struct device;
71#line 57
72struct completion;
73#line 58 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/page_types.h"
74struct page;
75#line 26 "include/asm-generic/getorder.h"
76struct task_struct;
77#line 290 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_types.h"
78struct file;
79#line 327 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/paravirt_types.h"
80struct arch_spinlock;
81#line 306 "include/linux/bitmap.h"
82struct bug_entry {
83 int bug_addr_disp ;
84 int file_disp ;
85 unsigned short line ;
86 unsigned short flags ;
87};
88#line 234 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/paravirt.h"
89struct static_key;
90#line 433 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
91struct kmem_cache;
92#line 23 "include/asm-generic/atomic-long.h"
93typedef atomic64_t atomic_long_t;
94#line 14 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
95typedef u16 __ticket_t;
96#line 15 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
97typedef u32 __ticketpair_t;
98#line 16 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
99struct __raw_tickets {
100 __ticket_t head ;
101 __ticket_t tail ;
102};
103#line 26 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
104union __anonunion_ldv_5907_29 {
105 __ticketpair_t head_tail ;
106 struct __raw_tickets tickets ;
107};
108#line 26 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
109struct arch_spinlock {
110 union __anonunion_ldv_5907_29 ldv_5907 ;
111};
112#line 27 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
113typedef struct arch_spinlock arch_spinlock_t;
114#line 34 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/rwlock.h"
115struct lockdep_map;
116#line 55 "include/linux/debug_locks.h"
117struct stack_trace {
118 unsigned int nr_entries ;
119 unsigned int max_entries ;
120 unsigned long *entries ;
121 int skip ;
122};
123#line 26 "include/linux/stacktrace.h"
124struct lockdep_subclass_key {
125 char __one_byte ;
126};
127#line 53 "include/linux/lockdep.h"
128struct lock_class_key {
129 struct lockdep_subclass_key subkeys[8U] ;
130};
131#line 59 "include/linux/lockdep.h"
132struct lock_class {
133 struct list_head hash_entry ;
134 struct list_head lock_entry ;
135 struct lockdep_subclass_key *key ;
136 unsigned int subclass ;
137 unsigned int dep_gen_id ;
138 unsigned long usage_mask ;
139 struct stack_trace usage_traces[13U] ;
140 struct list_head locks_after ;
141 struct list_head locks_before ;
142 unsigned int version ;
143 unsigned long ops ;
144 char const *name ;
145 int name_version ;
146 unsigned long contention_point[4U] ;
147 unsigned long contending_point[4U] ;
148};
149#line 144 "include/linux/lockdep.h"
150struct lockdep_map {
151 struct lock_class_key *key ;
152 struct lock_class *class_cache[2U] ;
153 char const *name ;
154 int cpu ;
155 unsigned long ip ;
156};
157#line 556 "include/linux/lockdep.h"
158struct raw_spinlock {
159 arch_spinlock_t raw_lock ;
160 unsigned int magic ;
161 unsigned int owner_cpu ;
162 void *owner ;
163 struct lockdep_map dep_map ;
164};
165#line 33 "include/linux/spinlock_types.h"
166struct __anonstruct_ldv_6122_33 {
167 u8 __padding[24U] ;
168 struct lockdep_map dep_map ;
169};
170#line 33 "include/linux/spinlock_types.h"
171union __anonunion_ldv_6123_32 {
172 struct raw_spinlock rlock ;
173 struct __anonstruct_ldv_6122_33 ldv_6122 ;
174};
175#line 33 "include/linux/spinlock_types.h"
176struct spinlock {
177 union __anonunion_ldv_6123_32 ldv_6123 ;
178};
179#line 76 "include/linux/spinlock_types.h"
180typedef struct spinlock spinlock_t;
181#line 48 "include/linux/wait.h"
182struct __wait_queue_head {
183 spinlock_t lock ;
184 struct list_head task_list ;
185};
186#line 53 "include/linux/wait.h"
187typedef struct __wait_queue_head wait_queue_head_t;
188#line 670 "include/linux/mmzone.h"
189struct mutex {
190 atomic_t count ;
191 spinlock_t wait_lock ;
192 struct list_head wait_list ;
193 struct task_struct *owner ;
194 char const *name ;
195 void *magic ;
196 struct lockdep_map dep_map ;
197};
198#line 128 "include/linux/rwsem.h"
199struct completion {
200 unsigned int done ;
201 wait_queue_head_t wait ;
202};
203#line 312 "include/linux/jiffies.h"
204union ktime {
205 s64 tv64 ;
206};
207#line 59 "include/linux/ktime.h"
208typedef union ktime ktime_t;
209#line 341
210struct tvec_base;
211#line 342 "include/linux/ktime.h"
212struct timer_list {
213 struct list_head entry ;
214 unsigned long expires ;
215 struct tvec_base *base ;
216 void (*function)(unsigned long ) ;
217 unsigned long data ;
218 int slack ;
219 int start_pid ;
220 void *start_site ;
221 char start_comm[16U] ;
222 struct lockdep_map lockdep_map ;
223};
224#line 302 "include/linux/timer.h"
225struct work_struct;
226#line 45 "include/linux/workqueue.h"
227struct work_struct {
228 atomic_long_t data ;
229 struct list_head entry ;
230 void (*func)(struct work_struct * ) ;
231 struct lockdep_map lockdep_map ;
232};
233#line 46 "include/linux/pm.h"
234struct pm_message {
235 int event ;
236};
237#line 52 "include/linux/pm.h"
238typedef struct pm_message pm_message_t;
239#line 53 "include/linux/pm.h"
240struct dev_pm_ops {
241 int (*prepare)(struct device * ) ;
242 void (*complete)(struct device * ) ;
243 int (*suspend)(struct device * ) ;
244 int (*resume)(struct device * ) ;
245 int (*freeze)(struct device * ) ;
246 int (*thaw)(struct device * ) ;
247 int (*poweroff)(struct device * ) ;
248 int (*restore)(struct device * ) ;
249 int (*suspend_late)(struct device * ) ;
250 int (*resume_early)(struct device * ) ;
251 int (*freeze_late)(struct device * ) ;
252 int (*thaw_early)(struct device * ) ;
253 int (*poweroff_late)(struct device * ) ;
254 int (*restore_early)(struct device * ) ;
255 int (*suspend_noirq)(struct device * ) ;
256 int (*resume_noirq)(struct device * ) ;
257 int (*freeze_noirq)(struct device * ) ;
258 int (*thaw_noirq)(struct device * ) ;
259 int (*poweroff_noirq)(struct device * ) ;
260 int (*restore_noirq)(struct device * ) ;
261 int (*runtime_suspend)(struct device * ) ;
262 int (*runtime_resume)(struct device * ) ;
263 int (*runtime_idle)(struct device * ) ;
264};
265#line 289
266enum rpm_status {
267 RPM_ACTIVE = 0,
268 RPM_RESUMING = 1,
269 RPM_SUSPENDED = 2,
270 RPM_SUSPENDING = 3
271} ;
272#line 296
273enum rpm_request {
274 RPM_REQ_NONE = 0,
275 RPM_REQ_IDLE = 1,
276 RPM_REQ_SUSPEND = 2,
277 RPM_REQ_AUTOSUSPEND = 3,
278 RPM_REQ_RESUME = 4
279} ;
280#line 304
281struct wakeup_source;
282#line 494 "include/linux/pm.h"
283struct pm_subsys_data {
284 spinlock_t lock ;
285 unsigned int refcount ;
286};
287#line 499
288struct dev_pm_qos_request;
289#line 499
290struct pm_qos_constraints;
291#line 499 "include/linux/pm.h"
292struct dev_pm_info {
293 pm_message_t power_state ;
294 unsigned char can_wakeup : 1 ;
295 unsigned char async_suspend : 1 ;
296 bool is_prepared ;
297 bool is_suspended ;
298 bool ignore_children ;
299 spinlock_t lock ;
300 struct list_head entry ;
301 struct completion completion ;
302 struct wakeup_source *wakeup ;
303 bool wakeup_path ;
304 struct timer_list suspend_timer ;
305 unsigned long timer_expires ;
306 struct work_struct work ;
307 wait_queue_head_t wait_queue ;
308 atomic_t usage_count ;
309 atomic_t child_count ;
310 unsigned char disable_depth : 3 ;
311 unsigned char idle_notification : 1 ;
312 unsigned char request_pending : 1 ;
313 unsigned char deferred_resume : 1 ;
314 unsigned char run_wake : 1 ;
315 unsigned char runtime_auto : 1 ;
316 unsigned char no_callbacks : 1 ;
317 unsigned char irq_safe : 1 ;
318 unsigned char use_autosuspend : 1 ;
319 unsigned char timer_autosuspends : 1 ;
320 enum rpm_request request ;
321 enum rpm_status runtime_status ;
322 int runtime_error ;
323 int autosuspend_delay ;
324 unsigned long last_busy ;
325 unsigned long active_jiffies ;
326 unsigned long suspended_jiffies ;
327 unsigned long accounting_timestamp ;
328 ktime_t suspend_time ;
329 s64 max_time_suspended_ns ;
330 struct dev_pm_qos_request *pq_req ;
331 struct pm_subsys_data *subsys_data ;
332 struct pm_qos_constraints *constraints ;
333};
334#line 558 "include/linux/pm.h"
335struct dev_pm_domain {
336 struct dev_pm_ops ops ;
337};
338#line 18 "include/asm-generic/pci_iomap.h"
339struct vm_area_struct;
340#line 18 "include/linux/elf.h"
341typedef __u64 Elf64_Addr;
342#line 19 "include/linux/elf.h"
343typedef __u16 Elf64_Half;
344#line 23 "include/linux/elf.h"
345typedef __u32 Elf64_Word;
346#line 24 "include/linux/elf.h"
347typedef __u64 Elf64_Xword;
348#line 193 "include/linux/elf.h"
349struct elf64_sym {
350 Elf64_Word st_name ;
351 unsigned char st_info ;
352 unsigned char st_other ;
353 Elf64_Half st_shndx ;
354 Elf64_Addr st_value ;
355 Elf64_Xword st_size ;
356};
357#line 201 "include/linux/elf.h"
358typedef struct elf64_sym Elf64_Sym;
359#line 445
360struct sock;
361#line 446
362struct kobject;
363#line 447
364enum kobj_ns_type {
365 KOBJ_NS_TYPE_NONE = 0,
366 KOBJ_NS_TYPE_NET = 1,
367 KOBJ_NS_TYPES = 2
368} ;
369#line 453 "include/linux/elf.h"
370struct kobj_ns_type_operations {
371 enum kobj_ns_type type ;
372 void *(*grab_current_ns)(void) ;
373 void const *(*netlink_ns)(struct sock * ) ;
374 void const *(*initial_ns)(void) ;
375 void (*drop_ns)(void * ) ;
376};
377#line 57 "include/linux/kobject_ns.h"
378struct attribute {
379 char const *name ;
380 umode_t mode ;
381 struct lock_class_key *key ;
382 struct lock_class_key skey ;
383};
384#line 33 "include/linux/sysfs.h"
385struct attribute_group {
386 char const *name ;
387 umode_t (*is_visible)(struct kobject * , struct attribute * , int ) ;
388 struct attribute **attrs ;
389};
390#line 62 "include/linux/sysfs.h"
391struct bin_attribute {
392 struct attribute attr ;
393 size_t size ;
394 void *private ;
395 ssize_t (*read)(struct file * , struct kobject * , struct bin_attribute * , char * ,
396 loff_t , size_t ) ;
397 ssize_t (*write)(struct file * , struct kobject * , struct bin_attribute * , char * ,
398 loff_t , size_t ) ;
399 int (*mmap)(struct file * , struct kobject * , struct bin_attribute * , struct vm_area_struct * ) ;
400};
401#line 98 "include/linux/sysfs.h"
402struct sysfs_ops {
403 ssize_t (*show)(struct kobject * , struct attribute * , char * ) ;
404 ssize_t (*store)(struct kobject * , struct attribute * , char const * , size_t ) ;
405 void const *(*namespace)(struct kobject * , struct attribute const * ) ;
406};
407#line 117
408struct sysfs_dirent;
409#line 182 "include/linux/sysfs.h"
410struct kref {
411 atomic_t refcount ;
412};
413#line 49 "include/linux/kobject.h"
414struct kset;
415#line 49
416struct kobj_type;
417#line 49 "include/linux/kobject.h"
418struct kobject {
419 char const *name ;
420 struct list_head entry ;
421 struct kobject *parent ;
422 struct kset *kset ;
423 struct kobj_type *ktype ;
424 struct sysfs_dirent *sd ;
425 struct kref kref ;
426 unsigned char state_initialized : 1 ;
427 unsigned char state_in_sysfs : 1 ;
428 unsigned char state_add_uevent_sent : 1 ;
429 unsigned char state_remove_uevent_sent : 1 ;
430 unsigned char uevent_suppress : 1 ;
431};
432#line 107 "include/linux/kobject.h"
433struct kobj_type {
434 void (*release)(struct kobject * ) ;
435 struct sysfs_ops const *sysfs_ops ;
436 struct attribute **default_attrs ;
437 struct kobj_ns_type_operations const *(*child_ns_type)(struct kobject * ) ;
438 void const *(*namespace)(struct kobject * ) ;
439};
440#line 115 "include/linux/kobject.h"
441struct kobj_uevent_env {
442 char *envp[32U] ;
443 int envp_idx ;
444 char buf[2048U] ;
445 int buflen ;
446};
447#line 122 "include/linux/kobject.h"
448struct kset_uevent_ops {
449 int (* const filter)(struct kset * , struct kobject * ) ;
450 char const *(* const name)(struct kset * , struct kobject * ) ;
451 int (* const uevent)(struct kset * , struct kobject * , struct kobj_uevent_env * ) ;
452};
453#line 139 "include/linux/kobject.h"
454struct kset {
455 struct list_head list ;
456 spinlock_t list_lock ;
457 struct kobject kobj ;
458 struct kset_uevent_ops const *uevent_ops ;
459};
460#line 215
461struct kernel_param;
462#line 216 "include/linux/kobject.h"
463struct kernel_param_ops {
464 int (*set)(char const * , struct kernel_param const * ) ;
465 int (*get)(char * , struct kernel_param const * ) ;
466 void (*free)(void * ) ;
467};
468#line 49 "include/linux/moduleparam.h"
469struct kparam_string;
470#line 49
471struct kparam_array;
472#line 49 "include/linux/moduleparam.h"
473union __anonunion_ldv_13363_134 {
474 void *arg ;
475 struct kparam_string const *str ;
476 struct kparam_array const *arr ;
477};
478#line 49 "include/linux/moduleparam.h"
479struct kernel_param {
480 char const *name ;
481 struct kernel_param_ops const *ops ;
482 u16 perm ;
483 s16 level ;
484 union __anonunion_ldv_13363_134 ldv_13363 ;
485};
486#line 61 "include/linux/moduleparam.h"
487struct kparam_string {
488 unsigned int maxlen ;
489 char *string ;
490};
491#line 67 "include/linux/moduleparam.h"
492struct kparam_array {
493 unsigned int max ;
494 unsigned int elemsize ;
495 unsigned int *num ;
496 struct kernel_param_ops const *ops ;
497 void *elem ;
498};
499#line 458 "include/linux/moduleparam.h"
500struct static_key {
501 atomic_t enabled ;
502};
503#line 225 "include/linux/jump_label.h"
504struct tracepoint;
505#line 226 "include/linux/jump_label.h"
506struct tracepoint_func {
507 void *func ;
508 void *data ;
509};
510#line 29 "include/linux/tracepoint.h"
511struct tracepoint {
512 char const *name ;
513 struct static_key key ;
514 void (*regfunc)(void) ;
515 void (*unregfunc)(void) ;
516 struct tracepoint_func *funcs ;
517};
518#line 86 "include/linux/tracepoint.h"
519struct kernel_symbol {
520 unsigned long value ;
521 char const *name ;
522};
523#line 27 "include/linux/export.h"
524struct mod_arch_specific {
525
526};
527#line 34 "include/linux/module.h"
528struct module_param_attrs;
529#line 34 "include/linux/module.h"
530struct module_kobject {
531 struct kobject kobj ;
532 struct module *mod ;
533 struct kobject *drivers_dir ;
534 struct module_param_attrs *mp ;
535};
536#line 43 "include/linux/module.h"
537struct module_attribute {
538 struct attribute attr ;
539 ssize_t (*show)(struct module_attribute * , struct module_kobject * , char * ) ;
540 ssize_t (*store)(struct module_attribute * , struct module_kobject * , char const * ,
541 size_t ) ;
542 void (*setup)(struct module * , char const * ) ;
543 int (*test)(struct module * ) ;
544 void (*free)(struct module * ) ;
545};
546#line 69
547struct exception_table_entry;
548#line 198
549enum module_state {
550 MODULE_STATE_LIVE = 0,
551 MODULE_STATE_COMING = 1,
552 MODULE_STATE_GOING = 2
553} ;
554#line 204 "include/linux/module.h"
555struct module_ref {
556 unsigned long incs ;
557 unsigned long decs ;
558};
559#line 219
560struct module_sect_attrs;
561#line 219
562struct module_notes_attrs;
563#line 219
564struct ftrace_event_call;
565#line 219 "include/linux/module.h"
566struct module {
567 enum module_state state ;
568 struct list_head list ;
569 char name[56U] ;
570 struct module_kobject mkobj ;
571 struct module_attribute *modinfo_attrs ;
572 char const *version ;
573 char const *srcversion ;
574 struct kobject *holders_dir ;
575 struct kernel_symbol const *syms ;
576 unsigned long const *crcs ;
577 unsigned int num_syms ;
578 struct kernel_param *kp ;
579 unsigned int num_kp ;
580 unsigned int num_gpl_syms ;
581 struct kernel_symbol const *gpl_syms ;
582 unsigned long const *gpl_crcs ;
583 struct kernel_symbol const *unused_syms ;
584 unsigned long const *unused_crcs ;
585 unsigned int num_unused_syms ;
586 unsigned int num_unused_gpl_syms ;
587 struct kernel_symbol const *unused_gpl_syms ;
588 unsigned long const *unused_gpl_crcs ;
589 struct kernel_symbol const *gpl_future_syms ;
590 unsigned long const *gpl_future_crcs ;
591 unsigned int num_gpl_future_syms ;
592 unsigned int num_exentries ;
593 struct exception_table_entry *extable ;
594 int (*init)(void) ;
595 void *module_init ;
596 void *module_core ;
597 unsigned int init_size ;
598 unsigned int core_size ;
599 unsigned int init_text_size ;
600 unsigned int core_text_size ;
601 unsigned int init_ro_size ;
602 unsigned int core_ro_size ;
603 struct mod_arch_specific arch ;
604 unsigned int taints ;
605 unsigned int num_bugs ;
606 struct list_head bug_list ;
607 struct bug_entry *bug_table ;
608 Elf64_Sym *symtab ;
609 Elf64_Sym *core_symtab ;
610 unsigned int num_symtab ;
611 unsigned int core_num_syms ;
612 char *strtab ;
613 char *core_strtab ;
614 struct module_sect_attrs *sect_attrs ;
615 struct module_notes_attrs *notes_attrs ;
616 char *args ;
617 void *percpu ;
618 unsigned int percpu_size ;
619 unsigned int num_tracepoints ;
620 struct tracepoint * const *tracepoints_ptrs ;
621 unsigned int num_trace_bprintk_fmt ;
622 char const **trace_bprintk_fmt_start ;
623 struct ftrace_event_call **trace_events ;
624 unsigned int num_trace_events ;
625 struct list_head source_list ;
626 struct list_head target_list ;
627 struct task_struct *waiter ;
628 void (*exit)(void) ;
629 struct module_ref *refptr ;
630 ctor_fn_t (**ctors)(void) ;
631 unsigned int num_ctors ;
632};
633#line 88 "include/linux/kmemleak.h"
634struct kmem_cache_cpu {
635 void **freelist ;
636 unsigned long tid ;
637 struct page *page ;
638 struct page *partial ;
639 int node ;
640 unsigned int stat[26U] ;
641};
642#line 55 "include/linux/slub_def.h"
643struct kmem_cache_node {
644 spinlock_t list_lock ;
645 unsigned long nr_partial ;
646 struct list_head partial ;
647 atomic_long_t nr_slabs ;
648 atomic_long_t total_objects ;
649 struct list_head full ;
650};
651#line 66 "include/linux/slub_def.h"
652struct kmem_cache_order_objects {
653 unsigned long x ;
654};
655#line 76 "include/linux/slub_def.h"
656struct kmem_cache {
657 struct kmem_cache_cpu *cpu_slab ;
658 unsigned long flags ;
659 unsigned long min_partial ;
660 int size ;
661 int objsize ;
662 int offset ;
663 int cpu_partial ;
664 struct kmem_cache_order_objects oo ;
665 struct kmem_cache_order_objects max ;
666 struct kmem_cache_order_objects min ;
667 gfp_t allocflags ;
668 int refcount ;
669 void (*ctor)(void * ) ;
670 int inuse ;
671 int align ;
672 int reserved ;
673 char const *name ;
674 struct list_head list ;
675 struct kobject kobj ;
676 int remote_node_defrag_ratio ;
677 struct kmem_cache_node *node[1024U] ;
678};
679#line 15 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/12522/dscv_tempdir/dscv/ri/43_1a/drivers/misc/sgi-xp/xp_main.c.p"
680struct klist_node;
681#line 37 "include/linux/klist.h"
682struct klist_node {
683 void *n_klist ;
684 struct list_head n_node ;
685 struct kref n_ref ;
686};
687#line 67
688struct dma_map_ops;
689#line 67 "include/linux/klist.h"
690struct dev_archdata {
691 void *acpi_handle ;
692 struct dma_map_ops *dma_ops ;
693 void *iommu ;
694};
695#line 17 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/device.h"
696struct device_private;
697#line 18
698struct device_driver;
699#line 19
700struct driver_private;
701#line 20
702struct class;
703#line 21
704struct subsys_private;
705#line 22
706struct bus_type;
707#line 23
708struct device_node;
709#line 24
710struct iommu_ops;
711#line 25 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/device.h"
712struct bus_attribute {
713 struct attribute attr ;
714 ssize_t (*show)(struct bus_type * , char * ) ;
715 ssize_t (*store)(struct bus_type * , char const * , size_t ) ;
716};
717#line 51 "include/linux/device.h"
718struct device_attribute;
719#line 51
720struct driver_attribute;
721#line 51 "include/linux/device.h"
722struct bus_type {
723 char const *name ;
724 char const *dev_name ;
725 struct device *dev_root ;
726 struct bus_attribute *bus_attrs ;
727 struct device_attribute *dev_attrs ;
728 struct driver_attribute *drv_attrs ;
729 int (*match)(struct device * , struct device_driver * ) ;
730 int (*uevent)(struct device * , struct kobj_uevent_env * ) ;
731 int (*probe)(struct device * ) ;
732 int (*remove)(struct device * ) ;
733 void (*shutdown)(struct device * ) ;
734 int (*suspend)(struct device * , pm_message_t ) ;
735 int (*resume)(struct device * ) ;
736 struct dev_pm_ops const *pm ;
737 struct iommu_ops *iommu_ops ;
738 struct subsys_private *p ;
739};
740#line 125
741struct device_type;
742#line 182
743struct of_device_id;
744#line 182 "include/linux/device.h"
745struct device_driver {
746 char const *name ;
747 struct bus_type *bus ;
748 struct module *owner ;
749 char const *mod_name ;
750 bool suppress_bind_attrs ;
751 struct of_device_id const *of_match_table ;
752 int (*probe)(struct device * ) ;
753 int (*remove)(struct device * ) ;
754 void (*shutdown)(struct device * ) ;
755 int (*suspend)(struct device * , pm_message_t ) ;
756 int (*resume)(struct device * ) ;
757 struct attribute_group const **groups ;
758 struct dev_pm_ops const *pm ;
759 struct driver_private *p ;
760};
761#line 245 "include/linux/device.h"
762struct driver_attribute {
763 struct attribute attr ;
764 ssize_t (*show)(struct device_driver * , char * ) ;
765 ssize_t (*store)(struct device_driver * , char const * , size_t ) ;
766};
767#line 299
768struct class_attribute;
769#line 299 "include/linux/device.h"
770struct class {
771 char const *name ;
772 struct module *owner ;
773 struct class_attribute *class_attrs ;
774 struct device_attribute *dev_attrs ;
775 struct bin_attribute *dev_bin_attrs ;
776 struct kobject *dev_kobj ;
777 int (*dev_uevent)(struct device * , struct kobj_uevent_env * ) ;
778 char *(*devnode)(struct device * , umode_t * ) ;
779 void (*class_release)(struct class * ) ;
780 void (*dev_release)(struct device * ) ;
781 int (*suspend)(struct device * , pm_message_t ) ;
782 int (*resume)(struct device * ) ;
783 struct kobj_ns_type_operations const *ns_type ;
784 void const *(*namespace)(struct device * ) ;
785 struct dev_pm_ops const *pm ;
786 struct subsys_private *p ;
787};
788#line 394 "include/linux/device.h"
789struct class_attribute {
790 struct attribute attr ;
791 ssize_t (*show)(struct class * , struct class_attribute * , char * ) ;
792 ssize_t (*store)(struct class * , struct class_attribute * , char const * , size_t ) ;
793 void const *(*namespace)(struct class * , struct class_attribute const * ) ;
794};
795#line 447 "include/linux/device.h"
796struct device_type {
797 char const *name ;
798 struct attribute_group const **groups ;
799 int (*uevent)(struct device * , struct kobj_uevent_env * ) ;
800 char *(*devnode)(struct device * , umode_t * ) ;
801 void (*release)(struct device * ) ;
802 struct dev_pm_ops const *pm ;
803};
804#line 474 "include/linux/device.h"
805struct device_attribute {
806 struct attribute attr ;
807 ssize_t (*show)(struct device * , struct device_attribute * , char * ) ;
808 ssize_t (*store)(struct device * , struct device_attribute * , char const * ,
809 size_t ) ;
810};
811#line 557 "include/linux/device.h"
812struct device_dma_parameters {
813 unsigned int max_segment_size ;
814 unsigned long segment_boundary_mask ;
815};
816#line 567
817struct dma_coherent_mem;
818#line 567 "include/linux/device.h"
819struct device {
820 struct device *parent ;
821 struct device_private *p ;
822 struct kobject kobj ;
823 char const *init_name ;
824 struct device_type const *type ;
825 struct mutex mutex ;
826 struct bus_type *bus ;
827 struct device_driver *driver ;
828 void *platform_data ;
829 struct dev_pm_info power ;
830 struct dev_pm_domain *pm_domain ;
831 int numa_node ;
832 u64 *dma_mask ;
833 u64 coherent_dma_mask ;
834 struct device_dma_parameters *dma_parms ;
835 struct list_head dma_pools ;
836 struct dma_coherent_mem *dma_mem ;
837 struct dev_archdata archdata ;
838 struct device_node *of_node ;
839 dev_t devt ;
840 u32 id ;
841 spinlock_t devres_lock ;
842 struct list_head devres_head ;
843 struct klist_node knode_class ;
844 struct class *class ;
845 struct attribute_group const **groups ;
846 void (*release)(struct device * ) ;
847};
848#line 681 "include/linux/device.h"
849struct wakeup_source {
850 char const *name ;
851 struct list_head entry ;
852 spinlock_t lock ;
853 struct timer_list timer ;
854 unsigned long timer_expires ;
855 ktime_t total_time ;
856 ktime_t max_time ;
857 ktime_t last_time ;
858 unsigned long event_count ;
859 unsigned long active_count ;
860 unsigned long relax_count ;
861 unsigned long hit_count ;
862 unsigned char active : 1 ;
863};
864#line 17 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/uv/uv.h"
865enum xp_retval {
866 xpSuccess = 0,
867 xpNotConnected = 1,
868 xpConnected = 2,
869 xpRETIRED1 = 3,
870 xpMsgReceived = 4,
871 xpMsgDelivered = 5,
872 xpRETIRED2 = 6,
873 xpNoWait = 7,
874 xpRetry = 8,
875 xpTimeout = 9,
876 xpInterrupted = 10,
877 xpUnequalMsgSizes = 11,
878 xpInvalidAddress = 12,
879 xpNoMemory = 13,
880 xpLackOfResources = 14,
881 xpUnregistered = 15,
882 xpAlreadyRegistered = 16,
883 xpPartitionDown = 17,
884 xpNotLoaded = 18,
885 xpUnloading = 19,
886 xpBadMagic = 20,
887 xpReactivating = 21,
888 xpUnregistering = 22,
889 xpOtherUnregistering = 23,
890 xpCloneKThread = 24,
891 xpCloneKThreadFailed = 25,
892 xpNoHeartbeat = 26,
893 xpPioReadError = 27,
894 xpPhysAddrRegFailed = 28,
895 xpRETIRED3 = 29,
896 xpRETIRED4 = 30,
897 xpRETIRED5 = 31,
898 xpRETIRED6 = 32,
899 xpRETIRED7 = 33,
900 xpRETIRED8 = 34,
901 xpRETIRED9 = 35,
902 xpRETIRED10 = 36,
903 xpRETIRED11 = 37,
904 xpRETIRED12 = 38,
905 xpBadVersion = 39,
906 xpVarsNotSet = 40,
907 xpNoRsvdPageAddr = 41,
908 xpInvalidPartid = 42,
909 xpLocalPartid = 43,
910 xpOtherGoingDown = 44,
911 xpSystemGoingDown = 45,
912 xpSystemHalt = 46,
913 xpSystemReboot = 47,
914 xpSystemPoweroff = 48,
915 xpDisconnecting = 49,
916 xpOpenCloseError = 50,
917 xpDisconnected = 51,
918 xpBteCopyError = 52,
919 xpSalError = 53,
920 xpRsvdPageNotSet = 54,
921 xpPayloadTooBig = 55,
922 xpUnsupported = 56,
923 xpNeedMoreInfo = 57,
924 xpGruCopyError = 58,
925 xpGruSendMqError = 59,
926 xpBadChannelNumber = 60,
927 xpBadMsgType = 61,
928 xpBiosError = 62,
929 xpUnknownReason = 63
930} ;
931#line 251 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/drivers/misc/sgi-xp/xp.h"
932struct xpc_registration {
933 struct mutex mutex ;
934 void (*func)(enum xp_retval , short , int , void * , void * ) ;
935 void *key ;
936 u16 nentries ;
937 u16 entry_size ;
938 u32 assigned_limit ;
939 u32 idle_limit ;
940};
941#line 276 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/drivers/misc/sgi-xp/xp.h"
942struct xpc_interface {
943 void (*connect)(int ) ;
944 void (*disconnect)(int ) ;
945 enum xp_retval (*send)(short , int , u32 , void * , u16 ) ;
946 enum xp_retval (*send_notify)(short , int , u32 , void * , u16 , void (*)(enum xp_retval ,
947 short ,
948 int ,
949 void * ) ,
950 void * ) ;
951 void (*received)(short , int , void * ) ;
952 enum xp_retval (*partid_to_nasids)(short , void * ) ;
953};
954#line 19 "include/asm-generic/int-ll64.h"
955typedef signed char __s8;
956#line 22 "include/asm-generic/int-ll64.h"
957typedef short __s16;
958#line 25 "include/asm-generic/int-ll64.h"
959typedef int __s32;
960#line 48 "include/asm-generic/int-ll64.h"
961typedef int s32;
962#line 52 "include/asm-generic/posix_types.h"
963typedef unsigned int __kernel_uid32_t;
964#line 53 "include/asm-generic/posix_types.h"
965typedef unsigned int __kernel_gid32_t;
966#line 92 "include/asm-generic/posix_types.h"
967typedef __kernel_long_t __kernel_time_t;
968#line 40 "include/linux/types.h"
969typedef __kernel_uid32_t uid_t;
970#line 41 "include/linux/types.h"
971typedef __kernel_gid32_t gid_t;
972#line 78 "include/linux/types.h"
973typedef __kernel_time_t time_t;
974#line 142 "include/linux/types.h"
975typedef unsigned long sector_t;
976#line 143 "include/linux/types.h"
977typedef unsigned long blkcnt_t;
978#line 203 "include/linux/types.h"
979typedef unsigned int fmode_t;
980#line 232
981struct hlist_node;
982#line 232 "include/linux/types.h"
983struct hlist_head {
984 struct hlist_node *first ;
985};
986#line 236 "include/linux/types.h"
987struct hlist_node {
988 struct hlist_node *next ;
989 struct hlist_node **pprev ;
990};
991#line 247 "include/linux/types.h"
992struct rcu_head {
993 struct rcu_head *next ;
994 void (*func)(struct rcu_head * ) ;
995};
996#line 348 "include/linux/kernel.h"
997struct pid;
998#line 112 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/stat.h"
999struct timespec;
1000#line 305 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_types.h"
1001struct seq_file;
1002#line 153 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
1003struct seq_operations;
1004#line 33 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/rwlock.h"
1005struct __anonstruct_ldv_5914_31 {
1006 u32 read ;
1007 s32 write ;
1008};
1009#line 33 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/rwlock.h"
1010union __anonunion_arch_rwlock_t_30 {
1011 s64 lock ;
1012 struct __anonstruct_ldv_5914_31 ldv_5914 ;
1013};
1014#line 33 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/rwlock.h"
1015typedef union __anonunion_arch_rwlock_t_30 arch_rwlock_t;
1016#line 32 "include/linux/spinlock_types.h"
1017typedef struct raw_spinlock raw_spinlock_t;
1018#line 23 "include/linux/rwlock_types.h"
1019struct __anonstruct_rwlock_t_34 {
1020 arch_rwlock_t raw_lock ;
1021 unsigned int magic ;
1022 unsigned int owner_cpu ;
1023 void *owner ;
1024 struct lockdep_map dep_map ;
1025};
1026#line 23 "include/linux/rwlock_types.h"
1027typedef struct __anonstruct_rwlock_t_34 rwlock_t;
1028#line 110 "include/linux/seqlock.h"
1029struct seqcount {
1030 unsigned int sequence ;
1031};
1032#line 121 "include/linux/seqlock.h"
1033typedef struct seqcount seqcount_t;
1034#line 254 "include/linux/seqlock.h"
1035struct timespec {
1036 __kernel_time_t tv_sec ;
1037 long tv_nsec ;
1038};
1039#line 286 "include/linux/time.h"
1040struct kstat {
1041 u64 ino ;
1042 dev_t dev ;
1043 umode_t mode ;
1044 unsigned int nlink ;
1045 uid_t uid ;
1046 gid_t gid ;
1047 dev_t rdev ;
1048 loff_t size ;
1049 struct timespec atime ;
1050 struct timespec mtime ;
1051 struct timespec ctime ;
1052 unsigned long blksize ;
1053 unsigned long long blocks ;
1054};
1055#line 171 "include/linux/mutex.h"
1056struct rw_semaphore;
1057#line 172 "include/linux/mutex.h"
1058struct rw_semaphore {
1059 long count ;
1060 raw_spinlock_t wait_lock ;
1061 struct list_head wait_list ;
1062 struct lockdep_map dep_map ;
1063};
1064#line 37 "include/linux/kmod.h"
1065struct cred;
1066#line 2075 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/uv/uv_mmrs.h"
1067struct uv_scir_s {
1068 struct timer_list timer ;
1069 unsigned long offset ;
1070 unsigned long last ;
1071 unsigned long idle_on ;
1072 unsigned long idle_off ;
1073 unsigned char state ;
1074 unsigned char enabled ;
1075};
1076#line 139 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/uv/uv_hub.h"
1077struct uv_hub_info_s {
1078 unsigned long global_mmr_base ;
1079 unsigned long gpa_mask ;
1080 unsigned int gnode_extra ;
1081 unsigned char hub_revision ;
1082 unsigned char apic_pnode_shift ;
1083 unsigned char m_shift ;
1084 unsigned char n_lshift ;
1085 unsigned long gnode_upper ;
1086 unsigned long lowmem_remap_top ;
1087 unsigned long lowmem_remap_base ;
1088 unsigned short pnode ;
1089 unsigned short pnode_mask ;
1090 unsigned short coherency_domain_number ;
1091 unsigned short numa_blade_id ;
1092 unsigned char blade_processor_id ;
1093 unsigned char m_val ;
1094 unsigned char n_val ;
1095 struct uv_scir_s scir ;
1096};
1097#line 468 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/uv/uv_hub.h"
1098struct uv_blade_info {
1099 unsigned short nr_possible_cpus ;
1100 unsigned short nr_online_cpus ;
1101 unsigned short pnode ;
1102 short memory_nid ;
1103 spinlock_t nmi_lock ;
1104 unsigned long nmi_count ;
1105};
1106#line 41 "include/asm-generic/sections.h"
1107struct exception_table_entry {
1108 unsigned long insn ;
1109 unsigned long fixup ;
1110};
1111#line 115 "include/linux/rtc.h"
1112struct path;
1113#line 116
1114struct inode;
1115#line 117
1116struct dentry;
1117#line 118 "include/linux/rtc.h"
1118struct seq_file {
1119 char *buf ;
1120 size_t size ;
1121 size_t from ;
1122 size_t count ;
1123 loff_t index ;
1124 loff_t read_pos ;
1125 u64 version ;
1126 struct mutex lock ;
1127 struct seq_operations const *op ;
1128 int poll_event ;
1129 void *private ;
1130};
1131#line 30 "include/linux/seq_file.h"
1132struct seq_operations {
1133 void *(*start)(struct seq_file * , loff_t * ) ;
1134 void (*stop)(struct seq_file * , void * ) ;
1135 void *(*next)(struct seq_file * , void * , loff_t * ) ;
1136 int (*show)(struct seq_file * , void * ) ;
1137};
1138#line 89 "include/linux/kdev_t.h"
1139struct file_operations;
1140#line 90 "include/linux/kdev_t.h"
1141struct cdev {
1142 struct kobject kobj ;
1143 struct module *owner ;
1144 struct file_operations const *ops ;
1145 struct list_head list ;
1146 dev_t dev ;
1147 unsigned int count ;
1148};
1149#line 33 "include/linux/cdev.h"
1150struct backing_dev_info;
1151#line 41 "include/asm-generic/poll.h"
1152struct block_device;
1153#line 93 "include/linux/bit_spinlock.h"
1154struct hlist_bl_node;
1155#line 93 "include/linux/bit_spinlock.h"
1156struct hlist_bl_head {
1157 struct hlist_bl_node *first ;
1158};
1159#line 36 "include/linux/list_bl.h"
1160struct hlist_bl_node {
1161 struct hlist_bl_node *next ;
1162 struct hlist_bl_node **pprev ;
1163};
1164#line 114 "include/linux/rculist_bl.h"
1165struct nameidata;
1166#line 115
1167struct vfsmount;
1168#line 116 "include/linux/rculist_bl.h"
1169struct qstr {
1170 unsigned int hash ;
1171 unsigned int len ;
1172 unsigned char const *name ;
1173};
1174#line 72 "include/linux/dcache.h"
1175struct dentry_operations;
1176#line 72
1177struct super_block;
1178#line 72 "include/linux/dcache.h"
1179union __anonunion_d_u_136 {
1180 struct list_head d_child ;
1181 struct rcu_head d_rcu ;
1182};
1183#line 72 "include/linux/dcache.h"
1184struct dentry {
1185 unsigned int d_flags ;
1186 seqcount_t d_seq ;
1187 struct hlist_bl_node d_hash ;
1188 struct dentry *d_parent ;
1189 struct qstr d_name ;
1190 struct inode *d_inode ;
1191 unsigned char d_iname[32U] ;
1192 unsigned int d_count ;
1193 spinlock_t d_lock ;
1194 struct dentry_operations const *d_op ;
1195 struct super_block *d_sb ;
1196 unsigned long d_time ;
1197 void *d_fsdata ;
1198 struct list_head d_lru ;
1199 union __anonunion_d_u_136 d_u ;
1200 struct list_head d_subdirs ;
1201 struct list_head d_alias ;
1202};
1203#line 123 "include/linux/dcache.h"
1204struct dentry_operations {
1205 int (*d_revalidate)(struct dentry * , struct nameidata * ) ;
1206 int (*d_hash)(struct dentry const * , struct inode const * , struct qstr * ) ;
1207 int (*d_compare)(struct dentry const * , struct inode const * , struct dentry const * ,
1208 struct inode const * , unsigned int , char const * , struct qstr const * ) ;
1209 int (*d_delete)(struct dentry const * ) ;
1210 void (*d_release)(struct dentry * ) ;
1211 void (*d_prune)(struct dentry * ) ;
1212 void (*d_iput)(struct dentry * , struct inode * ) ;
1213 char *(*d_dname)(struct dentry * , char * , int ) ;
1214 struct vfsmount *(*d_automount)(struct path * ) ;
1215 int (*d_manage)(struct dentry * , bool ) ;
1216};
1217#line 402 "include/linux/dcache.h"
1218struct path {
1219 struct vfsmount *mnt ;
1220 struct dentry *dentry ;
1221};
1222#line 58 "include/linux/radix-tree.h"
1223struct radix_tree_node;
1224#line 58 "include/linux/radix-tree.h"
1225struct radix_tree_root {
1226 unsigned int height ;
1227 gfp_t gfp_mask ;
1228 struct radix_tree_node *rnode ;
1229};
1230#line 377
1231struct prio_tree_node;
1232#line 19 "include/linux/prio_tree.h"
1233struct prio_tree_node {
1234 struct prio_tree_node *left ;
1235 struct prio_tree_node *right ;
1236 struct prio_tree_node *parent ;
1237 unsigned long start ;
1238 unsigned long last ;
1239};
1240#line 27 "include/linux/prio_tree.h"
1241struct prio_tree_root {
1242 struct prio_tree_node *prio_tree_node ;
1243 unsigned short index_bits ;
1244 unsigned short raw ;
1245};
1246#line 111
1247enum pid_type {
1248 PIDTYPE_PID = 0,
1249 PIDTYPE_PGID = 1,
1250 PIDTYPE_SID = 2,
1251 PIDTYPE_MAX = 3
1252} ;
1253#line 118
1254struct pid_namespace;
1255#line 118 "include/linux/prio_tree.h"
1256struct upid {
1257 int nr ;
1258 struct pid_namespace *ns ;
1259 struct hlist_node pid_chain ;
1260};
1261#line 56 "include/linux/pid.h"
1262struct pid {
1263 atomic_t count ;
1264 unsigned int level ;
1265 struct hlist_head tasks[3U] ;
1266 struct rcu_head rcu ;
1267 struct upid numbers[1U] ;
1268};
1269#line 45 "include/linux/semaphore.h"
1270struct fiemap_extent {
1271 __u64 fe_logical ;
1272 __u64 fe_physical ;
1273 __u64 fe_length ;
1274 __u64 fe_reserved64[2U] ;
1275 __u32 fe_flags ;
1276 __u32 fe_reserved[3U] ;
1277};
1278#line 38 "include/linux/fiemap.h"
1279struct shrink_control {
1280 gfp_t gfp_mask ;
1281 unsigned long nr_to_scan ;
1282};
1283#line 14 "include/linux/shrinker.h"
1284struct shrinker {
1285 int (*shrink)(struct shrinker * , struct shrink_control * ) ;
1286 int seeks ;
1287 long batch ;
1288 struct list_head list ;
1289 atomic_long_t nr_in_batch ;
1290};
1291#line 43
1292enum migrate_mode {
1293 MIGRATE_ASYNC = 0,
1294 MIGRATE_SYNC_LIGHT = 1,
1295 MIGRATE_SYNC = 2
1296} ;
1297#line 49
1298struct export_operations;
1299#line 51
1300struct iovec;
1301#line 52
1302struct kiocb;
1303#line 53
1304struct pipe_inode_info;
1305#line 54
1306struct poll_table_struct;
1307#line 55
1308struct kstatfs;
1309#line 435 "include/linux/fs.h"
1310struct iattr {
1311 unsigned int ia_valid ;
1312 umode_t ia_mode ;
1313 uid_t ia_uid ;
1314 gid_t ia_gid ;
1315 loff_t ia_size ;
1316 struct timespec ia_atime ;
1317 struct timespec ia_mtime ;
1318 struct timespec ia_ctime ;
1319 struct file *ia_file ;
1320};
1321#line 119 "include/linux/quota.h"
1322struct if_dqinfo {
1323 __u64 dqi_bgrace ;
1324 __u64 dqi_igrace ;
1325 __u32 dqi_flags ;
1326 __u32 dqi_valid ;
1327};
1328#line 176 "include/linux/percpu_counter.h"
1329struct fs_disk_quota {
1330 __s8 d_version ;
1331 __s8 d_flags ;
1332 __u16 d_fieldmask ;
1333 __u32 d_id ;
1334 __u64 d_blk_hardlimit ;
1335 __u64 d_blk_softlimit ;
1336 __u64 d_ino_hardlimit ;
1337 __u64 d_ino_softlimit ;
1338 __u64 d_bcount ;
1339 __u64 d_icount ;
1340 __s32 d_itimer ;
1341 __s32 d_btimer ;
1342 __u16 d_iwarns ;
1343 __u16 d_bwarns ;
1344 __s32 d_padding2 ;
1345 __u64 d_rtb_hardlimit ;
1346 __u64 d_rtb_softlimit ;
1347 __u64 d_rtbcount ;
1348 __s32 d_rtbtimer ;
1349 __u16 d_rtbwarns ;
1350 __s16 d_padding3 ;
1351 char d_padding4[8U] ;
1352};
1353#line 75 "include/linux/dqblk_xfs.h"
1354struct fs_qfilestat {
1355 __u64 qfs_ino ;
1356 __u64 qfs_nblks ;
1357 __u32 qfs_nextents ;
1358};
1359#line 150 "include/linux/dqblk_xfs.h"
1360typedef struct fs_qfilestat fs_qfilestat_t;
1361#line 151 "include/linux/dqblk_xfs.h"
1362struct fs_quota_stat {
1363 __s8 qs_version ;
1364 __u16 qs_flags ;
1365 __s8 qs_pad ;
1366 fs_qfilestat_t qs_uquota ;
1367 fs_qfilestat_t qs_gquota ;
1368 __u32 qs_incoredqs ;
1369 __s32 qs_btimelimit ;
1370 __s32 qs_itimelimit ;
1371 __s32 qs_rtbtimelimit ;
1372 __u16 qs_bwarnlimit ;
1373 __u16 qs_iwarnlimit ;
1374};
1375#line 165
1376struct dquot;
1377#line 185 "include/linux/quota.h"
1378typedef __kernel_uid32_t qid_t;
1379#line 186 "include/linux/quota.h"
1380typedef long long qsize_t;
1381#line 189 "include/linux/quota.h"
1382struct mem_dqblk {
1383 qsize_t dqb_bhardlimit ;
1384 qsize_t dqb_bsoftlimit ;
1385 qsize_t dqb_curspace ;
1386 qsize_t dqb_rsvspace ;
1387 qsize_t dqb_ihardlimit ;
1388 qsize_t dqb_isoftlimit ;
1389 qsize_t dqb_curinodes ;
1390 time_t dqb_btime ;
1391 time_t dqb_itime ;
1392};
1393#line 211
1394struct quota_format_type;
1395#line 212 "include/linux/quota.h"
1396struct mem_dqinfo {
1397 struct quota_format_type *dqi_format ;
1398 int dqi_fmt_id ;
1399 struct list_head dqi_dirty_list ;
1400 unsigned long dqi_flags ;
1401 unsigned int dqi_bgrace ;
1402 unsigned int dqi_igrace ;
1403 qsize_t dqi_maxblimit ;
1404 qsize_t dqi_maxilimit ;
1405 void *dqi_priv ;
1406};
1407#line 275 "include/linux/quota.h"
1408struct dquot {
1409 struct hlist_node dq_hash ;
1410 struct list_head dq_inuse ;
1411 struct list_head dq_free ;
1412 struct list_head dq_dirty ;
1413 struct mutex dq_lock ;
1414 atomic_t dq_count ;
1415 wait_queue_head_t dq_wait_unused ;
1416 struct super_block *dq_sb ;
1417 unsigned int dq_id ;
1418 loff_t dq_off ;
1419 unsigned long dq_flags ;
1420 short dq_type ;
1421 struct mem_dqblk dq_dqb ;
1422};
1423#line 303 "include/linux/quota.h"
1424struct quota_format_ops {
1425 int (*check_quota_file)(struct super_block * , int ) ;
1426 int (*read_file_info)(struct super_block * , int ) ;
1427 int (*write_file_info)(struct super_block * , int ) ;
1428 int (*free_file_info)(struct super_block * , int ) ;
1429 int (*read_dqblk)(struct dquot * ) ;
1430 int (*commit_dqblk)(struct dquot * ) ;
1431 int (*release_dqblk)(struct dquot * ) ;
1432};
1433#line 314 "include/linux/quota.h"
1434struct dquot_operations {
1435 int (*write_dquot)(struct dquot * ) ;
1436 struct dquot *(*alloc_dquot)(struct super_block * , int ) ;
1437 void (*destroy_dquot)(struct dquot * ) ;
1438 int (*acquire_dquot)(struct dquot * ) ;
1439 int (*release_dquot)(struct dquot * ) ;
1440 int (*mark_dirty)(struct dquot * ) ;
1441 int (*write_info)(struct super_block * , int ) ;
1442 qsize_t *(*get_reserved_space)(struct inode * ) ;
1443};
1444#line 328 "include/linux/quota.h"
1445struct quotactl_ops {
1446 int (*quota_on)(struct super_block * , int , int , struct path * ) ;
1447 int (*quota_on_meta)(struct super_block * , int , int ) ;
1448 int (*quota_off)(struct super_block * , int ) ;
1449 int (*quota_sync)(struct super_block * , int , int ) ;
1450 int (*get_info)(struct super_block * , int , struct if_dqinfo * ) ;
1451 int (*set_info)(struct super_block * , int , struct if_dqinfo * ) ;
1452 int (*get_dqblk)(struct super_block * , int , qid_t , struct fs_disk_quota * ) ;
1453 int (*set_dqblk)(struct super_block * , int , qid_t , struct fs_disk_quota * ) ;
1454 int (*get_xstate)(struct super_block * , struct fs_quota_stat * ) ;
1455 int (*set_xstate)(struct super_block * , unsigned int , int ) ;
1456};
1457#line 344 "include/linux/quota.h"
1458struct quota_format_type {
1459 int qf_fmt_id ;
1460 struct quota_format_ops const *qf_ops ;
1461 struct module *qf_owner ;
1462 struct quota_format_type *qf_next ;
1463};
1464#line 390 "include/linux/quota.h"
1465struct quota_info {
1466 unsigned int flags ;
1467 struct mutex dqio_mutex ;
1468 struct mutex dqonoff_mutex ;
1469 struct rw_semaphore dqptr_sem ;
1470 struct inode *files[2U] ;
1471 struct mem_dqinfo info[2U] ;
1472 struct quota_format_ops const *ops[2U] ;
1473};
1474#line 421
1475struct address_space;
1476#line 422
1477struct writeback_control;
1478#line 585 "include/linux/fs.h"
1479union __anonunion_arg_139 {
1480 char *buf ;
1481 void *data ;
1482};
1483#line 585 "include/linux/fs.h"
1484struct __anonstruct_read_descriptor_t_138 {
1485 size_t written ;
1486 size_t count ;
1487 union __anonunion_arg_139 arg ;
1488 int error ;
1489};
1490#line 585 "include/linux/fs.h"
1491typedef struct __anonstruct_read_descriptor_t_138 read_descriptor_t;
1492#line 588 "include/linux/fs.h"
1493struct address_space_operations {
1494 int (*writepage)(struct page * , struct writeback_control * ) ;
1495 int (*readpage)(struct file * , struct page * ) ;
1496 int (*writepages)(struct address_space * , struct writeback_control * ) ;
1497 int (*set_page_dirty)(struct page * ) ;
1498 int (*readpages)(struct file * , struct address_space * , struct list_head * ,
1499 unsigned int ) ;
1500 int (*write_begin)(struct file * , struct address_space * , loff_t , unsigned int ,
1501 unsigned int , struct page ** , void ** ) ;
1502 int (*write_end)(struct file * , struct address_space * , loff_t , unsigned int ,
1503 unsigned int , struct page * , void * ) ;
1504 sector_t (*bmap)(struct address_space * , sector_t ) ;
1505 void (*invalidatepage)(struct page * , unsigned long ) ;
1506 int (*releasepage)(struct page * , gfp_t ) ;
1507 void (*freepage)(struct page * ) ;
1508 ssize_t (*direct_IO)(int , struct kiocb * , struct iovec const * , loff_t ,
1509 unsigned long ) ;
1510 int (*get_xip_mem)(struct address_space * , unsigned long , int , void ** , unsigned long * ) ;
1511 int (*migratepage)(struct address_space * , struct page * , struct page * , enum migrate_mode ) ;
1512 int (*launder_page)(struct page * ) ;
1513 int (*is_partially_uptodate)(struct page * , read_descriptor_t * , unsigned long ) ;
1514 int (*error_remove_page)(struct address_space * , struct page * ) ;
1515};
1516#line 642 "include/linux/fs.h"
1517struct address_space {
1518 struct inode *host ;
1519 struct radix_tree_root page_tree ;
1520 spinlock_t tree_lock ;
1521 unsigned int i_mmap_writable ;
1522 struct prio_tree_root i_mmap ;
1523 struct list_head i_mmap_nonlinear ;
1524 struct mutex i_mmap_mutex ;
1525 unsigned long nrpages ;
1526 unsigned long writeback_index ;
1527 struct address_space_operations const *a_ops ;
1528 unsigned long flags ;
1529 struct backing_dev_info *backing_dev_info ;
1530 spinlock_t private_lock ;
1531 struct list_head private_list ;
1532 struct address_space *assoc_mapping ;
1533};
1534#line 664
1535struct request_queue;
1536#line 665
1537struct hd_struct;
1538#line 665
1539struct gendisk;
1540#line 665 "include/linux/fs.h"
1541struct block_device {
1542 dev_t bd_dev ;
1543 int bd_openers ;
1544 struct inode *bd_inode ;
1545 struct super_block *bd_super ;
1546 struct mutex bd_mutex ;
1547 struct list_head bd_inodes ;
1548 void *bd_claiming ;
1549 void *bd_holder ;
1550 int bd_holders ;
1551 bool bd_write_holder ;
1552 struct list_head bd_holder_disks ;
1553 struct block_device *bd_contains ;
1554 unsigned int bd_block_size ;
1555 struct hd_struct *bd_part ;
1556 unsigned int bd_part_count ;
1557 int bd_invalidated ;
1558 struct gendisk *bd_disk ;
1559 struct request_queue *bd_queue ;
1560 struct list_head bd_list ;
1561 unsigned long bd_private ;
1562 int bd_fsfreeze_count ;
1563 struct mutex bd_fsfreeze_mutex ;
1564};
1565#line 737
1566struct posix_acl;
1567#line 738
1568struct inode_operations;
1569#line 738 "include/linux/fs.h"
1570union __anonunion_ldv_19449_140 {
1571 unsigned int const i_nlink ;
1572 unsigned int __i_nlink ;
1573};
1574#line 738 "include/linux/fs.h"
1575union __anonunion_ldv_19468_141 {
1576 struct list_head i_dentry ;
1577 struct rcu_head i_rcu ;
1578};
1579#line 738
1580struct file_lock;
1581#line 738 "include/linux/fs.h"
1582union __anonunion_ldv_19484_142 {
1583 struct pipe_inode_info *i_pipe ;
1584 struct block_device *i_bdev ;
1585 struct cdev *i_cdev ;
1586};
1587#line 738 "include/linux/fs.h"
1588struct inode {
1589 umode_t i_mode ;
1590 unsigned short i_opflags ;
1591 uid_t i_uid ;
1592 gid_t i_gid ;
1593 unsigned int i_flags ;
1594 struct posix_acl *i_acl ;
1595 struct posix_acl *i_default_acl ;
1596 struct inode_operations const *i_op ;
1597 struct super_block *i_sb ;
1598 struct address_space *i_mapping ;
1599 void *i_security ;
1600 unsigned long i_ino ;
1601 union __anonunion_ldv_19449_140 ldv_19449 ;
1602 dev_t i_rdev ;
1603 struct timespec i_atime ;
1604 struct timespec i_mtime ;
1605 struct timespec i_ctime ;
1606 spinlock_t i_lock ;
1607 unsigned short i_bytes ;
1608 blkcnt_t i_blocks ;
1609 loff_t i_size ;
1610 unsigned long i_state ;
1611 struct mutex i_mutex ;
1612 unsigned long dirtied_when ;
1613 struct hlist_node i_hash ;
1614 struct list_head i_wb_list ;
1615 struct list_head i_lru ;
1616 struct list_head i_sb_list ;
1617 union __anonunion_ldv_19468_141 ldv_19468 ;
1618 atomic_t i_count ;
1619 unsigned int i_blkbits ;
1620 u64 i_version ;
1621 atomic_t i_dio_count ;
1622 atomic_t i_writecount ;
1623 struct file_operations const *i_fop ;
1624 struct file_lock *i_flock ;
1625 struct address_space i_data ;
1626 struct dquot *i_dquot[2U] ;
1627 struct list_head i_devices ;
1628 union __anonunion_ldv_19484_142 ldv_19484 ;
1629 __u32 i_generation ;
1630 __u32 i_fsnotify_mask ;
1631 struct hlist_head i_fsnotify_marks ;
1632 atomic_t i_readcount ;
1633 void *i_private ;
1634};
1635#line 941 "include/linux/fs.h"
1636struct fown_struct {
1637 rwlock_t lock ;
1638 struct pid *pid ;
1639 enum pid_type pid_type ;
1640 uid_t uid ;
1641 uid_t euid ;
1642 int signum ;
1643};
1644#line 949 "include/linux/fs.h"
1645struct file_ra_state {
1646 unsigned long start ;
1647 unsigned int size ;
1648 unsigned int async_size ;
1649 unsigned int ra_pages ;
1650 unsigned int mmap_miss ;
1651 loff_t prev_pos ;
1652};
1653#line 972 "include/linux/fs.h"
1654union __anonunion_f_u_143 {
1655 struct list_head fu_list ;
1656 struct rcu_head fu_rcuhead ;
1657};
1658#line 972 "include/linux/fs.h"
1659struct file {
1660 union __anonunion_f_u_143 f_u ;
1661 struct path f_path ;
1662 struct file_operations const *f_op ;
1663 spinlock_t f_lock ;
1664 int f_sb_list_cpu ;
1665 atomic_long_t f_count ;
1666 unsigned int f_flags ;
1667 fmode_t f_mode ;
1668 loff_t f_pos ;
1669 struct fown_struct f_owner ;
1670 struct cred const *f_cred ;
1671 struct file_ra_state f_ra ;
1672 u64 f_version ;
1673 void *f_security ;
1674 void *private_data ;
1675 struct list_head f_ep_links ;
1676 struct list_head f_tfile_llink ;
1677 struct address_space *f_mapping ;
1678 unsigned long f_mnt_write_state ;
1679};
1680#line 1111
1681struct files_struct;
1682#line 1111 "include/linux/fs.h"
1683typedef struct files_struct *fl_owner_t;
1684#line 1112 "include/linux/fs.h"
1685struct file_lock_operations {
1686 void (*fl_copy_lock)(struct file_lock * , struct file_lock * ) ;
1687 void (*fl_release_private)(struct file_lock * ) ;
1688};
1689#line 1117 "include/linux/fs.h"
1690struct lock_manager_operations {
1691 int (*lm_compare_owner)(struct file_lock * , struct file_lock * ) ;
1692 void (*lm_notify)(struct file_lock * ) ;
1693 int (*lm_grant)(struct file_lock * , struct file_lock * , int ) ;
1694 void (*lm_release_private)(struct file_lock * ) ;
1695 void (*lm_break)(struct file_lock * ) ;
1696 int (*lm_change)(struct file_lock ** , int ) ;
1697};
1698#line 1134
1699struct nlm_lockowner;
1700#line 1135 "include/linux/fs.h"
1701struct nfs_lock_info {
1702 u32 state ;
1703 struct nlm_lockowner *owner ;
1704 struct list_head list ;
1705};
1706#line 14 "include/linux/nfs_fs_i.h"
1707struct nfs4_lock_state;
1708#line 15 "include/linux/nfs_fs_i.h"
1709struct nfs4_lock_info {
1710 struct nfs4_lock_state *owner ;
1711};
1712#line 19
1713struct fasync_struct;
1714#line 19 "include/linux/nfs_fs_i.h"
1715struct __anonstruct_afs_145 {
1716 struct list_head link ;
1717 int state ;
1718};
1719#line 19 "include/linux/nfs_fs_i.h"
1720union __anonunion_fl_u_144 {
1721 struct nfs_lock_info nfs_fl ;
1722 struct nfs4_lock_info nfs4_fl ;
1723 struct __anonstruct_afs_145 afs ;
1724};
1725#line 19 "include/linux/nfs_fs_i.h"
1726struct file_lock {
1727 struct file_lock *fl_next ;
1728 struct list_head fl_link ;
1729 struct list_head fl_block ;
1730 fl_owner_t fl_owner ;
1731 unsigned int fl_flags ;
1732 unsigned char fl_type ;
1733 unsigned int fl_pid ;
1734 struct pid *fl_nspid ;
1735 wait_queue_head_t fl_wait ;
1736 struct file *fl_file ;
1737 loff_t fl_start ;
1738 loff_t fl_end ;
1739 struct fasync_struct *fl_fasync ;
1740 unsigned long fl_break_time ;
1741 unsigned long fl_downgrade_time ;
1742 struct file_lock_operations const *fl_ops ;
1743 struct lock_manager_operations const *fl_lmops ;
1744 union __anonunion_fl_u_144 fl_u ;
1745};
1746#line 1221 "include/linux/fs.h"
1747struct fasync_struct {
1748 spinlock_t fa_lock ;
1749 int magic ;
1750 int fa_fd ;
1751 struct fasync_struct *fa_next ;
1752 struct file *fa_file ;
1753 struct rcu_head fa_rcu ;
1754};
1755#line 1417
1756struct file_system_type;
1757#line 1417
1758struct super_operations;
1759#line 1417
1760struct xattr_handler;
1761#line 1417
1762struct mtd_info;
1763#line 1417 "include/linux/fs.h"
1764struct super_block {
1765 struct list_head s_list ;
1766 dev_t s_dev ;
1767 unsigned char s_dirt ;
1768 unsigned char s_blocksize_bits ;
1769 unsigned long s_blocksize ;
1770 loff_t s_maxbytes ;
1771 struct file_system_type *s_type ;
1772 struct super_operations const *s_op ;
1773 struct dquot_operations const *dq_op ;
1774 struct quotactl_ops const *s_qcop ;
1775 struct export_operations const *s_export_op ;
1776 unsigned long s_flags ;
1777 unsigned long s_magic ;
1778 struct dentry *s_root ;
1779 struct rw_semaphore s_umount ;
1780 struct mutex s_lock ;
1781 int s_count ;
1782 atomic_t s_active ;
1783 void *s_security ;
1784 struct xattr_handler const **s_xattr ;
1785 struct list_head s_inodes ;
1786 struct hlist_bl_head s_anon ;
1787 struct list_head *s_files ;
1788 struct list_head s_mounts ;
1789 struct list_head s_dentry_lru ;
1790 int s_nr_dentry_unused ;
1791 spinlock_t s_inode_lru_lock ;
1792 struct list_head s_inode_lru ;
1793 int s_nr_inodes_unused ;
1794 struct block_device *s_bdev ;
1795 struct backing_dev_info *s_bdi ;
1796 struct mtd_info *s_mtd ;
1797 struct hlist_node s_instances ;
1798 struct quota_info s_dquot ;
1799 int s_frozen ;
1800 wait_queue_head_t s_wait_unfrozen ;
1801 char s_id[32U] ;
1802 u8 s_uuid[16U] ;
1803 void *s_fs_info ;
1804 unsigned int s_max_links ;
1805 fmode_t s_mode ;
1806 u32 s_time_gran ;
1807 struct mutex s_vfs_rename_mutex ;
1808 char *s_subtype ;
1809 char *s_options ;
1810 struct dentry_operations const *s_d_op ;
1811 int cleancache_poolid ;
1812 struct shrinker s_shrink ;
1813 atomic_long_t s_remove_count ;
1814 int s_readonly_remount ;
1815};
1816#line 1563 "include/linux/fs.h"
1817struct fiemap_extent_info {
1818 unsigned int fi_flags ;
1819 unsigned int fi_extents_mapped ;
1820 unsigned int fi_extents_max ;
1821 struct fiemap_extent *fi_extents_start ;
1822};
1823#line 1602 "include/linux/fs.h"
1824struct file_operations {
1825 struct module *owner ;
1826 loff_t (*llseek)(struct file * , loff_t , int ) ;
1827 ssize_t (*read)(struct file * , char * , size_t , loff_t * ) ;
1828 ssize_t (*write)(struct file * , char const * , size_t , loff_t * ) ;
1829 ssize_t (*aio_read)(struct kiocb * , struct iovec const * , unsigned long ,
1830 loff_t ) ;
1831 ssize_t (*aio_write)(struct kiocb * , struct iovec const * , unsigned long ,
1832 loff_t ) ;
1833 int (*readdir)(struct file * , void * , int (*)(void * , char const * , int ,
1834 loff_t , u64 , unsigned int ) ) ;
1835 unsigned int (*poll)(struct file * , struct poll_table_struct * ) ;
1836 long (*unlocked_ioctl)(struct file * , unsigned int , unsigned long ) ;
1837 long (*compat_ioctl)(struct file * , unsigned int , unsigned long ) ;
1838 int (*mmap)(struct file * , struct vm_area_struct * ) ;
1839 int (*open)(struct inode * , struct file * ) ;
1840 int (*flush)(struct file * , fl_owner_t ) ;
1841 int (*release)(struct inode * , struct file * ) ;
1842 int (*fsync)(struct file * , loff_t , loff_t , int ) ;
1843 int (*aio_fsync)(struct kiocb * , int ) ;
1844 int (*fasync)(int , struct file * , int ) ;
1845 int (*lock)(struct file * , int , struct file_lock * ) ;
1846 ssize_t (*sendpage)(struct file * , struct page * , int , size_t , loff_t * ,
1847 int ) ;
1848 unsigned long (*get_unmapped_area)(struct file * , unsigned long , unsigned long ,
1849 unsigned long , unsigned long ) ;
1850 int (*check_flags)(int ) ;
1851 int (*flock)(struct file * , int , struct file_lock * ) ;
1852 ssize_t (*splice_write)(struct pipe_inode_info * , struct file * , loff_t * , size_t ,
1853 unsigned int ) ;
1854 ssize_t (*splice_read)(struct file * , loff_t * , struct pipe_inode_info * , size_t ,
1855 unsigned int ) ;
1856 int (*setlease)(struct file * , long , struct file_lock ** ) ;
1857 long (*fallocate)(struct file * , int , loff_t , loff_t ) ;
1858};
1859#line 1637 "include/linux/fs.h"
1860struct inode_operations {
1861 struct dentry *(*lookup)(struct inode * , struct dentry * , struct nameidata * ) ;
1862 void *(*follow_link)(struct dentry * , struct nameidata * ) ;
1863 int (*permission)(struct inode * , int ) ;
1864 struct posix_acl *(*get_acl)(struct inode * , int ) ;
1865 int (*readlink)(struct dentry * , char * , int ) ;
1866 void (*put_link)(struct dentry * , struct nameidata * , void * ) ;
1867 int (*create)(struct inode * , struct dentry * , umode_t , struct nameidata * ) ;
1868 int (*link)(struct dentry * , struct inode * , struct dentry * ) ;
1869 int (*unlink)(struct inode * , struct dentry * ) ;
1870 int (*symlink)(struct inode * , struct dentry * , char const * ) ;
1871 int (*mkdir)(struct inode * , struct dentry * , umode_t ) ;
1872 int (*rmdir)(struct inode * , struct dentry * ) ;
1873 int (*mknod)(struct inode * , struct dentry * , umode_t , dev_t ) ;
1874 int (*rename)(struct inode * , struct dentry * , struct inode * , struct dentry * ) ;
1875 void (*truncate)(struct inode * ) ;
1876 int (*setattr)(struct dentry * , struct iattr * ) ;
1877 int (*getattr)(struct vfsmount * , struct dentry * , struct kstat * ) ;
1878 int (*setxattr)(struct dentry * , char const * , void const * , size_t , int ) ;
1879 ssize_t (*getxattr)(struct dentry * , char const * , void * , size_t ) ;
1880 ssize_t (*listxattr)(struct dentry * , char * , size_t ) ;
1881 int (*removexattr)(struct dentry * , char const * ) ;
1882 void (*truncate_range)(struct inode * , loff_t , loff_t ) ;
1883 int (*fiemap)(struct inode * , struct fiemap_extent_info * , u64 , u64 ) ;
1884};
1885#line 1682 "include/linux/fs.h"
1886struct super_operations {
1887 struct inode *(*alloc_inode)(struct super_block * ) ;
1888 void (*destroy_inode)(struct inode * ) ;
1889 void (*dirty_inode)(struct inode * , int ) ;
1890 int (*write_inode)(struct inode * , struct writeback_control * ) ;
1891 int (*drop_inode)(struct inode * ) ;
1892 void (*evict_inode)(struct inode * ) ;
1893 void (*put_super)(struct super_block * ) ;
1894 void (*write_super)(struct super_block * ) ;
1895 int (*sync_fs)(struct super_block * , int ) ;
1896 int (*freeze_fs)(struct super_block * ) ;
1897 int (*unfreeze_fs)(struct super_block * ) ;
1898 int (*statfs)(struct dentry * , struct kstatfs * ) ;
1899 int (*remount_fs)(struct super_block * , int * , char * ) ;
1900 void (*umount_begin)(struct super_block * ) ;
1901 int (*show_options)(struct seq_file * , struct dentry * ) ;
1902 int (*show_devname)(struct seq_file * , struct dentry * ) ;
1903 int (*show_path)(struct seq_file * , struct dentry * ) ;
1904 int (*show_stats)(struct seq_file * , struct dentry * ) ;
1905 ssize_t (*quota_read)(struct super_block * , int , char * , size_t , loff_t ) ;
1906 ssize_t (*quota_write)(struct super_block * , int , char const * , size_t ,
1907 loff_t ) ;
1908 int (*bdev_try_to_free_page)(struct super_block * , struct page * , gfp_t ) ;
1909 int (*nr_cached_objects)(struct super_block * ) ;
1910 void (*free_cached_objects)(struct super_block * , int ) ;
1911};
1912#line 1834 "include/linux/fs.h"
1913struct file_system_type {
1914 char const *name ;
1915 int fs_flags ;
1916 struct dentry *(*mount)(struct file_system_type * , int , char const * , void * ) ;
1917 void (*kill_sb)(struct super_block * ) ;
1918 struct module *owner ;
1919 struct file_system_type *next ;
1920 struct hlist_head fs_supers ;
1921 struct lock_class_key s_lock_key ;
1922 struct lock_class_key s_umount_key ;
1923 struct lock_class_key s_vfs_rename_key ;
1924 struct lock_class_key i_lock_key ;
1925 struct lock_class_key i_mutex_key ;
1926 struct lock_class_key i_mutex_dir_key ;
1927};
1928#line 34 "include/linux/poll.h"
1929struct poll_table_struct {
1930 void (*_qproc)(struct file * , wait_queue_head_t * , struct poll_table_struct * ) ;
1931 unsigned long _key ;
1932};
1933#line 79 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/uv/bios.h"
1934enum uv_memprotect {
1935 UV_MEMPROT_RESTRICT_ACCESS = 0,
1936 UV_MEMPROT_ALLOW_AMO = 1,
1937 UV_MEMPROT_ALLOW_RW = 2
1938} ;
1939#line 2 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/12522/dscv_tempdir/dscv/ri/43_1a/drivers/misc/sgi-xp/xp_main.c.p"
1940void ldv_spin_lock(void) ;
1941#line 3
1942void ldv_spin_unlock(void) ;
1943#line 4
1944int ldv_spin_trylock(void) ;
1945#line 115 "include/linux/mutex.h"
1946extern void __mutex_init(struct mutex * , char const * , struct lock_class_key * ) ;
1947#line 134
1948extern void mutex_lock_nested(struct mutex * , unsigned int ) ;
1949#line 136
1950extern int mutex_lock_interruptible_nested(struct mutex * , unsigned int ) ;
1951#line 169
1952extern void mutex_unlock(struct mutex * ) ;
1953#line 220 "include/linux/slub_def.h"
1954extern void *kmem_cache_alloc(struct kmem_cache * , gfp_t ) ;
1955#line 223
1956void *ldv_kmem_cache_alloc_16(struct kmem_cache *ldv_func_arg1 , gfp_t ldv_func_arg2 ) ;
1957#line 11 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/12522/dscv_tempdir/dscv/ri/43_1a/drivers/misc/sgi-xp/xp_main.c.p"
1958void ldv_check_alloc_flags(gfp_t flags ) ;
1959#line 12
1960void ldv_check_alloc_nonatomic(void) ;
1961#line 14
1962struct page *ldv_check_alloc_flags_and_return_some_page(gfp_t flags ) ;
1963#line 12 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/uv/uv.h"
1964extern int is_uv_system(void) ;
1965#line 293 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/drivers/misc/sgi-xp/xp.h"
1966struct xpc_interface xpc_interface ;
1967#line 295
1968void xpc_set_interface(void (*connect)(int ) , void (*disconnect)(int ) , enum xp_retval (*send)(short ,
1969 int ,
1970 u32 ,
1971 void * ,
1972 u16 ) ,
1973 enum xp_retval (*send_notify)(short , int , u32 , void * ,
1974 u16 , void (*)(enum xp_retval ,
1975 short , int ,
1976 void * ) , void * ) ,
1977 void (*received)(short , int , void * ) , enum xp_retval (*partid_to_nasids)(short ,
1978 void * ) ) ;
1979#line 302
1980void xpc_clear_interface(void) ;
1981#line 304
1982enum xp_retval xpc_connect(int ch_number , void (*func)(enum xp_retval , short ,
1983 int , void * , void * ) ,
1984 void *key , u16 payload_size , u16 nentries , u32 assigned_limit ,
1985 u32 idle_limit ) ;
1986#line 306
1987void xpc_disconnect(int ch_number ) ;
1988#line 336 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/drivers/misc/sgi-xp/xp.h"
1989short xp_max_npartitions ;
1990#line 337 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/drivers/misc/sgi-xp/xp.h"
1991short xp_partition_id ;
1992#line 338 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/drivers/misc/sgi-xp/xp.h"
1993u8 xp_region_size ;
1994#line 340 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/drivers/misc/sgi-xp/xp.h"
1995unsigned long (*xp_pa)(void * ) ;
1996#line 341 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/drivers/misc/sgi-xp/xp.h"
1997unsigned long (*xp_socket_pa)(unsigned long ) ;
1998#line 342 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/drivers/misc/sgi-xp/xp.h"
1999enum xp_retval (*xp_remote_memcpy)(unsigned long , unsigned long const , size_t ) ;
2000#line 344 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/drivers/misc/sgi-xp/xp.h"
2001int (*xp_cpu_to_nasid)(int ) ;
2002#line 345 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/drivers/misc/sgi-xp/xp.h"
2003enum xp_retval (*xp_expand_memprotect)(unsigned long , unsigned long ) ;
2004#line 346 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/drivers/misc/sgi-xp/xp.h"
2005enum xp_retval (*xp_restrict_memprotect)(unsigned long , unsigned long ) ;
2006#line 352
2007struct device *xp ;
2008#line 354
2009enum xp_retval xp_init_uv(void) ;
2010#line 356
2011void xp_exit_uv(void) ;
2012#line 38 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/12522/dscv_tempdir/dscv/ri/43_1a/drivers/misc/sgi-xp/xp_main.c.p"
2013struct device_driver xp_dbg_name =
2014#line 38 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/12522/dscv_tempdir/dscv/ri/43_1a/drivers/misc/sgi-xp/xp_main.c.p"
2015 {"xp", (struct bus_type *)0, (struct module *)0, (char const *)0, (_Bool)0, (struct of_device_id const *)0,
2016 (int (*)(struct device * ))0, (int (*)(struct device * ))0, (void (*)(struct device * ))0,
2017 (int (*)(struct device * , pm_message_t ))0, (int (*)(struct device * ))0, (struct attribute_group const **)0,
2018 (struct dev_pm_ops const *)0, (struct driver_private *)0};
2019#line 42 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/12522/dscv_tempdir/dscv/ri/43_1a/drivers/misc/sgi-xp/xp_main.c.p"
2020struct device xp_dbg_subname =
2021#line 42
2022 {(struct device *)0, (struct device_private *)0, {(char const *)0, {(struct list_head *)0,
2023 (struct list_head *)0},
2024 (struct kobject *)0, (struct kset *)0,
2025 (struct kobj_type *)0, (struct sysfs_dirent *)0,
2026 {{0}}, (unsigned char)0, (unsigned char)0,
2027 (unsigned char)0, (unsigned char)0,
2028 (unsigned char)0}, "", (struct device_type const *)0,
2029 {{0}, {{{{{0U}}, 0U, 0U, (void *)0, {(struct lock_class_key *)0, {(struct lock_class *)0,
2030 (struct lock_class *)0},
2031 (char const *)0, 0, 0UL}}}}, {(struct list_head *)0,
2032 (struct list_head *)0},
2033 (struct task_struct *)0, (char const *)0, (void *)0, {(struct lock_class_key *)0,
2034 {(struct lock_class *)0,
2035 (struct lock_class *)0},
2036 (char const *)0, 0,
2037 0UL}}, (struct bus_type *)0,
2038 & xp_dbg_name, (void *)0, {{0}, (unsigned char)0, (unsigned char)0, (_Bool)0,
2039 (_Bool)0, (_Bool)0, {{{{{0U}}, 0U, 0U, (void *)0, {(struct lock_class_key *)0,
2040 {(struct lock_class *)0,
2041 (struct lock_class *)0},
2042 (char const *)0,
2043 0,
2044 0UL}}}},
2045 {(struct list_head *)0, (struct list_head *)0}, {0U,
2046 {{{{{{0U}},
2047 0U,
2048 0U,
2049 (void *)0,
2050 {(struct lock_class_key *)0,
2051 {(struct lock_class *)0,
2052 (struct lock_class *)0},
2053 (char const *)0,
2054 0,
2055 0UL}}}},
2056 {(struct list_head *)0,
2057 (struct list_head *)0}}},
2058 (struct wakeup_source *)0, (_Bool)0, {{(struct list_head *)0,
2059 (struct list_head *)0},
2060 0UL, (struct tvec_base *)0,
2061 (void (*)(unsigned long ))0,
2062 0UL, 0, 0, (void *)0,
2063 {(char)0, (char)0,
2064 (char)0, (char)0,
2065 (char)0, (char)0,
2066 (char)0, (char)0,
2067 (char)0, (char)0,
2068 (char)0, (char)0,
2069 (char)0, (char)0,
2070 (char)0, (char)0},
2071 {(struct lock_class_key *)0,
2072 {(struct lock_class *)0,
2073 (struct lock_class *)0},
2074 (char const *)0,
2075 0, 0UL}}, 0UL,
2076 {{0L}, {(struct list_head *)0, (struct list_head *)0},
2077 (void (*)(struct work_struct * ))0, {(struct lock_class_key *)0,
2078 {(struct lock_class *)0,
2079 (struct lock_class *)0},
2080 (char const *)0,
2081 0, 0UL}}, {{{{{{0U}},
2082 0U,
2083 0U,
2084 (void *)0,
2085 {(struct lock_class_key *)0,
2086 {(struct lock_class *)0,
2087 (struct lock_class *)0},
2088 (char const *)0,
2089 0,
2090 0UL}}}},
2091 {(struct list_head *)0,
2092 (struct list_head *)0}},
2093 {0}, {0}, (unsigned char)0, (unsigned char)0, (unsigned char)0,
2094 (unsigned char)0, (unsigned char)0, (unsigned char)0,
2095 (unsigned char)0, (unsigned char)0, (unsigned char)0,
2096 (unsigned char)0, 0, 0, 0, 0, 0UL, 0UL, 0UL, 0UL, {0LL},
2097 0LL, (struct dev_pm_qos_request *)0, (struct pm_subsys_data *)0,
2098 (struct pm_qos_constraints *)0}, (struct dev_pm_domain *)0,
2099 0, (u64 *)0, 0ULL, (struct device_dma_parameters *)0, {(struct list_head *)0,
2100 (struct list_head *)0},
2101 (struct dma_coherent_mem *)0, {(void *)0, (struct dma_map_ops *)0, (void *)0},
2102 (struct device_node *)0, 0U, 0U, {{{{{0U}}, 0U, 0U, (void *)0, {(struct lock_class_key *)0,
2103 {(struct lock_class *)0,
2104 (struct lock_class *)0},
2105 (char const *)0,
2106 0, 0UL}}}}, {(struct list_head *)0,
2107 (struct list_head *)0},
2108 {(void *)0, {(struct list_head *)0, (struct list_head *)0}, {{0}}}, (struct class *)0,
2109 (struct attribute_group const **)0, (void (*)(struct device * ))0};
2110#line 47 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/12522/dscv_tempdir/dscv/ri/43_1a/drivers/misc/sgi-xp/xp_main.c.p"
2111struct device *xp = & xp_dbg_subname;
2112#line 83 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/12522/dscv_tempdir/dscv/ri/43_1a/drivers/misc/sgi-xp/xp_main.c.p"
2113struct xpc_registration xpc_registrations[2U] ;
2114#line 90 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/12522/dscv_tempdir/dscv/ri/43_1a/drivers/misc/sgi-xp/xp_main.c.p"
2115static enum xp_retval xpc_notloaded(void)
2116{
2117
2118 {
2119#line 92
2120 return ((enum xp_retval )18);
2121}
2122}
2123#line 95 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/12522/dscv_tempdir/dscv/ri/43_1a/drivers/misc/sgi-xp/xp_main.c.p"
2124struct xpc_interface xpc_interface = {(void (*)(int ))(& xpc_notloaded), (void (*)(int ))(& xpc_notloaded), (enum xp_retval (*)(short ,
2125 int ,
2126 u32 ,
2127 void * ,
2128 u16 ))(& xpc_notloaded),
2129 (enum xp_retval (*)(short , int , u32 , void * , u16 , void (*)(enum xp_retval ,
2130 short , int ,
2131 void * ) ,
2132 void * ))(& xpc_notloaded), (void (*)(short , int , void * ))(& xpc_notloaded),
2133 (enum xp_retval (*)(short , void * ))(& xpc_notloaded)};
2134#line 110 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/12522/dscv_tempdir/dscv/ri/43_1a/drivers/misc/sgi-xp/xp_main.c.p"
2135void xpc_set_interface(void (*connect)(int ) , void (*disconnect)(int ) , enum xp_retval (*send)(short ,
2136 int ,
2137 u32 ,
2138 void * ,
2139 u16 ) ,
2140 enum xp_retval (*send_notify)(short , int , u32 , void * ,
2141 u16 , void (*)(enum xp_retval ,
2142 short , int ,
2143 void * ) , void * ) ,
2144 void (*received)(short , int , void * ) , enum xp_retval (*partid_to_nasids)(short ,
2145 void * ) )
2146{ struct xpc_interface *__cil_tmp7 ;
2147 unsigned long __cil_tmp8 ;
2148 unsigned long __cil_tmp9 ;
2149 unsigned long __cil_tmp10 ;
2150 unsigned long __cil_tmp11 ;
2151 unsigned long __cil_tmp12 ;
2152
2153 {
2154#line 118
2155 __cil_tmp7 = & xpc_interface;
2156#line 118
2157 *((void (**)(int ))__cil_tmp7) = connect;
2158#line 119
2159 __cil_tmp8 = (unsigned long )(& xpc_interface) + 8;
2160#line 119
2161 *((void (**)(int ))__cil_tmp8) = disconnect;
2162#line 120
2163 __cil_tmp9 = (unsigned long )(& xpc_interface) + 16;
2164#line 120
2165 *((enum xp_retval (**)(short , int , u32 , void * , u16 ))__cil_tmp9) = send;
2166#line 121
2167 __cil_tmp10 = (unsigned long )(& xpc_interface) + 24;
2168#line 121
2169 *((enum xp_retval (**)(short , int , u32 , void * , u16 , void (*)(enum xp_retval ,
2170 short ,
2171 int , void * ) ,
2172 void * ))__cil_tmp10) = send_notify;
2173#line 122
2174 __cil_tmp11 = (unsigned long )(& xpc_interface) + 32;
2175#line 122
2176 *((void (**)(short , int , void * ))__cil_tmp11) = received;
2177#line 123
2178 __cil_tmp12 = (unsigned long )(& xpc_interface) + 40;
2179#line 123
2180 *((enum xp_retval (**)(short , void * ))__cil_tmp12) = partid_to_nasids;
2181#line 124
2182 return;
2183}
2184}
2185#line 131 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/12522/dscv_tempdir/dscv/ri/43_1a/drivers/misc/sgi-xp/xp_main.c.p"
2186void xpc_clear_interface(void)
2187{ struct xpc_interface *__cil_tmp1 ;
2188 unsigned long __cil_tmp2 ;
2189 unsigned long __cil_tmp3 ;
2190 unsigned long __cil_tmp4 ;
2191 unsigned long __cil_tmp5 ;
2192 unsigned long __cil_tmp6 ;
2193
2194 {
2195#line 133
2196 __cil_tmp1 = & xpc_interface;
2197#line 133
2198 *((void (**)(int ))__cil_tmp1) = (void (*)(int ))(& xpc_notloaded);
2199#line 134
2200 __cil_tmp2 = (unsigned long )(& xpc_interface) + 8;
2201#line 134
2202 *((void (**)(int ))__cil_tmp2) = (void (*)(int ))(& xpc_notloaded);
2203#line 135
2204 __cil_tmp3 = (unsigned long )(& xpc_interface) + 16;
2205#line 135
2206 *((enum xp_retval (**)(short , int , u32 , void * , u16 ))__cil_tmp3) = (enum xp_retval (*)(short ,
2207 int ,
2208 u32 ,
2209 void * ,
2210 u16 ))(& xpc_notloaded);
2211#line 137
2212 __cil_tmp4 = (unsigned long )(& xpc_interface) + 24;
2213#line 137
2214 *((enum xp_retval (**)(short , int , u32 , void * , u16 , void (*)(enum xp_retval ,
2215 short ,
2216 int , void * ) ,
2217 void * ))__cil_tmp4) = (enum xp_retval (*)(short , int ,
2218 u32 , void * ,
2219 u16 , void (*)(enum xp_retval ,
2220 short ,
2221 int ,
2222 void * ) ,
2223 void * ))(& xpc_notloaded);
2224#line 140
2225 __cil_tmp5 = (unsigned long )(& xpc_interface) + 32;
2226#line 140
2227 *((void (**)(short , int , void * ))__cil_tmp5) = (void (*)(short , int , void * ))(& xpc_notloaded);
2228#line 142
2229 __cil_tmp6 = (unsigned long )(& xpc_interface) + 40;
2230#line 142
2231 *((enum xp_retval (**)(short , void * ))__cil_tmp6) = (enum xp_retval (*)(short ,
2232 void * ))(& xpc_notloaded);
2233#line 144
2234 return;
2235}
2236}
2237#line 172 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/12522/dscv_tempdir/dscv/ri/43_1a/drivers/misc/sgi-xp/xp_main.c.p"
2238enum xp_retval xpc_connect(int ch_number , void (*func)(enum xp_retval , short ,
2239 int , void * , void * ) ,
2240 void *key , u16 payload_size , u16 nentries , u32 assigned_limit ,
2241 u32 idle_limit )
2242{ struct xpc_registration *registration ;
2243 int tmp___0 ;
2244 int tmp___1 ;
2245 int tmp___3 ;
2246 int tmp___4 ;
2247 int tmp___5 ;
2248 unsigned int tmp___7 ;
2249 int tmp___8 ;
2250 int tmp___10 ;
2251 int tmp___11 ;
2252 int __cil_tmp22 ;
2253 int __cil_tmp23 ;
2254 int __cil_tmp24 ;
2255 int __cil_tmp25 ;
2256 unsigned long __cil_tmp26 ;
2257 struct xpc_registration *__cil_tmp27 ;
2258 struct mutex *__cil_tmp28 ;
2259 void (*__cil_tmp29)(enum xp_retval , short , int , void * , void * ) ;
2260 unsigned long __cil_tmp30 ;
2261 unsigned long __cil_tmp31 ;
2262 unsigned long __cil_tmp32 ;
2263 void (*__cil_tmp33)(enum xp_retval , short , int , void * , void * ) ;
2264 unsigned long __cil_tmp34 ;
2265 struct mutex *__cil_tmp35 ;
2266 unsigned long __cil_tmp36 ;
2267 unsigned long __cil_tmp37 ;
2268 unsigned int __cil_tmp38 ;
2269 unsigned int __cil_tmp39 ;
2270 unsigned int __cil_tmp40 ;
2271 short __cil_tmp41 ;
2272 int __cil_tmp42 ;
2273 int __cil_tmp43 ;
2274 unsigned long __cil_tmp44 ;
2275 unsigned long __cil_tmp45 ;
2276 unsigned long __cil_tmp46 ;
2277 unsigned long __cil_tmp47 ;
2278 unsigned long __cil_tmp48 ;
2279 unsigned long __cil_tmp49 ;
2280 unsigned long __cil_tmp50 ;
2281 unsigned long __cil_tmp51 ;
2282 unsigned long __cil_tmp52 ;
2283 unsigned long __cil_tmp53 ;
2284 struct mutex *__cil_tmp54 ;
2285 struct xpc_interface *__cil_tmp55 ;
2286 void (*__cil_tmp56)(int ) ;
2287
2288 {
2289 {
2290#line 182
2291 tmp___1 = is_uv_system();
2292 }
2293#line 182
2294 if (tmp___1 != 0) {
2295#line 182
2296 tmp___0 = 63;
2297 } else {
2298#line 182
2299 tmp___0 = 127;
2300 }
2301 {
2302#line 182
2303 tmp___4 = is_uv_system();
2304 }
2305#line 182
2306 if (tmp___4 != 0) {
2307#line 182
2308 tmp___3 = -64;
2309 } else {
2310#line 182
2311 tmp___3 = -128;
2312 }
2313 {
2314#line 182
2315 __cil_tmp22 = (int )payload_size;
2316#line 182
2317 __cil_tmp23 = __cil_tmp22 + 16;
2318#line 182
2319 __cil_tmp24 = __cil_tmp23 + tmp___0;
2320#line 182
2321 __cil_tmp25 = __cil_tmp24 & tmp___3;
2322#line 182
2323 if (__cil_tmp25 > 128) {
2324#line 183
2325 return ((enum xp_retval )55);
2326 } else {
2327
2328 }
2329 }
2330 {
2331#line 185
2332 __cil_tmp26 = (unsigned long )ch_number;
2333#line 185
2334 __cil_tmp27 = (struct xpc_registration *)(& xpc_registrations);
2335#line 185
2336 registration = __cil_tmp27 + __cil_tmp26;
2337#line 187
2338 __cil_tmp28 = (struct mutex *)registration;
2339#line 187
2340 tmp___5 = mutex_lock_interruptible_nested(__cil_tmp28, 0U);
2341 }
2342#line 187
2343 if (tmp___5 != 0) {
2344#line 188
2345 return ((enum xp_retval )10);
2346 } else {
2347
2348 }
2349 {
2350#line 191
2351 __cil_tmp29 = (void (*)(enum xp_retval , short , int , void * , void * ))0;
2352#line 191
2353 __cil_tmp30 = (unsigned long )__cil_tmp29;
2354#line 191
2355 __cil_tmp31 = (unsigned long )registration;
2356#line 191
2357 __cil_tmp32 = __cil_tmp31 + 168;
2358#line 191
2359 __cil_tmp33 = *((void (**)(enum xp_retval , short , int , void * , void * ))__cil_tmp32);
2360#line 191
2361 __cil_tmp34 = (unsigned long )__cil_tmp33;
2362#line 191
2363 if (__cil_tmp34 != __cil_tmp30) {
2364 {
2365#line 192
2366 __cil_tmp35 = (struct mutex *)registration;
2367#line 192
2368 mutex_unlock(__cil_tmp35);
2369 }
2370#line 193
2371 return ((enum xp_retval )16);
2372 } else {
2373
2374 }
2375 }
2376 {
2377#line 197
2378 tmp___8 = is_uv_system();
2379 }
2380#line 197
2381 if (tmp___8 != 0) {
2382#line 197
2383 tmp___7 = 63U;
2384 } else {
2385#line 197
2386 tmp___7 = 127U;
2387 }
2388 {
2389#line 197
2390 tmp___11 = is_uv_system();
2391 }
2392#line 197
2393 if (tmp___11 != 0) {
2394#line 197
2395 tmp___10 = -64;
2396 } else {
2397#line 197
2398 tmp___10 = -128;
2399 }
2400 {
2401#line 197
2402 __cil_tmp36 = (unsigned long )registration;
2403#line 197
2404 __cil_tmp37 = __cil_tmp36 + 186;
2405#line 197
2406 __cil_tmp38 = (unsigned int )payload_size;
2407#line 197
2408 __cil_tmp39 = tmp___7 + __cil_tmp38;
2409#line 197
2410 __cil_tmp40 = __cil_tmp39 + 16U;
2411#line 197
2412 __cil_tmp41 = (short )__cil_tmp40;
2413#line 197
2414 __cil_tmp42 = (int )__cil_tmp41;
2415#line 197
2416 __cil_tmp43 = __cil_tmp42 & tmp___10;
2417#line 197
2418 *((u16 *)__cil_tmp37) = (u16 )__cil_tmp43;
2419#line 198
2420 __cil_tmp44 = (unsigned long )registration;
2421#line 198
2422 __cil_tmp45 = __cil_tmp44 + 184;
2423#line 198
2424 *((u16 *)__cil_tmp45) = nentries;
2425#line 199
2426 __cil_tmp46 = (unsigned long )registration;
2427#line 199
2428 __cil_tmp47 = __cil_tmp46 + 188;
2429#line 199
2430 *((u32 *)__cil_tmp47) = assigned_limit;
2431#line 200
2432 __cil_tmp48 = (unsigned long )registration;
2433#line 200
2434 __cil_tmp49 = __cil_tmp48 + 192;
2435#line 200
2436 *((u32 *)__cil_tmp49) = idle_limit;
2437#line 201
2438 __cil_tmp50 = (unsigned long )registration;
2439#line 201
2440 __cil_tmp51 = __cil_tmp50 + 176;
2441#line 201
2442 *((void **)__cil_tmp51) = key;
2443#line 202
2444 __cil_tmp52 = (unsigned long )registration;
2445#line 202
2446 __cil_tmp53 = __cil_tmp52 + 168;
2447#line 202
2448 *((void (**)(enum xp_retval , short , int , void * , void * ))__cil_tmp53) = func;
2449#line 204
2450 __cil_tmp54 = (struct mutex *)registration;
2451#line 204
2452 mutex_unlock(__cil_tmp54);
2453#line 206
2454 __cil_tmp55 = & xpc_interface;
2455#line 206
2456 __cil_tmp56 = *((void (**)(int ))__cil_tmp55);
2457#line 206
2458 (*__cil_tmp56)(ch_number);
2459 }
2460#line 208
2461 return ((enum xp_retval )0);
2462}
2463}
2464#line 226 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/12522/dscv_tempdir/dscv/ri/43_1a/drivers/misc/sgi-xp/xp_main.c.p"
2465void xpc_disconnect(int ch_number )
2466{ struct xpc_registration *registration ;
2467 unsigned long __cil_tmp3 ;
2468 struct xpc_registration *__cil_tmp4 ;
2469 struct mutex *__cil_tmp5 ;
2470 void (*__cil_tmp6)(enum xp_retval , short , int , void * , void * ) ;
2471 unsigned long __cil_tmp7 ;
2472 unsigned long __cil_tmp8 ;
2473 unsigned long __cil_tmp9 ;
2474 void (*__cil_tmp10)(enum xp_retval , short , int , void * , void * ) ;
2475 unsigned long __cil_tmp11 ;
2476 struct mutex *__cil_tmp12 ;
2477 unsigned long __cil_tmp13 ;
2478 unsigned long __cil_tmp14 ;
2479 unsigned long __cil_tmp15 ;
2480 unsigned long __cil_tmp16 ;
2481 unsigned long __cil_tmp17 ;
2482 unsigned long __cil_tmp18 ;
2483 unsigned long __cil_tmp19 ;
2484 unsigned long __cil_tmp20 ;
2485 unsigned long __cil_tmp21 ;
2486 unsigned long __cil_tmp22 ;
2487 unsigned long __cil_tmp23 ;
2488 unsigned long __cil_tmp24 ;
2489 unsigned long __cil_tmp25 ;
2490 void (*__cil_tmp26)(int ) ;
2491 struct mutex *__cil_tmp27 ;
2492
2493 {
2494 {
2495#line 232
2496 __cil_tmp3 = (unsigned long )ch_number;
2497#line 232
2498 __cil_tmp4 = (struct xpc_registration *)(& xpc_registrations);
2499#line 232
2500 registration = __cil_tmp4 + __cil_tmp3;
2501#line 239
2502 __cil_tmp5 = (struct mutex *)registration;
2503#line 239
2504 mutex_lock_nested(__cil_tmp5, 0U);
2505 }
2506 {
2507#line 242
2508 __cil_tmp6 = (void (*)(enum xp_retval , short , int , void * , void * ))0;
2509#line 242
2510 __cil_tmp7 = (unsigned long )__cil_tmp6;
2511#line 242
2512 __cil_tmp8 = (unsigned long )registration;
2513#line 242
2514 __cil_tmp9 = __cil_tmp8 + 168;
2515#line 242
2516 __cil_tmp10 = *((void (**)(enum xp_retval , short , int , void * , void * ))__cil_tmp9);
2517#line 242
2518 __cil_tmp11 = (unsigned long )__cil_tmp10;
2519#line 242
2520 if (__cil_tmp11 == __cil_tmp7) {
2521 {
2522#line 243
2523 __cil_tmp12 = (struct mutex *)registration;
2524#line 243
2525 mutex_unlock(__cil_tmp12);
2526 }
2527#line 244
2528 return;
2529 } else {
2530
2531 }
2532 }
2533 {
2534#line 248
2535 __cil_tmp13 = (unsigned long )registration;
2536#line 248
2537 __cil_tmp14 = __cil_tmp13 + 168;
2538#line 248
2539 *((void (**)(enum xp_retval , short , int , void * , void * ))__cil_tmp14) = (void (*)(enum xp_retval ,
2540 short ,
2541 int ,
2542 void * ,
2543 void * ))0;
2544#line 249
2545 __cil_tmp15 = (unsigned long )registration;
2546#line 249
2547 __cil_tmp16 = __cil_tmp15 + 176;
2548#line 249
2549 *((void **)__cil_tmp16) = (void *)0;
2550#line 250
2551 __cil_tmp17 = (unsigned long )registration;
2552#line 250
2553 __cil_tmp18 = __cil_tmp17 + 184;
2554#line 250
2555 *((u16 *)__cil_tmp18) = (u16 )0U;
2556#line 251
2557 __cil_tmp19 = (unsigned long )registration;
2558#line 251
2559 __cil_tmp20 = __cil_tmp19 + 186;
2560#line 251
2561 *((u16 *)__cil_tmp20) = (u16 )0U;
2562#line 252
2563 __cil_tmp21 = (unsigned long )registration;
2564#line 252
2565 __cil_tmp22 = __cil_tmp21 + 188;
2566#line 252
2567 *((u32 *)__cil_tmp22) = 0U;
2568#line 253
2569 __cil_tmp23 = (unsigned long )registration;
2570#line 253
2571 __cil_tmp24 = __cil_tmp23 + 192;
2572#line 253
2573 *((u32 *)__cil_tmp24) = 0U;
2574#line 255
2575 __cil_tmp25 = (unsigned long )(& xpc_interface) + 8;
2576#line 255
2577 __cil_tmp26 = *((void (**)(int ))__cil_tmp25);
2578#line 255
2579 (*__cil_tmp26)(ch_number);
2580#line 257
2581 __cil_tmp27 = (struct mutex *)registration;
2582#line 257
2583 mutex_unlock(__cil_tmp27);
2584 }
2585#line 259
2586 return;
2587}
2588}
2589#line 264 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/12522/dscv_tempdir/dscv/ri/43_1a/drivers/misc/sgi-xp/xp_main.c.p"
2590int xp_init(void)
2591{ enum xp_retval ret ;
2592 int ch_number ;
2593 struct lock_class_key __key ;
2594 int tmp ;
2595 unsigned long __cil_tmp5 ;
2596 unsigned long __cil_tmp6 ;
2597 struct mutex *__cil_tmp7 ;
2598 unsigned int __cil_tmp8 ;
2599
2600 {
2601#line 270
2602 ch_number = 0;
2603#line 270
2604 goto ldv_15344;
2605 ldv_15343:
2606 {
2607#line 271
2608 __cil_tmp5 = ch_number * 200UL;
2609#line 271
2610 __cil_tmp6 = (unsigned long )(xpc_registrations) + __cil_tmp5;
2611#line 271
2612 __cil_tmp7 = (struct mutex *)__cil_tmp6;
2613#line 271
2614 __mutex_init(__cil_tmp7, "&xpc_registrations[ch_number].mutex", & __key);
2615#line 270
2616 ch_number = ch_number + 1;
2617 }
2618 ldv_15344: ;
2619#line 270
2620 if (ch_number <= 1) {
2621#line 271
2622 goto ldv_15343;
2623 } else {
2624#line 273
2625 goto ldv_15345;
2626 }
2627 ldv_15345:
2628 {
2629#line 275
2630 tmp = is_uv_system();
2631 }
2632#line 275
2633 if (tmp != 0) {
2634 {
2635#line 276
2636 ret = xp_init_uv();
2637 }
2638 } else {
2639#line 278
2640 ret = (enum xp_retval )0;
2641 }
2642 {
2643#line 280
2644 __cil_tmp8 = (unsigned int )ret;
2645#line 280
2646 if (__cil_tmp8 != 0U) {
2647#line 281
2648 return ((int )ret);
2649 } else {
2650
2651 }
2652 }
2653#line 283
2654 return (0);
2655}
2656}
2657#line 289 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/12522/dscv_tempdir/dscv/ri/43_1a/drivers/misc/sgi-xp/xp_main.c.p"
2658void xp_exit(void)
2659{ int tmp ;
2660
2661 {
2662 {
2663#line 293
2664 tmp = is_uv_system();
2665 }
2666#line 293
2667 if (tmp != 0) {
2668 {
2669#line 294
2670 xp_exit_uv();
2671 }
2672 } else {
2673
2674 }
2675#line 295
2676 return;
2677}
2678}
2679#line 319
2680extern void ldv_check_final_state(void) ;
2681#line 325
2682extern void ldv_initialize(void) ;
2683#line 328
2684extern int __VERIFIER_nondet_int(void) ;
2685#line 331 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/12522/dscv_tempdir/dscv/ri/43_1a/drivers/misc/sgi-xp/xp_main.c.p"
2686int LDV_IN_INTERRUPT ;
2687#line 334 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/12522/dscv_tempdir/dscv/ri/43_1a/drivers/misc/sgi-xp/xp_main.c.p"
2688void main(void)
2689{ int tmp ;
2690 int tmp___0 ;
2691 int tmp___1 ;
2692
2693 {
2694 {
2695#line 346
2696 LDV_IN_INTERRUPT = 1;
2697#line 355
2698 ldv_initialize();
2699#line 361
2700 tmp = xp_init();
2701 }
2702#line 361
2703 if (tmp != 0) {
2704#line 362
2705 goto ldv_final;
2706 } else {
2707
2708 }
2709#line 364
2710 goto ldv_15378;
2711 ldv_15377:
2712 {
2713#line 367
2714 tmp___0 = __VERIFIER_nondet_int();
2715 }
2716 {
2717#line 369
2718 goto switch_default;
2719#line 367
2720 if (0) {
2721 switch_default: ;
2722#line 369
2723 goto ldv_15376;
2724 } else {
2725 switch_break: ;
2726 }
2727 }
2728 ldv_15376: ;
2729 ldv_15378:
2730 {
2731#line 364
2732 tmp___1 = __VERIFIER_nondet_int();
2733 }
2734#line 364
2735 if (tmp___1 != 0) {
2736#line 365
2737 goto ldv_15377;
2738 } else {
2739#line 367
2740 goto ldv_15379;
2741 }
2742 ldv_15379: ;
2743 {
2744#line 381
2745 xp_exit();
2746 }
2747 ldv_final:
2748 {
2749#line 384
2750 ldv_check_final_state();
2751 }
2752#line 387
2753 return;
2754}
2755}
2756#line 5 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/12522/dscv_tempdir/dscv/ri/43_1a/kernel-rules/files/engine-blast-assert.h"
2757void ldv_blast_assert(void)
2758{
2759
2760 {
2761 ERROR: ;
2762#line 6
2763 goto ERROR;
2764}
2765}
2766#line 6 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/12522/dscv_tempdir/dscv/ri/43_1a/kernel-rules/files/engine-blast.h"
2767extern int __VERIFIER_nondet_int(void) ;
2768#line 408 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/12522/dscv_tempdir/dscv/ri/43_1a/drivers/misc/sgi-xp/xp_main.c.p"
2769int ldv_spin = 0;
2770#line 412 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/12522/dscv_tempdir/dscv/ri/43_1a/drivers/misc/sgi-xp/xp_main.c.p"
2771void ldv_check_alloc_flags(gfp_t flags )
2772{
2773
2774 {
2775#line 415
2776 if (ldv_spin != 0) {
2777#line 415
2778 if (flags != 32U) {
2779 {
2780#line 415
2781 ldv_blast_assert();
2782 }
2783 } else {
2784
2785 }
2786 } else {
2787
2788 }
2789#line 418
2790 return;
2791}
2792}
2793#line 418
2794extern struct page *ldv_some_page(void) ;
2795#line 421 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/12522/dscv_tempdir/dscv/ri/43_1a/drivers/misc/sgi-xp/xp_main.c.p"
2796struct page *ldv_check_alloc_flags_and_return_some_page(gfp_t flags )
2797{ struct page *tmp ;
2798
2799 {
2800#line 424
2801 if (ldv_spin != 0) {
2802#line 424
2803 if (flags != 32U) {
2804 {
2805#line 424
2806 ldv_blast_assert();
2807 }
2808 } else {
2809
2810 }
2811 } else {
2812
2813 }
2814 {
2815#line 426
2816 tmp = ldv_some_page();
2817 }
2818#line 426
2819 return (tmp);
2820}
2821}
2822#line 430 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/12522/dscv_tempdir/dscv/ri/43_1a/drivers/misc/sgi-xp/xp_main.c.p"
2823void ldv_check_alloc_nonatomic(void)
2824{
2825
2826 {
2827#line 433
2828 if (ldv_spin != 0) {
2829 {
2830#line 433
2831 ldv_blast_assert();
2832 }
2833 } else {
2834
2835 }
2836#line 436
2837 return;
2838}
2839}
2840#line 437 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/12522/dscv_tempdir/dscv/ri/43_1a/drivers/misc/sgi-xp/xp_main.c.p"
2841void ldv_spin_lock(void)
2842{
2843
2844 {
2845#line 440
2846 ldv_spin = 1;
2847#line 441
2848 return;
2849}
2850}
2851#line 444 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/12522/dscv_tempdir/dscv/ri/43_1a/drivers/misc/sgi-xp/xp_main.c.p"
2852void ldv_spin_unlock(void)
2853{
2854
2855 {
2856#line 447
2857 ldv_spin = 0;
2858#line 448
2859 return;
2860}
2861}
2862#line 451 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/12522/dscv_tempdir/dscv/ri/43_1a/drivers/misc/sgi-xp/xp_main.c.p"
2863int ldv_spin_trylock(void)
2864{ int is_lock ;
2865
2866 {
2867 {
2868#line 456
2869 is_lock = __VERIFIER_nondet_int();
2870 }
2871#line 458
2872 if (is_lock != 0) {
2873#line 461
2874 return (0);
2875 } else {
2876#line 466
2877 ldv_spin = 1;
2878#line 468
2879 return (1);
2880 }
2881}
2882}
2883#line 635 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/12522/dscv_tempdir/dscv/ri/43_1a/drivers/misc/sgi-xp/xp_main.c.p"
2884void *ldv_kmem_cache_alloc_16(struct kmem_cache *ldv_func_arg1 , gfp_t ldv_func_arg2 )
2885{
2886
2887 {
2888 {
2889#line 641
2890 ldv_check_alloc_flags(ldv_func_arg2);
2891#line 643
2892 kmem_cache_alloc(ldv_func_arg1, ldv_func_arg2);
2893 }
2894#line 644
2895 return ((void *)0);
2896}
2897}
2898#line 1 "<compiler builtins>"
2899long __builtin_expect(long , long ) ;
2900#line 61 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/page_64_types.h"
2901extern unsigned long __phys_addr(unsigned long ) ;
2902#line 540 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/percpu.h"
2903extern unsigned long this_cpu_off ;
2904#line 892 "include/linux/device.h"
2905extern int dev_err(struct device const * , char const * , ...) ;
2906#line 166 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/uv/uv_hub.h"
2907extern struct uv_hub_info_s __uv_hub_info ;
2908#line 294 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/uv/uv_hub.h"
2909__inline static unsigned long uv_soc_phys_ram_to_gpa(unsigned long paddr )
2910{ unsigned long tcp_ptr__ ;
2911 void const *__vpp_verify ;
2912 unsigned long tcp_ptr_____0 ;
2913 void const *__vpp_verify___0 ;
2914 unsigned long tcp_ptr_____1 ;
2915 void const *__vpp_verify___1 ;
2916 unsigned long tcp_ptr_____2 ;
2917 void const *__vpp_verify___2 ;
2918 unsigned long tcp_ptr_____3 ;
2919 void const *__vpp_verify___3 ;
2920 unsigned long tcp_ptr_____4 ;
2921 void const *__vpp_verify___4 ;
2922 unsigned long tcp_ptr_____5 ;
2923 void const *__vpp_verify___5 ;
2924 struct uv_hub_info_s *__cil_tmp16 ;
2925 unsigned long __cil_tmp17 ;
2926 unsigned long __cil_tmp18 ;
2927 unsigned long __cil_tmp19 ;
2928 struct uv_hub_info_s *__cil_tmp20 ;
2929 unsigned long __cil_tmp21 ;
2930 unsigned long __cil_tmp22 ;
2931 unsigned long __cil_tmp23 ;
2932 struct uv_hub_info_s *__cil_tmp24 ;
2933 unsigned long __cil_tmp25 ;
2934 unsigned long __cil_tmp26 ;
2935 unsigned long __cil_tmp27 ;
2936 struct uv_hub_info_s *__cil_tmp28 ;
2937 unsigned long __cil_tmp29 ;
2938 unsigned long __cil_tmp30 ;
2939 unsigned char __cil_tmp31 ;
2940 int __cil_tmp32 ;
2941 struct uv_hub_info_s *__cil_tmp33 ;
2942 unsigned long __cil_tmp34 ;
2943 unsigned long __cil_tmp35 ;
2944 unsigned char __cil_tmp36 ;
2945 int __cil_tmp37 ;
2946 unsigned long __cil_tmp38 ;
2947 unsigned long __cil_tmp39 ;
2948 struct uv_hub_info_s *__cil_tmp40 ;
2949 unsigned long __cil_tmp41 ;
2950 unsigned long __cil_tmp42 ;
2951 unsigned char __cil_tmp43 ;
2952 int __cil_tmp44 ;
2953 struct uv_hub_info_s *__cil_tmp45 ;
2954 unsigned long __cil_tmp46 ;
2955 unsigned long __cil_tmp47 ;
2956 unsigned char __cil_tmp48 ;
2957 int __cil_tmp49 ;
2958 unsigned long __cil_tmp50 ;
2959 unsigned long __cil_tmp51 ;
2960
2961 {
2962#line 296
2963 __vpp_verify___0 = (void const *)0;
2964#line 296
2965 __asm__ volatile ("add %%gs:%P1, %0": "=r" (tcp_ptr_____0): "m" (this_cpu_off),
2966 "0" (& __uv_hub_info));
2967 {
2968#line 296
2969 __cil_tmp16 = (struct uv_hub_info_s *)tcp_ptr_____0;
2970#line 296
2971 __cil_tmp17 = (unsigned long )__cil_tmp16;
2972#line 296
2973 __cil_tmp18 = __cil_tmp17 + 32;
2974#line 296
2975 __cil_tmp19 = *((unsigned long *)__cil_tmp18);
2976#line 296
2977 if (__cil_tmp19 > paddr) {
2978#line 297
2979 __vpp_verify = (void const *)0;
2980#line 297
2981 __asm__ volatile ("add %%gs:%P1, %0": "=r" (tcp_ptr__): "m" (this_cpu_off),
2982 "0" (& __uv_hub_info));
2983#line 297
2984 __cil_tmp20 = (struct uv_hub_info_s *)tcp_ptr__;
2985#line 297
2986 __cil_tmp21 = (unsigned long )__cil_tmp20;
2987#line 297
2988 __cil_tmp22 = __cil_tmp21 + 40;
2989#line 297
2990 __cil_tmp23 = *((unsigned long *)__cil_tmp22);
2991#line 297
2992 paddr = __cil_tmp23 | paddr;
2993 } else {
2994
2995 }
2996 }
2997#line 298
2998 __vpp_verify___1 = (void const *)0;
2999#line 298
3000 __asm__ volatile ("add %%gs:%P1, %0": "=r" (tcp_ptr_____1): "m" (this_cpu_off),
3001 "0" (& __uv_hub_info));
3002#line 298
3003 __cil_tmp24 = (struct uv_hub_info_s *)tcp_ptr_____1;
3004#line 298
3005 __cil_tmp25 = (unsigned long )__cil_tmp24;
3006#line 298
3007 __cil_tmp26 = __cil_tmp25 + 24;
3008#line 298
3009 __cil_tmp27 = *((unsigned long *)__cil_tmp26);
3010#line 298
3011 paddr = __cil_tmp27 | paddr;
3012#line 299
3013 __vpp_verify___2 = (void const *)0;
3014#line 299
3015 __asm__ volatile ("add %%gs:%P1, %0": "=r" (tcp_ptr_____2): "m" (this_cpu_off),
3016 "0" (& __uv_hub_info));
3017#line 299
3018 __vpp_verify___3 = (void const *)0;
3019#line 299
3020 __asm__ volatile ("add %%gs:%P1, %0": "=r" (tcp_ptr_____3): "m" (this_cpu_off),
3021 "0" (& __uv_hub_info));
3022#line 300
3023 __vpp_verify___4 = (void const *)0;
3024#line 300
3025 __asm__ volatile ("add %%gs:%P1, %0": "=r" (tcp_ptr_____4): "m" (this_cpu_off),
3026 "0" (& __uv_hub_info));
3027#line 300
3028 __vpp_verify___5 = (void const *)0;
3029#line 300
3030 __asm__ volatile ("add %%gs:%P1, %0": "=r" (tcp_ptr_____5): "m" (this_cpu_off),
3031 "0" (& __uv_hub_info));
3032#line 300
3033 __cil_tmp28 = (struct uv_hub_info_s *)tcp_ptr_____5;
3034#line 300
3035 __cil_tmp29 = (unsigned long )__cil_tmp28;
3036#line 300
3037 __cil_tmp30 = __cil_tmp29 + 23;
3038#line 300
3039 __cil_tmp31 = *((unsigned char *)__cil_tmp30);
3040#line 300
3041 __cil_tmp32 = (int )__cil_tmp31;
3042#line 300
3043 __cil_tmp33 = (struct uv_hub_info_s *)tcp_ptr_____4;
3044#line 300
3045 __cil_tmp34 = (unsigned long )__cil_tmp33;
3046#line 300
3047 __cil_tmp35 = __cil_tmp34 + 57;
3048#line 300
3049 __cil_tmp36 = *((unsigned char *)__cil_tmp35);
3050#line 300
3051 __cil_tmp37 = (int )__cil_tmp36;
3052#line 300
3053 __cil_tmp38 = paddr >> __cil_tmp37;
3054#line 300
3055 __cil_tmp39 = __cil_tmp38 << __cil_tmp32;
3056#line 300
3057 __cil_tmp40 = (struct uv_hub_info_s *)tcp_ptr_____3;
3058#line 300
3059 __cil_tmp41 = (unsigned long )__cil_tmp40;
3060#line 300
3061 __cil_tmp42 = __cil_tmp41 + 22;
3062#line 300
3063 __cil_tmp43 = *((unsigned char *)__cil_tmp42);
3064#line 300
3065 __cil_tmp44 = (int )__cil_tmp43;
3066#line 300
3067 __cil_tmp45 = (struct uv_hub_info_s *)tcp_ptr_____2;
3068#line 300
3069 __cil_tmp46 = (unsigned long )__cil_tmp45;
3070#line 300
3071 __cil_tmp47 = __cil_tmp46 + 22;
3072#line 300
3073 __cil_tmp48 = *((unsigned char *)__cil_tmp47);
3074#line 300
3075 __cil_tmp49 = (int )__cil_tmp48;
3076#line 300
3077 __cil_tmp50 = paddr << __cil_tmp49;
3078#line 300
3079 __cil_tmp51 = __cil_tmp50 >> __cil_tmp44;
3080#line 300
3081 paddr = __cil_tmp51 | __cil_tmp39;
3082#line 301
3083 return (paddr);
3084}
3085}
3086#line 306 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/uv/uv_hub.h"
3087__inline static unsigned long uv_gpa(void *v )
3088{ unsigned long tmp ;
3089 unsigned long tmp___0 ;
3090 unsigned long __cil_tmp4 ;
3091
3092 {
3093 {
3094#line 308
3095 __cil_tmp4 = (unsigned long )v;
3096#line 308
3097 tmp = __phys_addr(__cil_tmp4);
3098#line 308
3099 tmp___0 = uv_soc_phys_ram_to_gpa(tmp);
3100 }
3101#line 308
3102 return (tmp___0);
3103}
3104}
3105#line 313 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/uv/uv_hub.h"
3106__inline static int uv_gpa_in_mmr_space(unsigned long gpa )
3107{ unsigned long __cil_tmp2 ;
3108
3109 {
3110 {
3111#line 315
3112 __cil_tmp2 = gpa >> 62;
3113#line 315
3114 return (__cil_tmp2 == 3UL);
3115 }
3116}
3117}
3118#line 319 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/uv/uv_hub.h"
3119__inline static unsigned long uv_gpa_to_soc_phys_ram(unsigned long gpa )
3120{ unsigned long paddr ;
3121 unsigned long remap_base ;
3122 unsigned long tcp_ptr__ ;
3123 void const *__vpp_verify ;
3124 unsigned long remap_top ;
3125 unsigned long tcp_ptr_____0 ;
3126 void const *__vpp_verify___0 ;
3127 unsigned long tcp_ptr_____1 ;
3128 void const *__vpp_verify___1 ;
3129 unsigned long tcp_ptr_____2 ;
3130 void const *__vpp_verify___2 ;
3131 unsigned long tcp_ptr_____3 ;
3132 void const *__vpp_verify___3 ;
3133 unsigned long tcp_ptr_____4 ;
3134 void const *__vpp_verify___4 ;
3135 unsigned long tcp_ptr_____5 ;
3136 void const *__vpp_verify___5 ;
3137 struct uv_hub_info_s *__cil_tmp19 ;
3138 unsigned long __cil_tmp20 ;
3139 unsigned long __cil_tmp21 ;
3140 struct uv_hub_info_s *__cil_tmp22 ;
3141 unsigned long __cil_tmp23 ;
3142 unsigned long __cil_tmp24 ;
3143 struct uv_hub_info_s *__cil_tmp25 ;
3144 unsigned long __cil_tmp26 ;
3145 unsigned long __cil_tmp27 ;
3146 unsigned char __cil_tmp28 ;
3147 int __cil_tmp29 ;
3148 struct uv_hub_info_s *__cil_tmp30 ;
3149 unsigned long __cil_tmp31 ;
3150 unsigned long __cil_tmp32 ;
3151 unsigned char __cil_tmp33 ;
3152 int __cil_tmp34 ;
3153 unsigned long __cil_tmp35 ;
3154 unsigned long __cil_tmp36 ;
3155 struct uv_hub_info_s *__cil_tmp37 ;
3156 unsigned long __cil_tmp38 ;
3157 unsigned long __cil_tmp39 ;
3158 unsigned char __cil_tmp40 ;
3159 int __cil_tmp41 ;
3160 struct uv_hub_info_s *__cil_tmp42 ;
3161 unsigned long __cil_tmp43 ;
3162 unsigned long __cil_tmp44 ;
3163 unsigned char __cil_tmp45 ;
3164 int __cil_tmp46 ;
3165 unsigned long __cil_tmp47 ;
3166 unsigned long __cil_tmp48 ;
3167 struct uv_hub_info_s *__cil_tmp49 ;
3168 unsigned long __cil_tmp50 ;
3169 unsigned long __cil_tmp51 ;
3170 unsigned long __cil_tmp52 ;
3171 unsigned long __cil_tmp53 ;
3172
3173 {
3174#line 322
3175 __vpp_verify = (void const *)0;
3176#line 322
3177 __asm__ volatile ("add %%gs:%P1, %0": "=r" (tcp_ptr__): "m" (this_cpu_off), "0" (& __uv_hub_info));
3178#line 322
3179 __cil_tmp19 = (struct uv_hub_info_s *)tcp_ptr__;
3180#line 322
3181 __cil_tmp20 = (unsigned long )__cil_tmp19;
3182#line 322
3183 __cil_tmp21 = __cil_tmp20 + 40;
3184#line 322
3185 remap_base = *((unsigned long *)__cil_tmp21);
3186#line 323
3187 __vpp_verify___0 = (void const *)0;
3188#line 323
3189 __asm__ volatile ("add %%gs:%P1, %0": "=r" (tcp_ptr_____0): "m" (this_cpu_off),
3190 "0" (& __uv_hub_info));
3191#line 323
3192 __cil_tmp22 = (struct uv_hub_info_s *)tcp_ptr_____0;
3193#line 323
3194 __cil_tmp23 = (unsigned long )__cil_tmp22;
3195#line 323
3196 __cil_tmp24 = __cil_tmp23 + 32;
3197#line 323
3198 remap_top = *((unsigned long *)__cil_tmp24);
3199#line 325
3200 __vpp_verify___1 = (void const *)0;
3201#line 325
3202 __asm__ volatile ("add %%gs:%P1, %0": "=r" (tcp_ptr_____1): "m" (this_cpu_off),
3203 "0" (& __uv_hub_info));
3204#line 325
3205 __vpp_verify___2 = (void const *)0;
3206#line 325
3207 __asm__ volatile ("add %%gs:%P1, %0": "=r" (tcp_ptr_____2): "m" (this_cpu_off),
3208 "0" (& __uv_hub_info));
3209#line 326
3210 __vpp_verify___3 = (void const *)0;
3211#line 326
3212 __asm__ volatile ("add %%gs:%P1, %0": "=r" (tcp_ptr_____3): "m" (this_cpu_off),
3213 "0" (& __uv_hub_info));
3214#line 326
3215 __vpp_verify___4 = (void const *)0;
3216#line 326
3217 __asm__ volatile ("add %%gs:%P1, %0": "=r" (tcp_ptr_____4): "m" (this_cpu_off),
3218 "0" (& __uv_hub_info));
3219#line 326
3220 __cil_tmp25 = (struct uv_hub_info_s *)tcp_ptr_____4;
3221#line 326
3222 __cil_tmp26 = (unsigned long )__cil_tmp25;
3223#line 326
3224 __cil_tmp27 = __cil_tmp26 + 57;
3225#line 326
3226 __cil_tmp28 = *((unsigned char *)__cil_tmp27);
3227#line 326
3228 __cil_tmp29 = (int )__cil_tmp28;
3229#line 326
3230 __cil_tmp30 = (struct uv_hub_info_s *)tcp_ptr_____3;
3231#line 326
3232 __cil_tmp31 = (unsigned long )__cil_tmp30;
3233#line 326
3234 __cil_tmp32 = __cil_tmp31 + 23;
3235#line 326
3236 __cil_tmp33 = *((unsigned char *)__cil_tmp32);
3237#line 326
3238 __cil_tmp34 = (int )__cil_tmp33;
3239#line 326
3240 __cil_tmp35 = gpa >> __cil_tmp34;
3241#line 326
3242 __cil_tmp36 = __cil_tmp35 << __cil_tmp29;
3243#line 326
3244 __cil_tmp37 = (struct uv_hub_info_s *)tcp_ptr_____2;
3245#line 326
3246 __cil_tmp38 = (unsigned long )__cil_tmp37;
3247#line 326
3248 __cil_tmp39 = __cil_tmp38 + 22;
3249#line 326
3250 __cil_tmp40 = *((unsigned char *)__cil_tmp39);
3251#line 326
3252 __cil_tmp41 = (int )__cil_tmp40;
3253#line 326
3254 __cil_tmp42 = (struct uv_hub_info_s *)tcp_ptr_____1;
3255#line 326
3256 __cil_tmp43 = (unsigned long )__cil_tmp42;
3257#line 326
3258 __cil_tmp44 = __cil_tmp43 + 22;
3259#line 326
3260 __cil_tmp45 = *((unsigned char *)__cil_tmp44);
3261#line 326
3262 __cil_tmp46 = (int )__cil_tmp45;
3263#line 326
3264 __cil_tmp47 = gpa << __cil_tmp46;
3265#line 326
3266 __cil_tmp48 = __cil_tmp47 >> __cil_tmp41;
3267#line 326
3268 gpa = __cil_tmp48 | __cil_tmp36;
3269#line 327
3270 __vpp_verify___5 = (void const *)0;
3271#line 327
3272 __asm__ volatile ("add %%gs:%P1, %0": "=r" (tcp_ptr_____5): "m" (this_cpu_off),
3273 "0" (& __uv_hub_info));
3274#line 327
3275 __cil_tmp49 = (struct uv_hub_info_s *)tcp_ptr_____5;
3276#line 327
3277 __cil_tmp50 = (unsigned long )__cil_tmp49;
3278#line 327
3279 __cil_tmp51 = __cil_tmp50 + 8;
3280#line 327
3281 __cil_tmp52 = *((unsigned long *)__cil_tmp51);
3282#line 327
3283 paddr = __cil_tmp52 & gpa;
3284#line 328
3285 if (paddr >= remap_base) {
3286 {
3287#line 328
3288 __cil_tmp53 = remap_base + remap_top;
3289#line 328
3290 if (__cil_tmp53 > paddr) {
3291#line 329
3292 paddr = paddr - remap_base;
3293 } else {
3294
3295 }
3296 }
3297 } else {
3298
3299 }
3300#line 330
3301 return (paddr);
3302}
3303}
3304#line 481
3305extern struct uv_blade_info *uv_blade_info ;
3306#line 483
3307extern short *uv_cpu_to_blade ;
3308#line 499 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/uv/uv_hub.h"
3309__inline static int uv_cpu_to_blade_id(int cpu )
3310{ unsigned long __cil_tmp2 ;
3311 short *__cil_tmp3 ;
3312 short __cil_tmp4 ;
3313
3314 {
3315 {
3316#line 501
3317 __cil_tmp2 = (unsigned long )cpu;
3318#line 501
3319 __cil_tmp3 = uv_cpu_to_blade + __cil_tmp2;
3320#line 501
3321 __cil_tmp4 = *__cil_tmp3;
3322#line 501
3323 return ((int )__cil_tmp4);
3324 }
3325}
3326}
3327#line 535 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/uv/uv_hub.h"
3328__inline static int uv_cpu_to_pnode(int cpu )
3329{ int tmp ;
3330 unsigned long __cil_tmp3 ;
3331 struct uv_blade_info *__cil_tmp4 ;
3332 unsigned long __cil_tmp5 ;
3333 unsigned long __cil_tmp6 ;
3334 unsigned short __cil_tmp7 ;
3335
3336 {
3337 {
3338#line 537
3339 tmp = uv_cpu_to_blade_id(cpu);
3340 }
3341 {
3342#line 537
3343 __cil_tmp3 = (unsigned long )tmp;
3344#line 537
3345 __cil_tmp4 = uv_blade_info + __cil_tmp3;
3346#line 537
3347 __cil_tmp5 = (unsigned long )__cil_tmp4;
3348#line 537
3349 __cil_tmp6 = __cil_tmp5 + 4;
3350#line 537
3351 __cil_tmp7 = *((unsigned short *)__cil_tmp6);
3352#line 537
3353 return ((int )__cil_tmp7);
3354 }
3355}
3356}
3357#line 98 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/uv/bios.h"
3358extern s64 uv_bios_change_memprotect(u64 , u64 , enum uv_memprotect ) ;
3359#line 106
3360extern long sn_partition_id ;
3361#line 108
3362extern long sn_region_size ;
3363#line 144 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/drivers/misc/sgi-xp/../sgi-gru/grukservices.h"
3364extern int gru_read_gpa(unsigned long * , unsigned long ) ;
3365#line 160
3366extern int gru_copy_gpa(unsigned long , unsigned long , unsigned int ) ;
3367#line 44 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/12522/dscv_tempdir/dscv/ri/43_1a/drivers/misc/sgi-xp/xp_uv.c.p"
3368static unsigned long xp_pa_uv(void *addr )
3369{ unsigned long tmp ;
3370
3371 {
3372 {
3373#line 46
3374 tmp = uv_gpa(addr);
3375 }
3376#line 46
3377 return (tmp);
3378}
3379}
3380#line 53 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/12522/dscv_tempdir/dscv/ri/43_1a/drivers/misc/sgi-xp/xp_uv.c.p"
3381static unsigned long xp_socket_pa_uv(unsigned long gpa )
3382{ unsigned long tmp ;
3383
3384 {
3385 {
3386#line 55
3387 tmp = uv_gpa_to_soc_phys_ram(gpa);
3388 }
3389#line 55
3390 return (tmp);
3391}
3392}
3393#line 59 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/12522/dscv_tempdir/dscv/ri/43_1a/drivers/misc/sgi-xp/xp_uv.c.p"
3394static enum xp_retval xp_remote_mmr_read(unsigned long dst_gpa , unsigned long const src_gpa ,
3395 size_t len )
3396{ int ret ;
3397 unsigned long *dst_va ;
3398 unsigned long tmp ;
3399 int tmp___0 ;
3400 long tmp___1 ;
3401 long tmp___2 ;
3402 unsigned long __cil_tmp10 ;
3403 unsigned long __cil_tmp11 ;
3404 int __cil_tmp12 ;
3405 long __cil_tmp13 ;
3406 int __cil_tmp14 ;
3407 long __cil_tmp15 ;
3408 unsigned long __cil_tmp16 ;
3409 struct device const *__cil_tmp17 ;
3410
3411 {
3412 {
3413#line 63
3414 tmp = uv_gpa_to_soc_phys_ram(dst_gpa);
3415#line 63
3416 __cil_tmp10 = tmp + 0xffff880000000000UL;
3417#line 63
3418 dst_va = (unsigned long *)__cil_tmp10;
3419#line 65
3420 __cil_tmp11 = (unsigned long )src_gpa;
3421#line 65
3422 tmp___0 = uv_gpa_in_mmr_space(__cil_tmp11);
3423#line 65
3424 __cil_tmp12 = tmp___0 == 0;
3425#line 65
3426 __cil_tmp13 = (long )__cil_tmp12;
3427#line 65
3428 tmp___1 = __builtin_expect(__cil_tmp13, 0L);
3429 }
3430#line 65
3431 if (tmp___1 != 0L) {
3432#line 65
3433 __asm__ volatile ("1:\tud2\n.pushsection __bug_table,\"a\"\n2:\t.long 1b - 2b, %c0 - 2b\n\t.word %c1, 0\n\t.org 2b+%c2\n.popsection": : "i" ((char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/12522/dscv_tempdir/dscv/ri/43_1a/drivers/misc/sgi-xp/xp_uv.c.p"),
3434 "i" (65), "i" (12UL));
3435 ldv_22015: ;
3436#line 65
3437 goto ldv_22015;
3438 } else {
3439
3440 }
3441 {
3442#line 66
3443 __cil_tmp14 = len != 8UL;
3444#line 66
3445 __cil_tmp15 = (long )__cil_tmp14;
3446#line 66
3447 tmp___2 = __builtin_expect(__cil_tmp15, 0L);
3448 }
3449#line 66
3450 if (tmp___2 != 0L) {
3451#line 66
3452 __asm__ volatile ("1:\tud2\n.pushsection __bug_table,\"a\"\n2:\t.long 1b - 2b, %c0 - 2b\n\t.word %c1, 0\n\t.org 2b+%c2\n.popsection": : "i" ((char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/12522/dscv_tempdir/dscv/ri/43_1a/drivers/misc/sgi-xp/xp_uv.c.p"),
3453 "i" (66), "i" (12UL));
3454 ldv_22016: ;
3455#line 66
3456 goto ldv_22016;
3457 } else {
3458
3459 }
3460 {
3461#line 68
3462 __cil_tmp16 = (unsigned long )src_gpa;
3463#line 68
3464 ret = gru_read_gpa(dst_va, __cil_tmp16);
3465 }
3466#line 69
3467 if (ret == 0) {
3468#line 70
3469 return ((enum xp_retval )0);
3470 } else {
3471
3472 }
3473 {
3474#line 72
3475 __cil_tmp17 = (struct device const *)xp;
3476#line 72
3477 dev_err(__cil_tmp17, "gru_read_gpa() failed, dst_gpa=0x%016lx src_gpa=0x%016lx len=%ld\n",
3478 dst_gpa, src_gpa, len);
3479 }
3480#line 74
3481 return ((enum xp_retval )58);
3482}
3483}
3484#line 79 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/12522/dscv_tempdir/dscv/ri/43_1a/drivers/misc/sgi-xp/xp_uv.c.p"
3485static enum xp_retval xp_remote_memcpy_uv(unsigned long dst_gpa , unsigned long const src_gpa ,
3486 size_t len )
3487{ int ret ;
3488 enum xp_retval tmp ;
3489 int tmp___0 ;
3490 unsigned long __cil_tmp7 ;
3491 unsigned long __cil_tmp8 ;
3492 unsigned int __cil_tmp9 ;
3493 struct device const *__cil_tmp10 ;
3494
3495 {
3496 {
3497#line 84
3498 __cil_tmp7 = (unsigned long )src_gpa;
3499#line 84
3500 tmp___0 = uv_gpa_in_mmr_space(__cil_tmp7);
3501 }
3502#line 84
3503 if (tmp___0 != 0) {
3504 {
3505#line 85
3506 tmp = xp_remote_mmr_read(dst_gpa, src_gpa, len);
3507 }
3508#line 85
3509 return (tmp);
3510 } else {
3511
3512 }
3513 {
3514#line 87
3515 __cil_tmp8 = (unsigned long )src_gpa;
3516#line 87
3517 __cil_tmp9 = (unsigned int )len;
3518#line 87
3519 ret = gru_copy_gpa(dst_gpa, __cil_tmp8, __cil_tmp9);
3520 }
3521#line 88
3522 if (ret == 0) {
3523#line 89
3524 return ((enum xp_retval )0);
3525 } else {
3526
3527 }
3528 {
3529#line 91
3530 __cil_tmp10 = (struct device const *)xp;
3531#line 91
3532 dev_err(__cil_tmp10, "gru_copy_gpa() failed, dst_gpa=0x%016lx src_gpa=0x%016lx len=%ld\n",
3533 dst_gpa, src_gpa, len);
3534 }
3535#line 93
3536 return ((enum xp_retval )58);
3537}
3538}
3539#line 97 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/12522/dscv_tempdir/dscv/ri/43_1a/drivers/misc/sgi-xp/xp_uv.c.p"
3540static int xp_cpu_to_nasid_uv(int cpuid___0 )
3541{ int tmp ;
3542 unsigned long tcp_ptr__ ;
3543 void const *__vpp_verify ;
3544 struct uv_hub_info_s *__cil_tmp5 ;
3545 unsigned long __cil_tmp6 ;
3546 unsigned long __cil_tmp7 ;
3547 unsigned int __cil_tmp8 ;
3548 unsigned int __cil_tmp9 ;
3549 unsigned int __cil_tmp10 ;
3550 unsigned int __cil_tmp11 ;
3551
3552 {
3553 {
3554#line 100
3555 tmp = uv_cpu_to_pnode(cpuid___0);
3556#line 100
3557 __vpp_verify = (void const *)0;
3558#line 100
3559 __asm__ volatile ("add %%gs:%P1, %0": "=r" (tcp_ptr__): "m" (this_cpu_off), "0" (& __uv_hub_info));
3560 }
3561 {
3562#line 100
3563 __cil_tmp5 = (struct uv_hub_info_s *)tcp_ptr__;
3564#line 100
3565 __cil_tmp6 = (unsigned long )__cil_tmp5;
3566#line 100
3567 __cil_tmp7 = __cil_tmp6 + 16;
3568#line 100
3569 __cil_tmp8 = *((unsigned int *)__cil_tmp7);
3570#line 100
3571 __cil_tmp9 = (unsigned int )tmp;
3572#line 100
3573 __cil_tmp10 = __cil_tmp9 | __cil_tmp8;
3574#line 100
3575 __cil_tmp11 = __cil_tmp10 << 1;
3576#line 100
3577 return ((int )__cil_tmp11);
3578 }
3579}
3580}
3581#line 104 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/12522/dscv_tempdir/dscv/ri/43_1a/drivers/misc/sgi-xp/xp_uv.c.p"
3582static enum xp_retval xp_expand_memprotect_uv(unsigned long phys_addr , unsigned long size )
3583{ int ret ;
3584 s64 tmp ;
3585 u64 __cil_tmp5 ;
3586 u64 __cil_tmp6 ;
3587 enum uv_memprotect __cil_tmp7 ;
3588 struct device const *__cil_tmp8 ;
3589
3590 {
3591 {
3592#line 109
3593 __cil_tmp5 = (u64 )phys_addr;
3594#line 109
3595 __cil_tmp6 = (u64 )size;
3596#line 109
3597 __cil_tmp7 = (enum uv_memprotect )2;
3598#line 109
3599 tmp = uv_bios_change_memprotect(__cil_tmp5, __cil_tmp6, __cil_tmp7);
3600#line 109
3601 ret = (int )tmp;
3602 }
3603#line 110
3604 if (ret != 0) {
3605 {
3606#line 111
3607 __cil_tmp8 = (struct device const *)xp;
3608#line 111
3609 dev_err(__cil_tmp8, "uv_bios_change_memprotect(,, UV_MEMPROT_ALLOW_RW) failed, ret=%d\n",
3610 ret);
3611 }
3612#line 113
3613 return ((enum xp_retval )62);
3614 } else {
3615
3616 }
3617#line 129
3618 return ((enum xp_retval )0);
3619}
3620}
3621#line 133 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/12522/dscv_tempdir/dscv/ri/43_1a/drivers/misc/sgi-xp/xp_uv.c.p"
3622static enum xp_retval xp_restrict_memprotect_uv(unsigned long phys_addr , unsigned long size )
3623{ int ret ;
3624 s64 tmp ;
3625 u64 __cil_tmp5 ;
3626 u64 __cil_tmp6 ;
3627 enum uv_memprotect __cil_tmp7 ;
3628 struct device const *__cil_tmp8 ;
3629
3630 {
3631 {
3632#line 138
3633 __cil_tmp5 = (u64 )phys_addr;
3634#line 138
3635 __cil_tmp6 = (u64 )size;
3636#line 138
3637 __cil_tmp7 = (enum uv_memprotect )0;
3638#line 138
3639 tmp = uv_bios_change_memprotect(__cil_tmp5, __cil_tmp6, __cil_tmp7);
3640#line 138
3641 ret = (int )tmp;
3642 }
3643#line 140
3644 if (ret != 0) {
3645 {
3646#line 141
3647 __cil_tmp8 = (struct device const *)xp;
3648#line 141
3649 dev_err(__cil_tmp8, "uv_bios_change_memprotect(,, UV_MEMPROT_RESTRICT_ACCESS) failed, ret=%d\n",
3650 ret);
3651 }
3652#line 143
3653 return ((enum xp_retval )62);
3654 } else {
3655
3656 }
3657#line 159
3658 return ((enum xp_retval )0);
3659}
3660}
3661#line 163 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/12522/dscv_tempdir/dscv/ri/43_1a/drivers/misc/sgi-xp/xp_uv.c.p"
3662enum xp_retval xp_init_uv(void)
3663{ int tmp ;
3664 long tmp___0 ;
3665 int __cil_tmp3 ;
3666 long __cil_tmp4 ;
3667 short *__cil_tmp5 ;
3668 short *__cil_tmp6 ;
3669 u8 *__cil_tmp7 ;
3670 unsigned long (**__cil_tmp8)(void * ) ;
3671 unsigned long (**__cil_tmp9)(unsigned long ) ;
3672 enum xp_retval (**__cil_tmp10)(unsigned long , unsigned long const , size_t ) ;
3673 int (**__cil_tmp11)(int ) ;
3674 enum xp_retval (**__cil_tmp12)(unsigned long , unsigned long ) ;
3675 enum xp_retval (**__cil_tmp13)(unsigned long , unsigned long ) ;
3676
3677 {
3678 {
3679#line 165
3680 tmp = is_uv_system();
3681#line 165
3682 __cil_tmp3 = tmp == 0;
3683#line 165
3684 __cil_tmp4 = (long )__cil_tmp3;
3685#line 165
3686 tmp___0 = __builtin_expect(__cil_tmp4, 0L);
3687 }
3688#line 165
3689 if (tmp___0 != 0L) {
3690#line 165
3691 __asm__ volatile ("1:\tud2\n.pushsection __bug_table,\"a\"\n2:\t.long 1b - 2b, %c0 - 2b\n\t.word %c1, 0\n\t.org 2b+%c2\n.popsection": : "i" ((char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/12522/dscv_tempdir/dscv/ri/43_1a/drivers/misc/sgi-xp/xp_uv.c.p"),
3692 "i" (165), "i" (12UL));
3693 ldv_22042: ;
3694#line 165
3695 goto ldv_22042;
3696 } else {
3697
3698 }
3699#line 167
3700 __cil_tmp5 = & xp_max_npartitions;
3701#line 167
3702 *__cil_tmp5 = (short)256;
3703#line 168
3704 __cil_tmp6 = & xp_partition_id;
3705#line 168
3706 *__cil_tmp6 = (short )sn_partition_id;
3707#line 169
3708 __cil_tmp7 = & xp_region_size;
3709#line 169
3710 *__cil_tmp7 = (u8 )sn_region_size;
3711#line 171
3712 __cil_tmp8 = & xp_pa;
3713#line 171
3714 *__cil_tmp8 = & xp_pa_uv;
3715#line 172
3716 __cil_tmp9 = & xp_socket_pa;
3717#line 172
3718 *__cil_tmp9 = & xp_socket_pa_uv;
3719#line 173
3720 __cil_tmp10 = & xp_remote_memcpy;
3721#line 173
3722 *__cil_tmp10 = & xp_remote_memcpy_uv;
3723#line 174
3724 __cil_tmp11 = & xp_cpu_to_nasid;
3725#line 174
3726 *__cil_tmp11 = & xp_cpu_to_nasid_uv;
3727#line 175
3728 __cil_tmp12 = & xp_expand_memprotect;
3729#line 175
3730 *__cil_tmp12 = & xp_expand_memprotect_uv;
3731#line 176
3732 __cil_tmp13 = & xp_restrict_memprotect;
3733#line 176
3734 *__cil_tmp13 = & xp_restrict_memprotect_uv;
3735#line 178
3736 return ((enum xp_retval )0);
3737}
3738}
3739#line 182 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/12522/dscv_tempdir/dscv/ri/43_1a/drivers/misc/sgi-xp/xp_uv.c.p"
3740void xp_exit_uv(void)
3741{ int tmp ;
3742 long tmp___0 ;
3743 int __cil_tmp3 ;
3744 long __cil_tmp4 ;
3745
3746 {
3747 {
3748#line 184
3749 tmp = is_uv_system();
3750#line 184
3751 __cil_tmp3 = tmp == 0;
3752#line 184
3753 __cil_tmp4 = (long )__cil_tmp3;
3754#line 184
3755 tmp___0 = __builtin_expect(__cil_tmp4, 0L);
3756 }
3757#line 184
3758 if (tmp___0 != 0L) {
3759#line 184
3760 __asm__ volatile ("1:\tud2\n.pushsection __bug_table,\"a\"\n2:\t.long 1b - 2b, %c0 - 2b\n\t.word %c1, 0\n\t.org 2b+%c2\n.popsection": : "i" ((char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/12522/dscv_tempdir/dscv/ri/43_1a/drivers/misc/sgi-xp/xp_uv.c.p"),
3761 "i" (184), "i" (12UL));
3762 ldv_22046: ;
3763#line 184
3764 goto ldv_22046;
3765 } else {
3766
3767 }
3768#line 186
3769 return;
3770}
3771}