Showing error 137

User: Jiri Slaby
Error type: Reachable Error Location
Error type description: A specified error location is reachable in some program path
File location: ldv-drivers/usb_urb-drivers-net-can-usb-ems_usb.ko_unsafe.cil.out.i.pp.cil.c
Line in file: 10760
Project: SV-COMP 2013
Project version: 2.6.28
Tools: Manual Work
Entered: 2013-01-17 16:57:54 UTC


Source:

    1/* Generated by CIL v. 1.3.7 */
    2/* print_CIL_Input is true */
    3
    4#line 145 "include/linux/init.h"
    5typedef void (*ctor_fn_t)(void);
    6#line 19 "include/asm-generic/int-ll64.h"
    7typedef signed char __s8;
    8#line 20 "include/asm-generic/int-ll64.h"
    9typedef unsigned char __u8;
   10#line 22 "include/asm-generic/int-ll64.h"
   11typedef short __s16;
   12#line 23 "include/asm-generic/int-ll64.h"
   13typedef unsigned short __u16;
   14#line 25 "include/asm-generic/int-ll64.h"
   15typedef int __s32;
   16#line 26 "include/asm-generic/int-ll64.h"
   17typedef unsigned int __u32;
   18#line 29 "include/asm-generic/int-ll64.h"
   19typedef long long __s64;
   20#line 30 "include/asm-generic/int-ll64.h"
   21typedef unsigned long long __u64;
   22#line 43 "include/asm-generic/int-ll64.h"
   23typedef unsigned char u8;
   24#line 46 "include/asm-generic/int-ll64.h"
   25typedef unsigned short u16;
   26#line 48 "include/asm-generic/int-ll64.h"
   27typedef int s32;
   28#line 49 "include/asm-generic/int-ll64.h"
   29typedef unsigned int u32;
   30#line 51 "include/asm-generic/int-ll64.h"
   31typedef long long s64;
   32#line 52 "include/asm-generic/int-ll64.h"
   33typedef unsigned long long u64;
   34#line 11 "include/asm-generic/types.h"
   35typedef unsigned short umode_t;
   36#line 11 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/posix_types_64.h"
   37typedef unsigned int __kernel_mode_t;
   38#line 12 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/posix_types_64.h"
   39typedef unsigned long __kernel_nlink_t;
   40#line 13 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/posix_types_64.h"
   41typedef long __kernel_off_t;
   42#line 14 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/posix_types_64.h"
   43typedef int __kernel_pid_t;
   44#line 16 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/posix_types_64.h"
   45typedef unsigned int __kernel_uid_t;
   46#line 17 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/posix_types_64.h"
   47typedef unsigned int __kernel_gid_t;
   48#line 18 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/posix_types_64.h"
   49typedef unsigned long __kernel_size_t;
   50#line 19 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/posix_types_64.h"
   51typedef long __kernel_ssize_t;
   52#line 21 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/posix_types_64.h"
   53typedef long __kernel_time_t;
   54#line 23 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/posix_types_64.h"
   55typedef long __kernel_clock_t;
   56#line 24 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/posix_types_64.h"
   57typedef int __kernel_timer_t;
   58#line 25 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/posix_types_64.h"
   59typedef int __kernel_clockid_t;
   60#line 32 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/posix_types_64.h"
   61typedef long long __kernel_loff_t;
   62#line 41 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/posix_types_64.h"
   63typedef __kernel_uid_t __kernel_uid32_t;
   64#line 42 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/posix_types_64.h"
   65typedef __kernel_gid_t __kernel_gid32_t;
   66#line 21 "include/linux/types.h"
   67typedef __u32 __kernel_dev_t;
   68#line 24 "include/linux/types.h"
   69typedef __kernel_dev_t dev_t;
   70#line 26 "include/linux/types.h"
   71typedef __kernel_mode_t mode_t;
   72#line 27 "include/linux/types.h"
   73typedef __kernel_nlink_t nlink_t;
   74#line 28 "include/linux/types.h"
   75typedef __kernel_off_t off_t;
   76#line 29 "include/linux/types.h"
   77typedef __kernel_pid_t pid_t;
   78#line 34 "include/linux/types.h"
   79typedef __kernel_clockid_t clockid_t;
   80#line 37 "include/linux/types.h"
   81typedef _Bool bool;
   82#line 39 "include/linux/types.h"
   83typedef __kernel_uid32_t uid_t;
   84#line 40 "include/linux/types.h"
   85typedef __kernel_gid32_t gid_t;
   86#line 53 "include/linux/types.h"
   87typedef __kernel_loff_t loff_t;
   88#line 62 "include/linux/types.h"
   89typedef __kernel_size_t size_t;
   90#line 67 "include/linux/types.h"
   91typedef __kernel_ssize_t ssize_t;
   92#line 77 "include/linux/types.h"
   93typedef __kernel_time_t time_t;
   94#line 110 "include/linux/types.h"
   95typedef __s32 int32_t;
   96#line 116 "include/linux/types.h"
   97typedef __u32 uint32_t;
   98#line 141 "include/linux/types.h"
   99typedef unsigned long sector_t;
  100#line 142 "include/linux/types.h"
  101typedef unsigned long blkcnt_t;
  102#line 154 "include/linux/types.h"
  103typedef u64 dma_addr_t;
  104#line 177 "include/linux/types.h"
  105typedef __u16 __le16;
  106#line 178 "include/linux/types.h"
  107typedef __u16 __be16;
  108#line 180 "include/linux/types.h"
  109typedef __u32 __be32;
  110#line 185 "include/linux/types.h"
  111typedef __u32 __wsum;
  112#line 201 "include/linux/types.h"
  113typedef unsigned int gfp_t;
  114#line 202 "include/linux/types.h"
  115typedef unsigned int fmode_t;
  116#line 212 "include/linux/types.h"
  117struct __anonstruct_atomic_t_7 {
  118   int counter ;
  119};
  120#line 212 "include/linux/types.h"
  121typedef struct __anonstruct_atomic_t_7 atomic_t;
  122#line 217 "include/linux/types.h"
  123struct __anonstruct_atomic64_t_8 {
  124   long counter ;
  125};
  126#line 217 "include/linux/types.h"
  127typedef struct __anonstruct_atomic64_t_8 atomic64_t;
  128#line 222 "include/linux/types.h"
  129struct list_head {
  130   struct list_head *next ;
  131   struct list_head *prev ;
  132};
  133#line 226
  134struct hlist_node;
  135#line 226
  136struct hlist_node;
  137#line 226
  138struct hlist_node;
  139#line 226 "include/linux/types.h"
  140struct hlist_head {
  141   struct hlist_node *first ;
  142};
  143#line 230 "include/linux/types.h"
  144struct hlist_node {
  145   struct hlist_node *next ;
  146   struct hlist_node **pprev ;
  147};
  148#line 59 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/alternative.h"
  149struct module;
  150#line 59
  151struct module;
  152#line 59
  153struct module;
  154#line 59
  155struct module;
  156#line 10 "include/asm-generic/bug.h"
  157struct bug_entry {
  158   int bug_addr_disp ;
  159   int file_disp ;
  160   unsigned short line ;
  161   unsigned short flags ;
  162};
  163#line 113 "include/linux/kernel.h"
  164struct completion;
  165#line 113
  166struct completion;
  167#line 113
  168struct completion;
  169#line 113
  170struct completion;
  171#line 114
  172struct pt_regs;
  173#line 114
  174struct pt_regs;
  175#line 114
  176struct pt_regs;
  177#line 114
  178struct pt_regs;
  179#line 322
  180struct pid;
  181#line 322
  182struct pid;
  183#line 322
  184struct pid;
  185#line 322
  186struct pid;
  187#line 12 "include/linux/thread_info.h"
  188struct timespec;
  189#line 12
  190struct timespec;
  191#line 12
  192struct timespec;
  193#line 12
  194struct timespec;
  195#line 18 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/page.h"
  196struct page;
  197#line 18
  198struct page;
  199#line 18
  200struct page;
  201#line 18
  202struct page;
  203#line 20 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/thread_info.h"
  204struct task_struct;
  205#line 20
  206struct task_struct;
  207#line 20
  208struct task_struct;
  209#line 20
  210struct task_struct;
  211#line 7 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/processor.h"
  212struct task_struct;
  213#line 8
  214struct mm_struct;
  215#line 8
  216struct mm_struct;
  217#line 8
  218struct mm_struct;
  219#line 8
  220struct mm_struct;
  221#line 99 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/ptrace.h"
  222struct pt_regs {
  223   unsigned long r15 ;
  224   unsigned long r14 ;
  225   unsigned long r13 ;
  226   unsigned long r12 ;
  227   unsigned long bp ;
  228   unsigned long bx ;
  229   unsigned long r11 ;
  230   unsigned long r10 ;
  231   unsigned long r9 ;
  232   unsigned long r8 ;
  233   unsigned long ax ;
  234   unsigned long cx ;
  235   unsigned long dx ;
  236   unsigned long si ;
  237   unsigned long di ;
  238   unsigned long orig_ax ;
  239   unsigned long ip ;
  240   unsigned long cs ;
  241   unsigned long flags ;
  242   unsigned long sp ;
  243   unsigned long ss ;
  244};
  245#line 136
  246struct task_struct;
  247#line 141 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/vm86.h"
  248struct kernel_vm86_regs {
  249   struct pt_regs pt ;
  250   unsigned short es ;
  251   unsigned short __esh ;
  252   unsigned short ds ;
  253   unsigned short __dsh ;
  254   unsigned short fs ;
  255   unsigned short __fsh ;
  256   unsigned short gs ;
  257   unsigned short __gsh ;
  258};
  259#line 11 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/math_emu.h"
  260union __anonunion____missing_field_name_14 {
  261   struct pt_regs *regs ;
  262   struct kernel_vm86_regs *vm86 ;
  263};
  264#line 11 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/math_emu.h"
  265struct math_emu_info {
  266   long ___orig_eip ;
  267   union __anonunion____missing_field_name_14 __annonCompField5 ;
  268};
  269#line 8 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/current.h"
  270struct task_struct;
  271#line 13 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/pgtable_64_types.h"
  272typedef unsigned long pgdval_t;
  273#line 14 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/pgtable_64_types.h"
  274typedef unsigned long pgprotval_t;
  275#line 190 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/pgtable_types.h"
  276struct pgprot {
  277   pgprotval_t pgprot ;
  278};
  279#line 190 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/pgtable_types.h"
  280typedef struct pgprot pgprot_t;
  281#line 192 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/pgtable_types.h"
  282struct __anonstruct_pgd_t_17 {
  283   pgdval_t pgd ;
  284};
  285#line 192 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/pgtable_types.h"
  286typedef struct __anonstruct_pgd_t_17 pgd_t;
  287#line 280 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/pgtable_types.h"
  288typedef struct page *pgtable_t;
  289#line 293
  290struct file;
  291#line 293
  292struct file;
  293#line 293
  294struct file;
  295#line 293
  296struct file;
  297#line 311
  298struct seq_file;
  299#line 311
  300struct seq_file;
  301#line 311
  302struct seq_file;
  303#line 311
  304struct seq_file;
  305#line 22 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/desc_defs.h"
  306struct __anonstruct____missing_field_name_22 {
  307   unsigned int a ;
  308   unsigned int b ;
  309};
  310#line 22 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/desc_defs.h"
  311struct __anonstruct____missing_field_name_23 {
  312   u16 limit0 ;
  313   u16 base0 ;
  314   unsigned int base1 : 8 ;
  315   unsigned int type : 4 ;
  316   unsigned int s : 1 ;
  317   unsigned int dpl : 2 ;
  318   unsigned int p : 1 ;
  319   unsigned int limit : 4 ;
  320   unsigned int avl : 1 ;
  321   unsigned int l : 1 ;
  322   unsigned int d : 1 ;
  323   unsigned int g : 1 ;
  324   unsigned int base2 : 8 ;
  325};
  326#line 22 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/desc_defs.h"
  327union __anonunion____missing_field_name_21 {
  328   struct __anonstruct____missing_field_name_22 __annonCompField7 ;
  329   struct __anonstruct____missing_field_name_23 __annonCompField8 ;
  330};
  331#line 22 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/desc_defs.h"
  332struct desc_struct {
  333   union __anonunion____missing_field_name_21 __annonCompField9 ;
  334} __attribute__((__packed__)) ;
  335#line 45 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/paravirt_types.h"
  336struct page;
  337#line 46
  338struct thread_struct;
  339#line 46
  340struct thread_struct;
  341#line 46
  342struct thread_struct;
  343#line 46
  344struct thread_struct;
  345#line 49
  346struct mm_struct;
  347#line 50
  348struct desc_struct;
  349#line 51
  350struct task_struct;
  351#line 52
  352struct cpumask;
  353#line 52
  354struct cpumask;
  355#line 52
  356struct cpumask;
  357#line 52
  358struct cpumask;
  359#line 322
  360struct arch_spinlock;
  361#line 322
  362struct arch_spinlock;
  363#line 322
  364struct arch_spinlock;
  365#line 322
  366struct arch_spinlock;
  367#line 13 "include/linux/cpumask.h"
  368struct cpumask {
  369   unsigned long bits[((4096UL + 8UL * sizeof(long )) - 1UL) / (8UL * sizeof(long ))] ;
  370};
  371#line 13 "include/linux/cpumask.h"
  372typedef struct cpumask cpumask_t;
  373#line 622 "include/linux/cpumask.h"
  374typedef struct cpumask *cpumask_var_t;
  375#line 20 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/system.h"
  376struct task_struct;
  377#line 11 "include/linux/personality.h"
  378struct pt_regs;
  379#line 145 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/processor.h"
  380struct seq_operations;
  381#line 145
  382struct seq_operations;
  383#line 145
  384struct seq_operations;
  385#line 280 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/processor.h"
  386struct i387_fsave_struct {
  387   u32 cwd ;
  388   u32 swd ;
  389   u32 twd ;
  390   u32 fip ;
  391   u32 fcs ;
  392   u32 foo ;
  393   u32 fos ;
  394   u32 st_space[20] ;
  395   u32 status ;
  396};
  397#line 296 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/processor.h"
  398struct __anonstruct____missing_field_name_31 {
  399   u64 rip ;
  400   u64 rdp ;
  401};
  402#line 296 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/processor.h"
  403struct __anonstruct____missing_field_name_32 {
  404   u32 fip ;
  405   u32 fcs ;
  406   u32 foo ;
  407   u32 fos ;
  408};
  409#line 296 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/processor.h"
  410union __anonunion____missing_field_name_30 {
  411   struct __anonstruct____missing_field_name_31 __annonCompField12 ;
  412   struct __anonstruct____missing_field_name_32 __annonCompField13 ;
  413};
  414#line 296 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/processor.h"
  415union __anonunion____missing_field_name_33 {
  416   u32 padding1[12] ;
  417   u32 sw_reserved[12] ;
  418};
  419#line 296 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/processor.h"
  420struct i387_fxsave_struct {
  421   u16 cwd ;
  422   u16 swd ;
  423   u16 twd ;
  424   u16 fop ;
  425   union __anonunion____missing_field_name_30 __annonCompField14 ;
  426   u32 mxcsr ;
  427   u32 mxcsr_mask ;
  428   u32 st_space[32] ;
  429   u32 xmm_space[64] ;
  430   u32 padding[12] ;
  431   union __anonunion____missing_field_name_33 __annonCompField15 ;
  432} __attribute__((__aligned__(16))) ;
  433#line 331 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/processor.h"
  434struct i387_soft_struct {
  435   u32 cwd ;
  436   u32 swd ;
  437   u32 twd ;
  438   u32 fip ;
  439   u32 fcs ;
  440   u32 foo ;
  441   u32 fos ;
  442   u32 st_space[20] ;
  443   u8 ftop ;
  444   u8 changed ;
  445   u8 lookahead ;
  446   u8 no_update ;
  447   u8 rm ;
  448   u8 alimit ;
  449   struct math_emu_info *info ;
  450   u32 entry_eip ;
  451};
  452#line 351 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/processor.h"
  453struct ymmh_struct {
  454   u32 ymmh_space[64] ;
  455};
  456#line 356 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/processor.h"
  457struct xsave_hdr_struct {
  458   u64 xstate_bv ;
  459   u64 reserved1[2] ;
  460   u64 reserved2[5] ;
  461} __attribute__((__packed__)) ;
  462#line 362 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/processor.h"
  463struct xsave_struct {
  464   struct i387_fxsave_struct i387 ;
  465   struct xsave_hdr_struct xsave_hdr ;
  466   struct ymmh_struct ymmh ;
  467} __attribute__((__packed__, __aligned__(64))) ;
  468#line 369 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/processor.h"
  469union thread_xstate {
  470   struct i387_fsave_struct fsave ;
  471   struct i387_fxsave_struct fxsave ;
  472   struct i387_soft_struct soft ;
  473   struct xsave_struct xsave ;
  474};
  475#line 376 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/processor.h"
  476struct fpu {
  477   union thread_xstate *state ;
  478};
  479#line 421
  480struct kmem_cache;
  481#line 421
  482struct kmem_cache;
  483#line 421
  484struct kmem_cache;
  485#line 423
  486struct perf_event;
  487#line 423
  488struct perf_event;
  489#line 423
  490struct perf_event;
  491#line 423
  492struct perf_event;
  493#line 425 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/processor.h"
  494struct thread_struct {
  495   struct desc_struct tls_array[3] ;
  496   unsigned long sp0 ;
  497   unsigned long sp ;
  498   unsigned long usersp ;
  499   unsigned short es ;
  500   unsigned short ds ;
  501   unsigned short fsindex ;
  502   unsigned short gsindex ;
  503   unsigned long fs ;
  504   unsigned long gs ;
  505   struct perf_event *ptrace_bps[4] ;
  506   unsigned long debugreg6 ;
  507   unsigned long ptrace_dr7 ;
  508   unsigned long cr2 ;
  509   unsigned long trap_no ;
  510   unsigned long error_code ;
  511   struct fpu fpu ;
  512   unsigned long *io_bitmap_ptr ;
  513   unsigned long iopl ;
  514   unsigned int io_bitmap_max ;
  515};
  516#line 23 "include/asm-generic/atomic-long.h"
  517typedef atomic64_t atomic_long_t;
  518#line 8 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/spinlock_types.h"
  519struct arch_spinlock {
  520   unsigned int slock ;
  521};
  522#line 8 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/spinlock_types.h"
  523typedef struct arch_spinlock arch_spinlock_t;
  524#line 14 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/spinlock_types.h"
  525struct __anonstruct_arch_rwlock_t_36 {
  526   unsigned int lock ;
  527};
  528#line 14 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/spinlock_types.h"
  529typedef struct __anonstruct_arch_rwlock_t_36 arch_rwlock_t;
  530#line 12 "include/linux/lockdep.h"
  531struct task_struct;
  532#line 13
  533struct lockdep_map;
  534#line 13
  535struct lockdep_map;
  536#line 13
  537struct lockdep_map;
  538#line 13
  539struct lockdep_map;
  540#line 8 "include/linux/debug_locks.h"
  541struct task_struct;
  542#line 48
  543struct task_struct;
  544#line 4 "include/linux/stacktrace.h"
  545struct task_struct;
  546#line 5
  547struct pt_regs;
  548#line 8
  549struct task_struct;
  550#line 10 "include/linux/stacktrace.h"
  551struct stack_trace {
  552   unsigned int nr_entries ;
  553   unsigned int max_entries ;
  554   unsigned long *entries ;
  555   int skip ;
  556};
  557#line 50 "include/linux/lockdep.h"
  558struct lockdep_subclass_key {
  559   char __one_byte ;
  560} __attribute__((__packed__)) ;
  561#line 54 "include/linux/lockdep.h"
  562struct lock_class_key {
  563   struct lockdep_subclass_key subkeys[8UL] ;
  564};
  565#line 65 "include/linux/lockdep.h"
  566struct lock_class {
  567   struct list_head hash_entry ;
  568   struct list_head lock_entry ;
  569   struct lockdep_subclass_key *key ;
  570   unsigned int subclass ;
  571   unsigned int dep_gen_id ;
  572   unsigned long usage_mask ;
  573   struct stack_trace usage_traces[13] ;
  574   struct list_head locks_after ;
  575   struct list_head locks_before ;
  576   unsigned int version ;
  577   unsigned long ops ;
  578   char const   *name ;
  579   int name_version ;
  580   unsigned long contention_point[4] ;
  581   unsigned long contending_point[4] ;
  582};
  583#line 150 "include/linux/lockdep.h"
  584struct lockdep_map {
  585   struct lock_class_key *key ;
  586   struct lock_class *class_cache[2] ;
  587   char const   *name ;
  588   int cpu ;
  589   unsigned long ip ;
  590};
  591#line 196 "include/linux/lockdep.h"
  592struct held_lock {
  593   u64 prev_chain_key ;
  594   unsigned long acquire_ip ;
  595   struct lockdep_map *instance ;
  596   struct lockdep_map *nest_lock ;
  597   u64 waittime_stamp ;
  598   u64 holdtime_stamp ;
  599   unsigned int class_idx : 13 ;
  600   unsigned int irq_context : 2 ;
  601   unsigned int trylock : 1 ;
  602   unsigned int read : 2 ;
  603   unsigned int check : 2 ;
  604   unsigned int hardirqs_off : 1 ;
  605   unsigned int references : 11 ;
  606};
  607#line 20 "include/linux/spinlock_types.h"
  608struct raw_spinlock {
  609   arch_spinlock_t raw_lock ;
  610   unsigned int magic ;
  611   unsigned int owner_cpu ;
  612   void *owner ;
  613   struct lockdep_map dep_map ;
  614};
  615#line 20 "include/linux/spinlock_types.h"
  616typedef struct raw_spinlock raw_spinlock_t;
  617#line 64 "include/linux/spinlock_types.h"
  618struct __anonstruct____missing_field_name_38 {
  619   u8 __padding[(unsigned int )(& ((struct raw_spinlock *)0)->dep_map)] ;
  620   struct lockdep_map dep_map ;
  621};
  622#line 64 "include/linux/spinlock_types.h"
  623union __anonunion____missing_field_name_37 {
  624   struct raw_spinlock rlock ;
  625   struct __anonstruct____missing_field_name_38 __annonCompField17 ;
  626};
  627#line 64 "include/linux/spinlock_types.h"
  628struct spinlock {
  629   union __anonunion____missing_field_name_37 __annonCompField18 ;
  630};
  631#line 64 "include/linux/spinlock_types.h"
  632typedef struct spinlock spinlock_t;
  633#line 11 "include/linux/rwlock_types.h"
  634struct __anonstruct_rwlock_t_39 {
  635   arch_rwlock_t raw_lock ;
  636   unsigned int magic ;
  637   unsigned int owner_cpu ;
  638   void *owner ;
  639   struct lockdep_map dep_map ;
  640};
  641#line 11 "include/linux/rwlock_types.h"
  642typedef struct __anonstruct_rwlock_t_39 rwlock_t;
  643#line 33 "include/linux/seqlock.h"
  644struct __anonstruct_seqlock_t_40 {
  645   unsigned int sequence ;
  646   spinlock_t lock ;
  647};
  648#line 33 "include/linux/seqlock.h"
  649typedef struct __anonstruct_seqlock_t_40 seqlock_t;
  650#line 119 "include/linux/seqlock.h"
  651struct seqcount {
  652   unsigned int sequence ;
  653};
  654#line 119 "include/linux/seqlock.h"
  655typedef struct seqcount seqcount_t;
  656#line 14 "include/linux/time.h"
  657struct timespec {
  658   __kernel_time_t tv_sec ;
  659   long tv_nsec ;
  660};
  661#line 10 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/signal.h"
  662struct siginfo;
  663#line 10
  664struct siginfo;
  665#line 10
  666struct siginfo;
  667#line 10
  668struct siginfo;
  669#line 30 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/signal.h"
  670struct __anonstruct_sigset_t_41 {
  671   unsigned long sig[1] ;
  672};
  673#line 30 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/signal.h"
  674typedef struct __anonstruct_sigset_t_41 sigset_t;
  675#line 17 "include/asm-generic/signal-defs.h"
  676typedef void __signalfn_t(int  );
  677#line 18 "include/asm-generic/signal-defs.h"
  678typedef __signalfn_t *__sighandler_t;
  679#line 20 "include/asm-generic/signal-defs.h"
  680typedef void __restorefn_t(void);
  681#line 21 "include/asm-generic/signal-defs.h"
  682typedef __restorefn_t *__sigrestore_t;
  683#line 167 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/signal.h"
  684struct sigaction {
  685   __sighandler_t sa_handler ;
  686   unsigned long sa_flags ;
  687   __sigrestore_t sa_restorer ;
  688   sigset_t sa_mask ;
  689};
  690#line 174 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/signal.h"
  691struct k_sigaction {
  692   struct sigaction sa ;
  693};
  694#line 7 "include/asm-generic/siginfo.h"
  695union sigval {
  696   int sival_int ;
  697   void *sival_ptr ;
  698};
  699#line 7 "include/asm-generic/siginfo.h"
  700typedef union sigval sigval_t;
  701#line 40 "include/asm-generic/siginfo.h"
  702struct __anonstruct__kill_43 {
  703   __kernel_pid_t _pid ;
  704   __kernel_uid32_t _uid ;
  705};
  706#line 40 "include/asm-generic/siginfo.h"
  707struct __anonstruct__timer_44 {
  708   __kernel_timer_t _tid ;
  709   int _overrun ;
  710   char _pad[sizeof(__kernel_uid32_t ) - sizeof(int )] ;
  711   sigval_t _sigval ;
  712   int _sys_private ;
  713};
  714#line 40 "include/asm-generic/siginfo.h"
  715struct __anonstruct__rt_45 {
  716   __kernel_pid_t _pid ;
  717   __kernel_uid32_t _uid ;
  718   sigval_t _sigval ;
  719};
  720#line 40 "include/asm-generic/siginfo.h"
  721struct __anonstruct__sigchld_46 {
  722   __kernel_pid_t _pid ;
  723   __kernel_uid32_t _uid ;
  724   int _status ;
  725   __kernel_clock_t _utime ;
  726   __kernel_clock_t _stime ;
  727};
  728#line 40 "include/asm-generic/siginfo.h"
  729struct __anonstruct__sigfault_47 {
  730   void *_addr ;
  731   short _addr_lsb ;
  732};
  733#line 40 "include/asm-generic/siginfo.h"
  734struct __anonstruct__sigpoll_48 {
  735   long _band ;
  736   int _fd ;
  737};
  738#line 40 "include/asm-generic/siginfo.h"
  739union __anonunion__sifields_42 {
  740   int _pad[(128UL - 4UL * sizeof(int )) / sizeof(int )] ;
  741   struct __anonstruct__kill_43 _kill ;
  742   struct __anonstruct__timer_44 _timer ;
  743   struct __anonstruct__rt_45 _rt ;
  744   struct __anonstruct__sigchld_46 _sigchld ;
  745   struct __anonstruct__sigfault_47 _sigfault ;
  746   struct __anonstruct__sigpoll_48 _sigpoll ;
  747};
  748#line 40 "include/asm-generic/siginfo.h"
  749struct siginfo {
  750   int si_signo ;
  751   int si_errno ;
  752   int si_code ;
  753   union __anonunion__sifields_42 _sifields ;
  754};
  755#line 40 "include/asm-generic/siginfo.h"
  756typedef struct siginfo siginfo_t;
  757#line 280
  758struct siginfo;
  759#line 10 "include/linux/signal.h"
  760struct task_struct;
  761#line 18
  762struct user_struct;
  763#line 18
  764struct user_struct;
  765#line 18
  766struct user_struct;
  767#line 28 "include/linux/signal.h"
  768struct sigpending {
  769   struct list_head list ;
  770   sigset_t signal ;
  771};
  772#line 239
  773struct timespec;
  774#line 240
  775struct pt_regs;
  776#line 50 "include/linux/wait.h"
  777struct __wait_queue_head {
  778   spinlock_t lock ;
  779   struct list_head task_list ;
  780};
  781#line 54 "include/linux/wait.h"
  782typedef struct __wait_queue_head wait_queue_head_t;
  783#line 56
  784struct task_struct;
  785#line 96 "include/linux/nodemask.h"
  786struct __anonstruct_nodemask_t_51 {
  787   unsigned long bits[(((unsigned long )(1 << 10) + 8UL * sizeof(long )) - 1UL) / (8UL * sizeof(long ))] ;
  788};
  789#line 96 "include/linux/nodemask.h"
  790typedef struct __anonstruct_nodemask_t_51 nodemask_t;
  791#line 60 "include/linux/pageblock-flags.h"
  792struct page;
  793#line 48 "include/linux/mutex.h"
  794struct mutex {
  795   atomic_t count ;
  796   spinlock_t wait_lock ;
  797   struct list_head wait_list ;
  798   struct task_struct *owner ;
  799   char const   *name ;
  800   void *magic ;
  801   struct lockdep_map dep_map ;
  802};
  803#line 69 "include/linux/mutex.h"
  804struct mutex_waiter {
  805   struct list_head list ;
  806   struct task_struct *task ;
  807   void *magic ;
  808};
  809#line 20 "include/linux/rwsem.h"
  810struct rw_semaphore;
  811#line 20
  812struct rw_semaphore;
  813#line 20
  814struct rw_semaphore;
  815#line 20
  816struct rw_semaphore;
  817#line 26 "include/linux/rwsem.h"
  818struct rw_semaphore {
  819   long count ;
  820   spinlock_t wait_lock ;
  821   struct list_head wait_list ;
  822   struct lockdep_map dep_map ;
  823};
  824#line 8 "include/linux/memory_hotplug.h"
  825struct page;
  826#line 768 "include/linux/mmzone.h"
  827struct ctl_table;
  828#line 768
  829struct ctl_table;
  830#line 768
  831struct ctl_table;
  832#line 768
  833struct ctl_table;
  834#line 177 "include/linux/ioport.h"
  835struct device;
  836#line 177
  837struct device;
  838#line 177
  839struct device;
  840#line 177
  841struct device;
  842#line 103 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/mpspec.h"
  843struct device;
  844#line 46 "include/linux/ktime.h"
  845union ktime {
  846   s64 tv64 ;
  847};
  848#line 59 "include/linux/ktime.h"
  849typedef union ktime ktime_t;
  850#line 10 "include/linux/timer.h"
  851struct tvec_base;
  852#line 10
  853struct tvec_base;
  854#line 10
  855struct tvec_base;
  856#line 10
  857struct tvec_base;
  858#line 12 "include/linux/timer.h"
  859struct timer_list {
  860   struct list_head entry ;
  861   unsigned long expires ;
  862   struct tvec_base *base ;
  863   void (*function)(unsigned long  ) ;
  864   unsigned long data ;
  865   int slack ;
  866   int start_pid ;
  867   void *start_site ;
  868   char start_comm[16] ;
  869   struct lockdep_map lockdep_map ;
  870};
  871#line 289
  872struct hrtimer;
  873#line 289
  874struct hrtimer;
  875#line 289
  876struct hrtimer;
  877#line 289
  878struct hrtimer;
  879#line 290
  880enum hrtimer_restart;
  881#line 290
  882enum hrtimer_restart;
  883#line 290
  884enum hrtimer_restart;
  885#line 17 "include/linux/workqueue.h"
  886struct work_struct;
  887#line 17
  888struct work_struct;
  889#line 17
  890struct work_struct;
  891#line 17
  892struct work_struct;
  893#line 79 "include/linux/workqueue.h"
  894struct work_struct {
  895   atomic_long_t data ;
  896   struct list_head entry ;
  897   void (*func)(struct work_struct *work ) ;
  898   struct lockdep_map lockdep_map ;
  899};
  900#line 92 "include/linux/workqueue.h"
  901struct delayed_work {
  902   struct work_struct work ;
  903   struct timer_list timer ;
  904};
  905#line 25 "include/linux/completion.h"
  906struct completion {
  907   unsigned int done ;
  908   wait_queue_head_t wait ;
  909};
  910#line 42 "include/linux/pm.h"
  911struct device;
  912#line 50 "include/linux/pm.h"
  913struct pm_message {
  914   int event ;
  915};
  916#line 50 "include/linux/pm.h"
  917typedef struct pm_message pm_message_t;
  918#line 204 "include/linux/pm.h"
  919struct dev_pm_ops {
  920   int (*prepare)(struct device *dev ) ;
  921   void (*complete)(struct device *dev ) ;
  922   int (*suspend)(struct device *dev ) ;
  923   int (*resume)(struct device *dev ) ;
  924   int (*freeze)(struct device *dev ) ;
  925   int (*thaw)(struct device *dev ) ;
  926   int (*poweroff)(struct device *dev ) ;
  927   int (*restore)(struct device *dev ) ;
  928   int (*suspend_noirq)(struct device *dev ) ;
  929   int (*resume_noirq)(struct device *dev ) ;
  930   int (*freeze_noirq)(struct device *dev ) ;
  931   int (*thaw_noirq)(struct device *dev ) ;
  932   int (*poweroff_noirq)(struct device *dev ) ;
  933   int (*restore_noirq)(struct device *dev ) ;
  934   int (*runtime_suspend)(struct device *dev ) ;
  935   int (*runtime_resume)(struct device *dev ) ;
  936   int (*runtime_idle)(struct device *dev ) ;
  937};
  938#line 392
  939enum rpm_status {
  940    RPM_ACTIVE = 0,
  941    RPM_RESUMING = 1,
  942    RPM_SUSPENDED = 2,
  943    RPM_SUSPENDING = 3
  944} ;
  945#line 414
  946enum rpm_request {
  947    RPM_REQ_NONE = 0,
  948    RPM_REQ_IDLE = 1,
  949    RPM_REQ_SUSPEND = 2,
  950    RPM_REQ_AUTOSUSPEND = 3,
  951    RPM_REQ_RESUME = 4
  952} ;
  953#line 422
  954struct wakeup_source;
  955#line 422
  956struct wakeup_source;
  957#line 422
  958struct wakeup_source;
  959#line 422
  960struct wakeup_source;
  961#line 424 "include/linux/pm.h"
  962struct dev_pm_info {
  963   pm_message_t power_state ;
  964   unsigned int can_wakeup : 1 ;
  965   unsigned int async_suspend : 1 ;
  966   bool is_prepared : 1 ;
  967   bool is_suspended : 1 ;
  968   spinlock_t lock ;
  969   struct list_head entry ;
  970   struct completion completion ;
  971   struct wakeup_source *wakeup ;
  972   struct timer_list suspend_timer ;
  973   unsigned long timer_expires ;
  974   struct work_struct work ;
  975   wait_queue_head_t wait_queue ;
  976   atomic_t usage_count ;
  977   atomic_t child_count ;
  978   unsigned int disable_depth : 3 ;
  979   unsigned int ignore_children : 1 ;
  980   unsigned int idle_notification : 1 ;
  981   unsigned int request_pending : 1 ;
  982   unsigned int deferred_resume : 1 ;
  983   unsigned int run_wake : 1 ;
  984   unsigned int runtime_auto : 1 ;
  985   unsigned int no_callbacks : 1 ;
  986   unsigned int irq_safe : 1 ;
  987   unsigned int use_autosuspend : 1 ;
  988   unsigned int timer_autosuspends : 1 ;
  989   enum rpm_request request ;
  990   enum rpm_status runtime_status ;
  991   int runtime_error ;
  992   int autosuspend_delay ;
  993   unsigned long last_busy ;
  994   unsigned long active_jiffies ;
  995   unsigned long suspended_jiffies ;
  996   unsigned long accounting_timestamp ;
  997   void *subsys_data ;
  998};
  999#line 475 "include/linux/pm.h"
 1000struct dev_power_domain {
 1001   struct dev_pm_ops ops ;
 1002};
 1003#line 11 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/mmu.h"
 1004struct __anonstruct_mm_context_t_121 {
 1005   void *ldt ;
 1006   int size ;
 1007   unsigned short ia32_compat ;
 1008   struct mutex lock ;
 1009   void *vdso ;
 1010};
 1011#line 11 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/mmu.h"
 1012typedef struct __anonstruct_mm_context_t_121 mm_context_t;
 1013#line 8 "include/linux/vmalloc.h"
 1014struct vm_area_struct;
 1015#line 8
 1016struct vm_area_struct;
 1017#line 8
 1018struct vm_area_struct;
 1019#line 8
 1020struct vm_area_struct;
 1021#line 964 "include/linux/mmzone.h"
 1022struct page;
 1023#line 10 "include/linux/gfp.h"
 1024struct vm_area_struct;
 1025#line 20 "include/linux/kobject_ns.h"
 1026struct sock;
 1027#line 20
 1028struct sock;
 1029#line 20
 1030struct sock;
 1031#line 20
 1032struct sock;
 1033#line 21
 1034struct kobject;
 1035#line 21
 1036struct kobject;
 1037#line 21
 1038struct kobject;
 1039#line 21
 1040struct kobject;
 1041#line 27
 1042enum kobj_ns_type {
 1043    KOBJ_NS_TYPE_NONE = 0,
 1044    KOBJ_NS_TYPE_NET = 1,
 1045    KOBJ_NS_TYPES = 2
 1046} ;
 1047#line 40 "include/linux/kobject_ns.h"
 1048struct kobj_ns_type_operations {
 1049   enum kobj_ns_type type ;
 1050   void *(*grab_current_ns)(void) ;
 1051   void const   *(*netlink_ns)(struct sock *sk ) ;
 1052   void const   *(*initial_ns)(void) ;
 1053   void (*drop_ns)(void * ) ;
 1054};
 1055#line 22 "include/linux/sysfs.h"
 1056struct kobject;
 1057#line 23
 1058struct module;
 1059#line 24
 1060enum kobj_ns_type;
 1061#line 26 "include/linux/sysfs.h"
 1062struct attribute {
 1063   char const   *name ;
 1064   mode_t mode ;
 1065   struct lock_class_key *key ;
 1066   struct lock_class_key skey ;
 1067};
 1068#line 56 "include/linux/sysfs.h"
 1069struct attribute_group {
 1070   char const   *name ;
 1071   mode_t (*is_visible)(struct kobject * , struct attribute * , int  ) ;
 1072   struct attribute **attrs ;
 1073};
 1074#line 85
 1075struct file;
 1076#line 86
 1077struct vm_area_struct;
 1078#line 88 "include/linux/sysfs.h"
 1079struct bin_attribute {
 1080   struct attribute attr ;
 1081   size_t size ;
 1082   void *private ;
 1083   ssize_t (*read)(struct file * , struct kobject * , struct bin_attribute * , char * ,
 1084                   loff_t  , size_t  ) ;
 1085   ssize_t (*write)(struct file * , struct kobject * , struct bin_attribute * , char * ,
 1086                    loff_t  , size_t  ) ;
 1087   int (*mmap)(struct file * , struct kobject * , struct bin_attribute *attr , struct vm_area_struct *vma ) ;
 1088};
 1089#line 112 "include/linux/sysfs.h"
 1090struct sysfs_ops {
 1091   ssize_t (*show)(struct kobject * , struct attribute * , char * ) ;
 1092   ssize_t (*store)(struct kobject * , struct attribute * , char const   * , size_t  ) ;
 1093};
 1094#line 117
 1095struct sysfs_dirent;
 1096#line 117
 1097struct sysfs_dirent;
 1098#line 117
 1099struct sysfs_dirent;
 1100#line 117
 1101struct sysfs_dirent;
 1102#line 20 "include/linux/kref.h"
 1103struct kref {
 1104   atomic_t refcount ;
 1105};
 1106#line 60 "include/linux/kobject.h"
 1107struct kset;
 1108#line 60
 1109struct kset;
 1110#line 60
 1111struct kset;
 1112#line 60
 1113struct kobj_type;
 1114#line 60
 1115struct kobj_type;
 1116#line 60
 1117struct kobj_type;
 1118#line 60 "include/linux/kobject.h"
 1119struct kobject {
 1120   char const   *name ;
 1121   struct list_head entry ;
 1122   struct kobject *parent ;
 1123   struct kset *kset ;
 1124   struct kobj_type *ktype ;
 1125   struct sysfs_dirent *sd ;
 1126   struct kref kref ;
 1127   unsigned int state_initialized : 1 ;
 1128   unsigned int state_in_sysfs : 1 ;
 1129   unsigned int state_add_uevent_sent : 1 ;
 1130   unsigned int state_remove_uevent_sent : 1 ;
 1131   unsigned int uevent_suppress : 1 ;
 1132};
 1133#line 110 "include/linux/kobject.h"
 1134struct kobj_type {
 1135   void (*release)(struct kobject *kobj ) ;
 1136   struct sysfs_ops  const  *sysfs_ops ;
 1137   struct attribute **default_attrs ;
 1138   struct kobj_ns_type_operations  const  *(*child_ns_type)(struct kobject *kobj ) ;
 1139   void const   *(*namespace)(struct kobject *kobj ) ;
 1140};
 1141#line 118 "include/linux/kobject.h"
 1142struct kobj_uevent_env {
 1143   char *envp[32] ;
 1144   int envp_idx ;
 1145   char buf[2048] ;
 1146   int buflen ;
 1147};
 1148#line 125 "include/linux/kobject.h"
 1149struct kset_uevent_ops {
 1150   int (* const  filter)(struct kset *kset , struct kobject *kobj ) ;
 1151   char const   *(* const  name)(struct kset *kset , struct kobject *kobj ) ;
 1152   int (* const  uevent)(struct kset *kset , struct kobject *kobj , struct kobj_uevent_env *env ) ;
 1153};
 1154#line 142
 1155struct sock;
 1156#line 161 "include/linux/kobject.h"
 1157struct kset {
 1158   struct list_head list ;
 1159   spinlock_t list_lock ;
 1160   struct kobject kobj ;
 1161   struct kset_uevent_ops  const  *uevent_ops ;
 1162};
 1163#line 38 "include/linux/slub_def.h"
 1164struct kmem_cache_cpu {
 1165   void **freelist ;
 1166   unsigned long tid ;
 1167   struct page *page ;
 1168   int node ;
 1169   unsigned int stat[19] ;
 1170};
 1171#line 48 "include/linux/slub_def.h"
 1172struct kmem_cache_node {
 1173   spinlock_t list_lock ;
 1174   unsigned long nr_partial ;
 1175   struct list_head partial ;
 1176   atomic_long_t nr_slabs ;
 1177   atomic_long_t total_objects ;
 1178   struct list_head full ;
 1179};
 1180#line 64 "include/linux/slub_def.h"
 1181struct kmem_cache_order_objects {
 1182   unsigned long x ;
 1183};
 1184#line 71 "include/linux/slub_def.h"
 1185struct kmem_cache {
 1186   struct kmem_cache_cpu *cpu_slab ;
 1187   unsigned long flags ;
 1188   unsigned long min_partial ;
 1189   int size ;
 1190   int objsize ;
 1191   int offset ;
 1192   struct kmem_cache_order_objects oo ;
 1193   struct kmem_cache_order_objects max ;
 1194   struct kmem_cache_order_objects min ;
 1195   gfp_t allocflags ;
 1196   int refcount ;
 1197   void (*ctor)(void * ) ;
 1198   int inuse ;
 1199   int align ;
 1200   int reserved ;
 1201   char const   *name ;
 1202   struct list_head list ;
 1203   struct kobject kobj ;
 1204   int remote_node_defrag_ratio ;
 1205   struct kmem_cache_node *node[1 << 10] ;
 1206};
 1207#line 62 "include/linux/stat.h"
 1208struct kstat {
 1209   u64 ino ;
 1210   dev_t dev ;
 1211   umode_t mode ;
 1212   unsigned int nlink ;
 1213   uid_t uid ;
 1214   gid_t gid ;
 1215   dev_t rdev ;
 1216   loff_t size ;
 1217   struct timespec atime ;
 1218   struct timespec mtime ;
 1219   struct timespec ctime ;
 1220   unsigned long blksize ;
 1221   unsigned long long blocks ;
 1222};
 1223#line 29 "include/linux/sysctl.h"
 1224struct completion;
 1225#line 72 "include/linux/rcupdate.h"
 1226struct rcu_head {
 1227   struct rcu_head *next ;
 1228   void (*func)(struct rcu_head *head ) ;
 1229};
 1230#line 936 "include/linux/sysctl.h"
 1231struct ctl_table;
 1232#line 937
 1233struct nsproxy;
 1234#line 937
 1235struct nsproxy;
 1236#line 937
 1237struct nsproxy;
 1238#line 937
 1239struct nsproxy;
 1240#line 938
 1241struct ctl_table_root;
 1242#line 938
 1243struct ctl_table_root;
 1244#line 938
 1245struct ctl_table_root;
 1246#line 938
 1247struct ctl_table_root;
 1248#line 940 "include/linux/sysctl.h"
 1249struct ctl_table_set {
 1250   struct list_head list ;
 1251   struct ctl_table_set *parent ;
 1252   int (*is_seen)(struct ctl_table_set * ) ;
 1253};
 1254#line 950
 1255struct ctl_table_header;
 1256#line 950
 1257struct ctl_table_header;
 1258#line 950
 1259struct ctl_table_header;
 1260#line 950
 1261struct ctl_table_header;
 1262#line 965 "include/linux/sysctl.h"
 1263typedef int proc_handler(struct ctl_table *ctl , int write , void *buffer , size_t *lenp ,
 1264                         loff_t *ppos );
 1265#line 1015 "include/linux/sysctl.h"
 1266struct ctl_table {
 1267   char const   *procname ;
 1268   void *data ;
 1269   int maxlen ;
 1270   mode_t mode ;
 1271   struct ctl_table *child ;
 1272   struct ctl_table *parent ;
 1273   proc_handler *proc_handler ;
 1274   void *extra1 ;
 1275   void *extra2 ;
 1276};
 1277#line 1028 "include/linux/sysctl.h"
 1278struct ctl_table_root {
 1279   struct list_head root_list ;
 1280   struct ctl_table_set default_set ;
 1281   struct ctl_table_set *(*lookup)(struct ctl_table_root *root , struct nsproxy *namespaces ) ;
 1282   int (*permissions)(struct ctl_table_root *root , struct nsproxy *namespaces , struct ctl_table *table ) ;
 1283};
 1284#line 1039 "include/linux/sysctl.h"
 1285struct __anonstruct____missing_field_name_200 {
 1286   struct ctl_table *ctl_table ;
 1287   struct list_head ctl_entry ;
 1288   int used ;
 1289   int count ;
 1290};
 1291#line 1039 "include/linux/sysctl.h"
 1292union __anonunion____missing_field_name_199 {
 1293   struct __anonstruct____missing_field_name_200 __annonCompField29 ;
 1294   struct rcu_head rcu ;
 1295};
 1296#line 1039 "include/linux/sysctl.h"
 1297struct ctl_table_header {
 1298   union __anonunion____missing_field_name_199 __annonCompField30 ;
 1299   struct completion *unregistering ;
 1300   struct ctl_table *ctl_table_arg ;
 1301   struct ctl_table_root *root ;
 1302   struct ctl_table_set *set ;
 1303   struct ctl_table *attached_by ;
 1304   struct ctl_table *attached_to ;
 1305   struct ctl_table_header *parent ;
 1306};
 1307#line 48 "include/linux/kmod.h"
 1308struct cred;
 1309#line 48
 1310struct cred;
 1311#line 48
 1312struct cred;
 1313#line 48
 1314struct cred;
 1315#line 49
 1316struct file;
 1317#line 264 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/elf.h"
 1318struct task_struct;
 1319#line 10 "include/linux/elf.h"
 1320struct file;
 1321#line 27 "include/linux/elf.h"
 1322typedef __u64 Elf64_Addr;
 1323#line 28 "include/linux/elf.h"
 1324typedef __u16 Elf64_Half;
 1325#line 32 "include/linux/elf.h"
 1326typedef __u32 Elf64_Word;
 1327#line 33 "include/linux/elf.h"
 1328typedef __u64 Elf64_Xword;
 1329#line 203 "include/linux/elf.h"
 1330struct elf64_sym {
 1331   Elf64_Word st_name ;
 1332   unsigned char st_info ;
 1333   unsigned char st_other ;
 1334   Elf64_Half st_shndx ;
 1335   Elf64_Addr st_value ;
 1336   Elf64_Xword st_size ;
 1337};
 1338#line 203 "include/linux/elf.h"
 1339typedef struct elf64_sym Elf64_Sym;
 1340#line 34 "include/linux/moduleparam.h"
 1341struct kernel_param;
 1342#line 34
 1343struct kernel_param;
 1344#line 34
 1345struct kernel_param;
 1346#line 34
 1347struct kernel_param;
 1348#line 36 "include/linux/moduleparam.h"
 1349struct kernel_param_ops {
 1350   int (*set)(char const   *val , struct kernel_param  const  *kp ) ;
 1351   int (*get)(char *buffer , struct kernel_param  const  *kp ) ;
 1352   void (*free)(void *arg ) ;
 1353};
 1354#line 48
 1355struct kparam_string;
 1356#line 48
 1357struct kparam_string;
 1358#line 48
 1359struct kparam_string;
 1360#line 48
 1361struct kparam_array;
 1362#line 48
 1363struct kparam_array;
 1364#line 48
 1365struct kparam_array;
 1366#line 48 "include/linux/moduleparam.h"
 1367union __anonunion____missing_field_name_205 {
 1368   void *arg ;
 1369   struct kparam_string  const  *str ;
 1370   struct kparam_array  const  *arr ;
 1371};
 1372#line 48 "include/linux/moduleparam.h"
 1373struct kernel_param {
 1374   char const   *name ;
 1375   struct kernel_param_ops  const  *ops ;
 1376   u16 perm ;
 1377   u16 flags ;
 1378   union __anonunion____missing_field_name_205 __annonCompField31 ;
 1379};
 1380#line 61 "include/linux/moduleparam.h"
 1381struct kparam_string {
 1382   unsigned int maxlen ;
 1383   char *string ;
 1384};
 1385#line 67 "include/linux/moduleparam.h"
 1386struct kparam_array {
 1387   unsigned int max ;
 1388   unsigned int elemsize ;
 1389   unsigned int *num ;
 1390   struct kernel_param_ops  const  *ops ;
 1391   void *elem ;
 1392};
 1393#line 391
 1394struct module;
 1395#line 26 "include/linux/jump_label.h"
 1396struct module;
 1397#line 61 "include/linux/jump_label.h"
 1398struct jump_label_key {
 1399   atomic_t enabled ;
 1400};
 1401#line 22 "include/linux/tracepoint.h"
 1402struct module;
 1403#line 23
 1404struct tracepoint;
 1405#line 23
 1406struct tracepoint;
 1407#line 23
 1408struct tracepoint;
 1409#line 23
 1410struct tracepoint;
 1411#line 25 "include/linux/tracepoint.h"
 1412struct tracepoint_func {
 1413   void *func ;
 1414   void *data ;
 1415};
 1416#line 30 "include/linux/tracepoint.h"
 1417struct tracepoint {
 1418   char const   *name ;
 1419   struct jump_label_key key ;
 1420   void (*regfunc)(void) ;
 1421   void (*unregfunc)(void) ;
 1422   struct tracepoint_func *funcs ;
 1423};
 1424#line 8 "include/asm-generic/module.h"
 1425struct mod_arch_specific {
 1426
 1427};
 1428#line 21 "include/trace/events/module.h"
 1429struct module;
 1430#line 37 "include/linux/module.h"
 1431struct kernel_symbol {
 1432   unsigned long value ;
 1433   char const   *name ;
 1434};
 1435#line 49
 1436struct module;
 1437#line 51 "include/linux/module.h"
 1438struct module_attribute {
 1439   struct attribute attr ;
 1440   ssize_t (*show)(struct module_attribute * , struct module * , char * ) ;
 1441   ssize_t (*store)(struct module_attribute * , struct module * , char const   * ,
 1442                    size_t count ) ;
 1443   void (*setup)(struct module * , char const   * ) ;
 1444   int (*test)(struct module * ) ;
 1445   void (*free)(struct module * ) ;
 1446};
 1447#line 70
 1448struct module_param_attrs;
 1449#line 70
 1450struct module_param_attrs;
 1451#line 70
 1452struct module_param_attrs;
 1453#line 70 "include/linux/module.h"
 1454struct module_kobject {
 1455   struct kobject kobj ;
 1456   struct module *mod ;
 1457   struct kobject *drivers_dir ;
 1458   struct module_param_attrs *mp ;
 1459};
 1460#line 83
 1461struct exception_table_entry;
 1462#line 83
 1463struct exception_table_entry;
 1464#line 83
 1465struct exception_table_entry;
 1466#line 83
 1467struct exception_table_entry;
 1468#line 265
 1469enum module_state {
 1470    MODULE_STATE_LIVE = 0,
 1471    MODULE_STATE_COMING = 1,
 1472    MODULE_STATE_GOING = 2
 1473} ;
 1474#line 272
 1475struct module_sect_attrs;
 1476#line 272
 1477struct module_sect_attrs;
 1478#line 272
 1479struct module_sect_attrs;
 1480#line 272
 1481struct module_notes_attrs;
 1482#line 272
 1483struct module_notes_attrs;
 1484#line 272
 1485struct module_notes_attrs;
 1486#line 272
 1487struct ftrace_event_call;
 1488#line 272
 1489struct ftrace_event_call;
 1490#line 272
 1491struct ftrace_event_call;
 1492#line 272 "include/linux/module.h"
 1493struct module_ref {
 1494   unsigned int incs ;
 1495   unsigned int decs ;
 1496};
 1497#line 272 "include/linux/module.h"
 1498struct module {
 1499   enum module_state state ;
 1500   struct list_head list ;
 1501   char name[64UL - sizeof(unsigned long )] ;
 1502   struct module_kobject mkobj ;
 1503   struct module_attribute *modinfo_attrs ;
 1504   char const   *version ;
 1505   char const   *srcversion ;
 1506   struct kobject *holders_dir ;
 1507   struct kernel_symbol  const  *syms ;
 1508   unsigned long const   *crcs ;
 1509   unsigned int num_syms ;
 1510   struct kernel_param *kp ;
 1511   unsigned int num_kp ;
 1512   unsigned int num_gpl_syms ;
 1513   struct kernel_symbol  const  *gpl_syms ;
 1514   unsigned long const   *gpl_crcs ;
 1515   struct kernel_symbol  const  *unused_syms ;
 1516   unsigned long const   *unused_crcs ;
 1517   unsigned int num_unused_syms ;
 1518   unsigned int num_unused_gpl_syms ;
 1519   struct kernel_symbol  const  *unused_gpl_syms ;
 1520   unsigned long const   *unused_gpl_crcs ;
 1521   struct kernel_symbol  const  *gpl_future_syms ;
 1522   unsigned long const   *gpl_future_crcs ;
 1523   unsigned int num_gpl_future_syms ;
 1524   unsigned int num_exentries ;
 1525   struct exception_table_entry *extable ;
 1526   int (*init)(void) ;
 1527   void *module_init ;
 1528   void *module_core ;
 1529   unsigned int init_size ;
 1530   unsigned int core_size ;
 1531   unsigned int init_text_size ;
 1532   unsigned int core_text_size ;
 1533   unsigned int init_ro_size ;
 1534   unsigned int core_ro_size ;
 1535   struct mod_arch_specific arch ;
 1536   unsigned int taints ;
 1537   unsigned int num_bugs ;
 1538   struct list_head bug_list ;
 1539   struct bug_entry *bug_table ;
 1540   Elf64_Sym *symtab ;
 1541   Elf64_Sym *core_symtab ;
 1542   unsigned int num_symtab ;
 1543   unsigned int core_num_syms ;
 1544   char *strtab ;
 1545   char *core_strtab ;
 1546   struct module_sect_attrs *sect_attrs ;
 1547   struct module_notes_attrs *notes_attrs ;
 1548   char *args ;
 1549   void *percpu ;
 1550   unsigned int percpu_size ;
 1551   unsigned int num_tracepoints ;
 1552   struct tracepoint * const  *tracepoints_ptrs ;
 1553   unsigned int num_trace_bprintk_fmt ;
 1554   char const   **trace_bprintk_fmt_start ;
 1555   struct ftrace_event_call **trace_events ;
 1556   unsigned int num_trace_events ;
 1557   unsigned int num_ftrace_callsites ;
 1558   unsigned long *ftrace_callsites ;
 1559   struct list_head source_list ;
 1560   struct list_head target_list ;
 1561   struct task_struct *waiter ;
 1562   void (*exit)(void) ;
 1563   struct module_ref *refptr ;
 1564   ctor_fn_t *ctors ;
 1565   unsigned int num_ctors ;
 1566};
 1567#line 11 "include/linux/socket.h"
 1568struct sockaddr;
 1569#line 11
 1570struct sockaddr;
 1571#line 11
 1572struct sockaddr;
 1573#line 16 "include/linux/uio.h"
 1574struct iovec {
 1575   void *iov_base ;
 1576   __kernel_size_t iov_len ;
 1577};
 1578#line 27 "include/linux/socket.h"
 1579struct pid;
 1580#line 28
 1581struct cred;
 1582#line 34
 1583struct seq_file;
 1584#line 38 "include/linux/socket.h"
 1585typedef unsigned short sa_family_t;
 1586#line 44 "include/linux/socket.h"
 1587struct sockaddr {
 1588   sa_family_t sa_family ;
 1589   char sa_data[14] ;
 1590};
 1591#line 332
 1592struct timespec;
 1593#line 37 "include/linux/hdlc/ioctl.h"
 1594struct __anonstruct_sync_serial_settings_207 {
 1595   unsigned int clock_rate ;
 1596   unsigned int clock_type ;
 1597   unsigned short loopback ;
 1598};
 1599#line 37 "include/linux/hdlc/ioctl.h"
 1600typedef struct __anonstruct_sync_serial_settings_207 sync_serial_settings;
 1601#line 43 "include/linux/hdlc/ioctl.h"
 1602struct __anonstruct_te1_settings_208 {
 1603   unsigned int clock_rate ;
 1604   unsigned int clock_type ;
 1605   unsigned short loopback ;
 1606   unsigned int slot_map ;
 1607};
 1608#line 43 "include/linux/hdlc/ioctl.h"
 1609typedef struct __anonstruct_te1_settings_208 te1_settings;
 1610#line 50 "include/linux/hdlc/ioctl.h"
 1611struct __anonstruct_raw_hdlc_proto_209 {
 1612   unsigned short encoding ;
 1613   unsigned short parity ;
 1614};
 1615#line 50 "include/linux/hdlc/ioctl.h"
 1616typedef struct __anonstruct_raw_hdlc_proto_209 raw_hdlc_proto;
 1617#line 55 "include/linux/hdlc/ioctl.h"
 1618struct __anonstruct_fr_proto_210 {
 1619   unsigned int t391 ;
 1620   unsigned int t392 ;
 1621   unsigned int n391 ;
 1622   unsigned int n392 ;
 1623   unsigned int n393 ;
 1624   unsigned short lmi ;
 1625   unsigned short dce ;
 1626};
 1627#line 55 "include/linux/hdlc/ioctl.h"
 1628typedef struct __anonstruct_fr_proto_210 fr_proto;
 1629#line 65 "include/linux/hdlc/ioctl.h"
 1630struct __anonstruct_fr_proto_pvc_211 {
 1631   unsigned int dlci ;
 1632};
 1633#line 65 "include/linux/hdlc/ioctl.h"
 1634typedef struct __anonstruct_fr_proto_pvc_211 fr_proto_pvc;
 1635#line 69 "include/linux/hdlc/ioctl.h"
 1636struct __anonstruct_fr_proto_pvc_info_212 {
 1637   unsigned int dlci ;
 1638   char master[16] ;
 1639};
 1640#line 69 "include/linux/hdlc/ioctl.h"
 1641typedef struct __anonstruct_fr_proto_pvc_info_212 fr_proto_pvc_info;
 1642#line 74 "include/linux/hdlc/ioctl.h"
 1643struct __anonstruct_cisco_proto_213 {
 1644   unsigned int interval ;
 1645   unsigned int timeout ;
 1646};
 1647#line 74 "include/linux/hdlc/ioctl.h"
 1648typedef struct __anonstruct_cisco_proto_213 cisco_proto;
 1649#line 134 "include/linux/if.h"
 1650struct ifmap {
 1651   unsigned long mem_start ;
 1652   unsigned long mem_end ;
 1653   unsigned short base_addr ;
 1654   unsigned char irq ;
 1655   unsigned char dma ;
 1656   unsigned char port ;
 1657};
 1658#line 144 "include/linux/if.h"
 1659union __anonunion_ifs_ifsu_216 {
 1660   raw_hdlc_proto *raw_hdlc ;
 1661   cisco_proto *cisco ;
 1662   fr_proto *fr ;
 1663   fr_proto_pvc *fr_pvc ;
 1664   fr_proto_pvc_info *fr_pvc_info ;
 1665   sync_serial_settings *sync ;
 1666   te1_settings *te1 ;
 1667};
 1668#line 144 "include/linux/if.h"
 1669struct if_settings {
 1670   unsigned int type ;
 1671   unsigned int size ;
 1672   union __anonunion_ifs_ifsu_216 ifs_ifsu ;
 1673};
 1674#line 168 "include/linux/if.h"
 1675union __anonunion_ifr_ifrn_217 {
 1676   char ifrn_name[16] ;
 1677};
 1678#line 168 "include/linux/if.h"
 1679union __anonunion_ifr_ifru_218 {
 1680   struct sockaddr ifru_addr ;
 1681   struct sockaddr ifru_dstaddr ;
 1682   struct sockaddr ifru_broadaddr ;
 1683   struct sockaddr ifru_netmask ;
 1684   struct sockaddr ifru_hwaddr ;
 1685   short ifru_flags ;
 1686   int ifru_ivalue ;
 1687   int ifru_mtu ;
 1688   struct ifmap ifru_map ;
 1689   char ifru_slave[16] ;
 1690   char ifru_newname[16] ;
 1691   void *ifru_data ;
 1692   struct if_settings ifru_settings ;
 1693};
 1694#line 168 "include/linux/if.h"
 1695struct ifreq {
 1696   union __anonunion_ifr_ifrn_217 ifr_ifrn ;
 1697   union __anonunion_ifr_ifru_218 ifr_ifru ;
 1698};
 1699#line 119 "include/linux/if_ether.h"
 1700struct ethhdr {
 1701   unsigned char h_dest[6] ;
 1702   unsigned char h_source[6] ;
 1703   __be16 h_proto ;
 1704} __attribute__((__packed__)) ;
 1705#line 14 "include/linux/prio_tree.h"
 1706struct prio_tree_node;
 1707#line 14
 1708struct prio_tree_node;
 1709#line 14
 1710struct prio_tree_node;
 1711#line 14 "include/linux/prio_tree.h"
 1712struct raw_prio_tree_node {
 1713   struct prio_tree_node *left ;
 1714   struct prio_tree_node *right ;
 1715   struct prio_tree_node *parent ;
 1716};
 1717#line 20 "include/linux/prio_tree.h"
 1718struct prio_tree_node {
 1719   struct prio_tree_node *left ;
 1720   struct prio_tree_node *right ;
 1721   struct prio_tree_node *parent ;
 1722   unsigned long start ;
 1723   unsigned long last ;
 1724};
 1725#line 28 "include/linux/prio_tree.h"
 1726struct prio_tree_root {
 1727   struct prio_tree_node *prio_tree_node ;
 1728   unsigned short index_bits ;
 1729   unsigned short raw ;
 1730};
 1731#line 100 "include/linux/rbtree.h"
 1732struct rb_node {
 1733   unsigned long rb_parent_color ;
 1734   struct rb_node *rb_right ;
 1735   struct rb_node *rb_left ;
 1736} __attribute__((__aligned__(sizeof(long )))) ;
 1737#line 110 "include/linux/rbtree.h"
 1738struct rb_root {
 1739   struct rb_node *rb_node ;
 1740};
 1741#line 23 "include/linux/mm_types.h"
 1742struct address_space;
 1743#line 23
 1744struct address_space;
 1745#line 23
 1746struct address_space;
 1747#line 23
 1748struct address_space;
 1749#line 34 "include/linux/mm_types.h"
 1750struct __anonstruct____missing_field_name_221 {
 1751   u16 inuse ;
 1752   u16 objects ;
 1753};
 1754#line 34 "include/linux/mm_types.h"
 1755union __anonunion____missing_field_name_220 {
 1756   atomic_t _mapcount ;
 1757   struct __anonstruct____missing_field_name_221 __annonCompField32 ;
 1758};
 1759#line 34 "include/linux/mm_types.h"
 1760struct __anonstruct____missing_field_name_223 {
 1761   unsigned long private ;
 1762   struct address_space *mapping ;
 1763};
 1764#line 34 "include/linux/mm_types.h"
 1765union __anonunion____missing_field_name_222 {
 1766   struct __anonstruct____missing_field_name_223 __annonCompField34 ;
 1767   struct kmem_cache *slab ;
 1768   struct page *first_page ;
 1769};
 1770#line 34 "include/linux/mm_types.h"
 1771union __anonunion____missing_field_name_224 {
 1772   unsigned long index ;
 1773   void *freelist ;
 1774};
 1775#line 34 "include/linux/mm_types.h"
 1776struct page {
 1777   unsigned long flags ;
 1778   atomic_t _count ;
 1779   union __anonunion____missing_field_name_220 __annonCompField33 ;
 1780   union __anonunion____missing_field_name_222 __annonCompField35 ;
 1781   union __anonunion____missing_field_name_224 __annonCompField36 ;
 1782   struct list_head lru ;
 1783};
 1784#line 132 "include/linux/mm_types.h"
 1785struct __anonstruct_vm_set_226 {
 1786   struct list_head list ;
 1787   void *parent ;
 1788   struct vm_area_struct *head ;
 1789};
 1790#line 132 "include/linux/mm_types.h"
 1791union __anonunion_shared_225 {
 1792   struct __anonstruct_vm_set_226 vm_set ;
 1793   struct raw_prio_tree_node prio_tree_node ;
 1794};
 1795#line 132
 1796struct anon_vma;
 1797#line 132
 1798struct anon_vma;
 1799#line 132
 1800struct anon_vma;
 1801#line 132
 1802struct vm_operations_struct;
 1803#line 132
 1804struct vm_operations_struct;
 1805#line 132
 1806struct vm_operations_struct;
 1807#line 132
 1808struct mempolicy;
 1809#line 132
 1810struct mempolicy;
 1811#line 132
 1812struct mempolicy;
 1813#line 132 "include/linux/mm_types.h"
 1814struct vm_area_struct {
 1815   struct mm_struct *vm_mm ;
 1816   unsigned long vm_start ;
 1817   unsigned long vm_end ;
 1818   struct vm_area_struct *vm_next ;
 1819   struct vm_area_struct *vm_prev ;
 1820   pgprot_t vm_page_prot ;
 1821   unsigned long vm_flags ;
 1822   struct rb_node vm_rb ;
 1823   union __anonunion_shared_225 shared ;
 1824   struct list_head anon_vma_chain ;
 1825   struct anon_vma *anon_vma ;
 1826   struct vm_operations_struct  const  *vm_ops ;
 1827   unsigned long vm_pgoff ;
 1828   struct file *vm_file ;
 1829   void *vm_private_data ;
 1830   struct mempolicy *vm_policy ;
 1831};
 1832#line 189 "include/linux/mm_types.h"
 1833struct core_thread {
 1834   struct task_struct *task ;
 1835   struct core_thread *next ;
 1836};
 1837#line 194 "include/linux/mm_types.h"
 1838struct core_state {
 1839   atomic_t nr_threads ;
 1840   struct core_thread dumper ;
 1841   struct completion startup ;
 1842};
 1843#line 216 "include/linux/mm_types.h"
 1844struct mm_rss_stat {
 1845   atomic_long_t count[3] ;
 1846};
 1847#line 220
 1848struct linux_binfmt;
 1849#line 220
 1850struct linux_binfmt;
 1851#line 220
 1852struct linux_binfmt;
 1853#line 220
 1854struct mmu_notifier_mm;
 1855#line 220
 1856struct mmu_notifier_mm;
 1857#line 220
 1858struct mmu_notifier_mm;
 1859#line 220 "include/linux/mm_types.h"
 1860struct mm_struct {
 1861   struct vm_area_struct *mmap ;
 1862   struct rb_root mm_rb ;
 1863   struct vm_area_struct *mmap_cache ;
 1864   unsigned long (*get_unmapped_area)(struct file *filp , unsigned long addr , unsigned long len ,
 1865                                      unsigned long pgoff , unsigned long flags ) ;
 1866   void (*unmap_area)(struct mm_struct *mm , unsigned long addr ) ;
 1867   unsigned long mmap_base ;
 1868   unsigned long task_size ;
 1869   unsigned long cached_hole_size ;
 1870   unsigned long free_area_cache ;
 1871   pgd_t *pgd ;
 1872   atomic_t mm_users ;
 1873   atomic_t mm_count ;
 1874   int map_count ;
 1875   spinlock_t page_table_lock ;
 1876   struct rw_semaphore mmap_sem ;
 1877   struct list_head mmlist ;
 1878   unsigned long hiwater_rss ;
 1879   unsigned long hiwater_vm ;
 1880   unsigned long total_vm ;
 1881   unsigned long locked_vm ;
 1882   unsigned long shared_vm ;
 1883   unsigned long exec_vm ;
 1884   unsigned long stack_vm ;
 1885   unsigned long reserved_vm ;
 1886   unsigned long def_flags ;
 1887   unsigned long nr_ptes ;
 1888   unsigned long start_code ;
 1889   unsigned long end_code ;
 1890   unsigned long start_data ;
 1891   unsigned long end_data ;
 1892   unsigned long start_brk ;
 1893   unsigned long brk ;
 1894   unsigned long start_stack ;
 1895   unsigned long arg_start ;
 1896   unsigned long arg_end ;
 1897   unsigned long env_start ;
 1898   unsigned long env_end ;
 1899   unsigned long saved_auxv[44] ;
 1900   struct mm_rss_stat rss_stat ;
 1901   struct linux_binfmt *binfmt ;
 1902   cpumask_var_t cpu_vm_mask_var ;
 1903   mm_context_t context ;
 1904   unsigned int faultstamp ;
 1905   unsigned int token_priority ;
 1906   unsigned int last_interval ;
 1907   atomic_t oom_disable_count ;
 1908   unsigned long flags ;
 1909   struct core_state *core_state ;
 1910   spinlock_t ioctx_lock ;
 1911   struct hlist_head ioctx_list ;
 1912   struct task_struct *owner ;
 1913   struct file *exe_file ;
 1914   unsigned long num_exe_file_vmas ;
 1915   struct mmu_notifier_mm *mmu_notifier_mm ;
 1916   pgtable_t pmd_huge_pte ;
 1917   struct cpumask cpumask_allocation ;
 1918};
 1919#line 65 "include/linux/net.h"
 1920struct poll_table_struct;
 1921#line 65
 1922struct poll_table_struct;
 1923#line 65
 1924struct poll_table_struct;
 1925#line 65
 1926struct poll_table_struct;
 1927#line 66
 1928struct pipe_inode_info;
 1929#line 66
 1930struct pipe_inode_info;
 1931#line 66
 1932struct pipe_inode_info;
 1933#line 66
 1934struct pipe_inode_info;
 1935#line 67
 1936struct inode;
 1937#line 67
 1938struct inode;
 1939#line 67
 1940struct inode;
 1941#line 67
 1942struct inode;
 1943#line 68
 1944struct net;
 1945#line 68
 1946struct net;
 1947#line 68
 1948struct net;
 1949#line 68
 1950struct net;
 1951#line 121
 1952struct fasync_struct;
 1953#line 121
 1954struct fasync_struct;
 1955#line 121
 1956struct fasync_struct;
 1957#line 154
 1958struct vm_area_struct;
 1959#line 155
 1960struct page;
 1961#line 156
 1962struct kiocb;
 1963#line 156
 1964struct kiocb;
 1965#line 156
 1966struct kiocb;
 1967#line 156
 1968struct kiocb;
 1969#line 157
 1970struct sockaddr;
 1971#line 159
 1972struct module;
 1973#line 221
 1974struct iovec;
 1975#line 94 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/uaccess.h"
 1976struct exception_table_entry {
 1977   unsigned long insn ;
 1978   unsigned long fixup ;
 1979};
 1980#line 109 "include/net/checksum.h"
 1981struct sk_buff;
 1982#line 109
 1983struct sk_buff;
 1984#line 109
 1985struct sk_buff;
 1986#line 109
 1987struct sk_buff;
 1988#line 19 "include/linux/klist.h"
 1989struct klist_node;
 1990#line 19
 1991struct klist_node;
 1992#line 19
 1993struct klist_node;
 1994#line 19
 1995struct klist_node;
 1996#line 39 "include/linux/klist.h"
 1997struct klist_node {
 1998   void *n_klist ;
 1999   struct list_head n_node ;
 2000   struct kref n_ref ;
 2001};
 2002#line 4 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/device.h"
 2003struct dma_map_ops;
 2004#line 4
 2005struct dma_map_ops;
 2006#line 4
 2007struct dma_map_ops;
 2008#line 4 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/device.h"
 2009struct dev_archdata {
 2010   void *acpi_handle ;
 2011   struct dma_map_ops *dma_ops ;
 2012   void *iommu ;
 2013};
 2014#line 28 "include/linux/device.h"
 2015struct device;
 2016#line 29
 2017struct device_private;
 2018#line 29
 2019struct device_private;
 2020#line 29
 2021struct device_private;
 2022#line 29
 2023struct device_private;
 2024#line 30
 2025struct device_driver;
 2026#line 30
 2027struct device_driver;
 2028#line 30
 2029struct device_driver;
 2030#line 30
 2031struct device_driver;
 2032#line 31
 2033struct driver_private;
 2034#line 31
 2035struct driver_private;
 2036#line 31
 2037struct driver_private;
 2038#line 31
 2039struct driver_private;
 2040#line 32
 2041struct class;
 2042#line 32
 2043struct class;
 2044#line 32
 2045struct class;
 2046#line 32
 2047struct class;
 2048#line 33
 2049struct subsys_private;
 2050#line 33
 2051struct subsys_private;
 2052#line 33
 2053struct subsys_private;
 2054#line 33
 2055struct subsys_private;
 2056#line 34
 2057struct bus_type;
 2058#line 34
 2059struct bus_type;
 2060#line 34
 2061struct bus_type;
 2062#line 34
 2063struct bus_type;
 2064#line 35
 2065struct device_node;
 2066#line 35
 2067struct device_node;
 2068#line 35
 2069struct device_node;
 2070#line 35
 2071struct device_node;
 2072#line 37 "include/linux/device.h"
 2073struct bus_attribute {
 2074   struct attribute attr ;
 2075   ssize_t (*show)(struct bus_type *bus , char *buf ) ;
 2076   ssize_t (*store)(struct bus_type *bus , char const   *buf , size_t count ) ;
 2077};
 2078#line 82
 2079struct device_attribute;
 2080#line 82
 2081struct device_attribute;
 2082#line 82
 2083struct device_attribute;
 2084#line 82
 2085struct driver_attribute;
 2086#line 82
 2087struct driver_attribute;
 2088#line 82
 2089struct driver_attribute;
 2090#line 82 "include/linux/device.h"
 2091struct bus_type {
 2092   char const   *name ;
 2093   struct bus_attribute *bus_attrs ;
 2094   struct device_attribute *dev_attrs ;
 2095   struct driver_attribute *drv_attrs ;
 2096   int (*match)(struct device *dev , struct device_driver *drv ) ;
 2097   int (*uevent)(struct device *dev , struct kobj_uevent_env *env ) ;
 2098   int (*probe)(struct device *dev ) ;
 2099   int (*remove)(struct device *dev ) ;
 2100   void (*shutdown)(struct device *dev ) ;
 2101   int (*suspend)(struct device *dev , pm_message_t state ) ;
 2102   int (*resume)(struct device *dev ) ;
 2103   struct dev_pm_ops  const  *pm ;
 2104   struct subsys_private *p ;
 2105};
 2106#line 185
 2107struct of_device_id;
 2108#line 185
 2109struct of_device_id;
 2110#line 185
 2111struct of_device_id;
 2112#line 185 "include/linux/device.h"
 2113struct device_driver {
 2114   char const   *name ;
 2115   struct bus_type *bus ;
 2116   struct module *owner ;
 2117   char const   *mod_name ;
 2118   bool suppress_bind_attrs ;
 2119   struct of_device_id  const  *of_match_table ;
 2120   int (*probe)(struct device *dev ) ;
 2121   int (*remove)(struct device *dev ) ;
 2122   void (*shutdown)(struct device *dev ) ;
 2123   int (*suspend)(struct device *dev , pm_message_t state ) ;
 2124   int (*resume)(struct device *dev ) ;
 2125   struct attribute_group  const  **groups ;
 2126   struct dev_pm_ops  const  *pm ;
 2127   struct driver_private *p ;
 2128};
 2129#line 222 "include/linux/device.h"
 2130struct driver_attribute {
 2131   struct attribute attr ;
 2132   ssize_t (*show)(struct device_driver *driver , char *buf ) ;
 2133   ssize_t (*store)(struct device_driver *driver , char const   *buf , size_t count ) ;
 2134};
 2135#line 280
 2136struct class_attribute;
 2137#line 280
 2138struct class_attribute;
 2139#line 280
 2140struct class_attribute;
 2141#line 280 "include/linux/device.h"
 2142struct class {
 2143   char const   *name ;
 2144   struct module *owner ;
 2145   struct class_attribute *class_attrs ;
 2146   struct device_attribute *dev_attrs ;
 2147   struct bin_attribute *dev_bin_attrs ;
 2148   struct kobject *dev_kobj ;
 2149   int (*dev_uevent)(struct device *dev , struct kobj_uevent_env *env ) ;
 2150   char *(*devnode)(struct device *dev , mode_t *mode ) ;
 2151   void (*class_release)(struct class *class ) ;
 2152   void (*dev_release)(struct device *dev ) ;
 2153   int (*suspend)(struct device *dev , pm_message_t state ) ;
 2154   int (*resume)(struct device *dev ) ;
 2155   struct kobj_ns_type_operations  const  *ns_type ;
 2156   void const   *(*namespace)(struct device *dev ) ;
 2157   struct dev_pm_ops  const  *pm ;
 2158   struct subsys_private *p ;
 2159};
 2160#line 306
 2161struct device_type;
 2162#line 306
 2163struct device_type;
 2164#line 306
 2165struct device_type;
 2166#line 347 "include/linux/device.h"
 2167struct class_attribute {
 2168   struct attribute attr ;
 2169   ssize_t (*show)(struct class *class , struct class_attribute *attr , char *buf ) ;
 2170   ssize_t (*store)(struct class *class , struct class_attribute *attr , char const   *buf ,
 2171                    size_t count ) ;
 2172};
 2173#line 413 "include/linux/device.h"
 2174struct device_type {
 2175   char const   *name ;
 2176   struct attribute_group  const  **groups ;
 2177   int (*uevent)(struct device *dev , struct kobj_uevent_env *env ) ;
 2178   char *(*devnode)(struct device *dev , mode_t *mode ) ;
 2179   void (*release)(struct device *dev ) ;
 2180   struct dev_pm_ops  const  *pm ;
 2181};
 2182#line 424 "include/linux/device.h"
 2183struct device_attribute {
 2184   struct attribute attr ;
 2185   ssize_t (*show)(struct device *dev , struct device_attribute *attr , char *buf ) ;
 2186   ssize_t (*store)(struct device *dev , struct device_attribute *attr , char const   *buf ,
 2187                    size_t count ) ;
 2188};
 2189#line 484 "include/linux/device.h"
 2190struct device_dma_parameters {
 2191   unsigned int max_segment_size ;
 2192   unsigned long segment_boundary_mask ;
 2193};
 2194#line 551
 2195struct dma_coherent_mem;
 2196#line 551
 2197struct dma_coherent_mem;
 2198#line 551
 2199struct dma_coherent_mem;
 2200#line 551 "include/linux/device.h"
 2201struct device {
 2202   struct device *parent ;
 2203   struct device_private *p ;
 2204   struct kobject kobj ;
 2205   char const   *init_name ;
 2206   struct device_type  const  *type ;
 2207   struct mutex mutex ;
 2208   struct bus_type *bus ;
 2209   struct device_driver *driver ;
 2210   void *platform_data ;
 2211   struct dev_pm_info power ;
 2212   struct dev_power_domain *pwr_domain ;
 2213   int numa_node ;
 2214   u64 *dma_mask ;
 2215   u64 coherent_dma_mask ;
 2216   struct device_dma_parameters *dma_parms ;
 2217   struct list_head dma_pools ;
 2218   struct dma_coherent_mem *dma_mem ;
 2219   struct dev_archdata archdata ;
 2220   struct device_node *of_node ;
 2221   dev_t devt ;
 2222   spinlock_t devres_lock ;
 2223   struct list_head devres_head ;
 2224   struct klist_node knode_class ;
 2225   struct class *class ;
 2226   struct attribute_group  const  **groups ;
 2227   void (*release)(struct device *dev ) ;
 2228};
 2229#line 43 "include/linux/pm_wakeup.h"
 2230struct wakeup_source {
 2231   char *name ;
 2232   struct list_head entry ;
 2233   spinlock_t lock ;
 2234   struct timer_list timer ;
 2235   unsigned long timer_expires ;
 2236   ktime_t total_time ;
 2237   ktime_t max_time ;
 2238   ktime_t last_time ;
 2239   unsigned long event_count ;
 2240   unsigned long active_count ;
 2241   unsigned long relax_count ;
 2242   unsigned long hit_count ;
 2243   unsigned int active : 1 ;
 2244};
 2245#line 12 "include/linux/bug.h"
 2246struct pt_regs;
 2247#line 25 "include/linux/dma-attrs.h"
 2248struct dma_attrs {
 2249   unsigned long flags[((2UL + 8UL * sizeof(long )) - 1UL) / (8UL * sizeof(long ))] ;
 2250};
 2251#line 6 "include/asm-generic/scatterlist.h"
 2252struct scatterlist {
 2253   unsigned long sg_magic ;
 2254   unsigned long page_link ;
 2255   unsigned int offset ;
 2256   unsigned int length ;
 2257   dma_addr_t dma_address ;
 2258   unsigned int dma_length ;
 2259};
 2260#line 19 "include/linux/mm.h"
 2261struct mempolicy;
 2262#line 20
 2263struct anon_vma;
 2264#line 21
 2265struct file_ra_state;
 2266#line 21
 2267struct file_ra_state;
 2268#line 21
 2269struct file_ra_state;
 2270#line 21
 2271struct file_ra_state;
 2272#line 22
 2273struct user_struct;
 2274#line 23
 2275struct writeback_control;
 2276#line 23
 2277struct writeback_control;
 2278#line 23
 2279struct writeback_control;
 2280#line 23
 2281struct writeback_control;
 2282#line 41 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/pgtable_64.h"
 2283struct mm_struct;
 2284#line 656 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/pgtable.h"
 2285struct vm_area_struct;
 2286#line 185 "include/linux/mm.h"
 2287struct vm_fault {
 2288   unsigned int flags ;
 2289   unsigned long pgoff ;
 2290   void *virtual_address ;
 2291   struct page *page ;
 2292};
 2293#line 202 "include/linux/mm.h"
 2294struct vm_operations_struct {
 2295   void (*open)(struct vm_area_struct *area ) ;
 2296   void (*close)(struct vm_area_struct *area ) ;
 2297   int (*fault)(struct vm_area_struct *vma , struct vm_fault *vmf ) ;
 2298   int (*page_mkwrite)(struct vm_area_struct *vma , struct vm_fault *vmf ) ;
 2299   int (*access)(struct vm_area_struct *vma , unsigned long addr , void *buf , int len ,
 2300                 int write ) ;
 2301   int (*set_policy)(struct vm_area_struct *vma , struct mempolicy *new ) ;
 2302   struct mempolicy *(*get_policy)(struct vm_area_struct *vma , unsigned long addr ) ;
 2303   int (*migrate)(struct vm_area_struct *vma , nodemask_t const   *from , nodemask_t const   *to ,
 2304                  unsigned long flags ) ;
 2305};
 2306#line 244
 2307struct inode;
 2308#line 197 "include/linux/page-flags.h"
 2309struct page;
 2310#line 11 "include/linux/dma-mapping.h"
 2311enum dma_data_direction {
 2312    DMA_BIDIRECTIONAL = 0,
 2313    DMA_TO_DEVICE = 1,
 2314    DMA_FROM_DEVICE = 2,
 2315    DMA_NONE = 3
 2316} ;
 2317#line 18 "include/linux/dma-mapping.h"
 2318struct dma_map_ops {
 2319   void *(*alloc_coherent)(struct device *dev , size_t size , dma_addr_t *dma_handle ,
 2320                           gfp_t gfp ) ;
 2321   void (*free_coherent)(struct device *dev , size_t size , void *vaddr , dma_addr_t dma_handle ) ;
 2322   dma_addr_t (*map_page)(struct device *dev , struct page *page , unsigned long offset ,
 2323                          size_t size , enum dma_data_direction dir , struct dma_attrs *attrs ) ;
 2324   void (*unmap_page)(struct device *dev , dma_addr_t dma_handle , size_t size , enum dma_data_direction dir ,
 2325                      struct dma_attrs *attrs ) ;
 2326   int (*map_sg)(struct device *dev , struct scatterlist *sg , int nents , enum dma_data_direction dir ,
 2327                 struct dma_attrs *attrs ) ;
 2328   void (*unmap_sg)(struct device *dev , struct scatterlist *sg , int nents , enum dma_data_direction dir ,
 2329                    struct dma_attrs *attrs ) ;
 2330   void (*sync_single_for_cpu)(struct device *dev , dma_addr_t dma_handle , size_t size ,
 2331                               enum dma_data_direction dir ) ;
 2332   void (*sync_single_for_device)(struct device *dev , dma_addr_t dma_handle , size_t size ,
 2333                                  enum dma_data_direction dir ) ;
 2334   void (*sync_sg_for_cpu)(struct device *dev , struct scatterlist *sg , int nents ,
 2335                           enum dma_data_direction dir ) ;
 2336   void (*sync_sg_for_device)(struct device *dev , struct scatterlist *sg , int nents ,
 2337                              enum dma_data_direction dir ) ;
 2338   int (*mapping_error)(struct device *dev , dma_addr_t dma_addr ) ;
 2339   int (*dma_supported)(struct device *dev , u64 mask ) ;
 2340   int (*set_dma_mask)(struct device *dev , u64 mask ) ;
 2341   int is_phys ;
 2342};
 2343#line 25 "include/linux/dma-debug.h"
 2344struct device;
 2345#line 26
 2346struct scatterlist;
 2347#line 27
 2348struct bus_type;
 2349#line 6 "include/linux/swiotlb.h"
 2350struct device;
 2351#line 7
 2352struct dma_attrs;
 2353#line 8
 2354struct scatterlist;
 2355#line 33 "include/linux/dmaengine.h"
 2356typedef s32 dma_cookie_t;
 2357#line 8 "include/linux/timerqueue.h"
 2358struct timerqueue_node {
 2359   struct rb_node node ;
 2360   ktime_t expires ;
 2361};
 2362#line 13 "include/linux/timerqueue.h"
 2363struct timerqueue_head {
 2364   struct rb_root head ;
 2365   struct timerqueue_node *next ;
 2366};
 2367#line 27 "include/linux/hrtimer.h"
 2368struct hrtimer_clock_base;
 2369#line 27
 2370struct hrtimer_clock_base;
 2371#line 27
 2372struct hrtimer_clock_base;
 2373#line 27
 2374struct hrtimer_clock_base;
 2375#line 28
 2376struct hrtimer_cpu_base;
 2377#line 28
 2378struct hrtimer_cpu_base;
 2379#line 28
 2380struct hrtimer_cpu_base;
 2381#line 28
 2382struct hrtimer_cpu_base;
 2383#line 44
 2384enum hrtimer_restart {
 2385    HRTIMER_NORESTART = 0,
 2386    HRTIMER_RESTART = 1
 2387} ;
 2388#line 108 "include/linux/hrtimer.h"
 2389struct hrtimer {
 2390   struct timerqueue_node node ;
 2391   ktime_t _softexpires ;
 2392   enum hrtimer_restart (*function)(struct hrtimer * ) ;
 2393   struct hrtimer_clock_base *base ;
 2394   unsigned long state ;
 2395   int start_pid ;
 2396   void *start_site ;
 2397   char start_comm[16] ;
 2398};
 2399#line 145 "include/linux/hrtimer.h"
 2400struct hrtimer_clock_base {
 2401   struct hrtimer_cpu_base *cpu_base ;
 2402   int index ;
 2403   clockid_t clockid ;
 2404   struct timerqueue_head active ;
 2405   ktime_t resolution ;
 2406   ktime_t (*get_time)(void) ;
 2407   ktime_t softirq_time ;
 2408   ktime_t offset ;
 2409};
 2410#line 178 "include/linux/hrtimer.h"
 2411struct hrtimer_cpu_base {
 2412   raw_spinlock_t lock ;
 2413   unsigned long active_bases ;
 2414   ktime_t expires_next ;
 2415   int hres_active ;
 2416   int hang_detected ;
 2417   unsigned long nr_events ;
 2418   unsigned long nr_retries ;
 2419   unsigned long nr_hangs ;
 2420   ktime_t max_hang_time ;
 2421   struct hrtimer_clock_base clock_base[3] ;
 2422};
 2423#line 94 "include/linux/skbuff.h"
 2424struct net_device;
 2425#line 94
 2426struct net_device;
 2427#line 94
 2428struct net_device;
 2429#line 94
 2430struct net_device;
 2431#line 95
 2432struct scatterlist;
 2433#line 96
 2434struct pipe_inode_info;
 2435#line 99 "include/linux/skbuff.h"
 2436struct nf_conntrack {
 2437   atomic_t use ;
 2438};
 2439#line 105 "include/linux/skbuff.h"
 2440struct nf_bridge_info {
 2441   atomic_t use ;
 2442   struct net_device *physindev ;
 2443   struct net_device *physoutdev ;
 2444   unsigned int mask ;
 2445   unsigned long data[32UL / sizeof(unsigned long )] ;
 2446};
 2447#line 114 "include/linux/skbuff.h"
 2448struct sk_buff_head {
 2449   struct sk_buff *next ;
 2450   struct sk_buff *prev ;
 2451   __u32 qlen ;
 2452   spinlock_t lock ;
 2453};
 2454#line 123
 2455struct sk_buff;
 2456#line 259 "include/linux/skbuff.h"
 2457typedef unsigned int sk_buff_data_t;
 2458#line 325
 2459struct sec_path;
 2460#line 325
 2461struct sec_path;
 2462#line 325
 2463struct sec_path;
 2464#line 325 "include/linux/skbuff.h"
 2465struct __anonstruct____missing_field_name_235 {
 2466   __u16 csum_start ;
 2467   __u16 csum_offset ;
 2468};
 2469#line 325 "include/linux/skbuff.h"
 2470union __anonunion____missing_field_name_234 {
 2471   __wsum csum ;
 2472   struct __anonstruct____missing_field_name_235 __annonCompField37 ;
 2473};
 2474#line 325 "include/linux/skbuff.h"
 2475union __anonunion____missing_field_name_236 {
 2476   __u32 mark ;
 2477   __u32 dropcount ;
 2478};
 2479#line 325 "include/linux/skbuff.h"
 2480struct sk_buff {
 2481   struct sk_buff *next ;
 2482   struct sk_buff *prev ;
 2483   ktime_t tstamp ;
 2484   struct sock *sk ;
 2485   struct net_device *dev ;
 2486   char cb[48]  __attribute__((__aligned__(8))) ;
 2487   unsigned long _skb_refdst ;
 2488   struct sec_path *sp ;
 2489   unsigned int len ;
 2490   unsigned int data_len ;
 2491   __u16 mac_len ;
 2492   __u16 hdr_len ;
 2493   union __anonunion____missing_field_name_234 __annonCompField38 ;
 2494   __u32 priority ;
 2495   __u8 local_df : 1 ;
 2496   __u8 cloned : 1 ;
 2497   __u8 ip_summed : 2 ;
 2498   __u8 nohdr : 1 ;
 2499   __u8 nfctinfo : 3 ;
 2500   __u8 pkt_type : 3 ;
 2501   __u8 fclone : 2 ;
 2502   __u8 ipvs_property : 1 ;
 2503   __u8 peeked : 1 ;
 2504   __u8 nf_trace : 1 ;
 2505   __be16 protocol ;
 2506   void (*destructor)(struct sk_buff *skb ) ;
 2507   struct nf_conntrack *nfct ;
 2508   struct sk_buff *nfct_reasm ;
 2509   struct nf_bridge_info *nf_bridge ;
 2510   int skb_iif ;
 2511   __u16 tc_index ;
 2512   __u16 tc_verd ;
 2513   __u32 rxhash ;
 2514   __u16 queue_mapping ;
 2515   __u8 ndisc_nodetype : 2 ;
 2516   __u8 ooo_okay : 1 ;
 2517   dma_cookie_t dma_cookie ;
 2518   __u32 secmark ;
 2519   union __anonunion____missing_field_name_236 __annonCompField39 ;
 2520   __u16 vlan_tci ;
 2521   sk_buff_data_t transport_header ;
 2522   sk_buff_data_t network_header ;
 2523   sk_buff_data_t mac_header ;
 2524   sk_buff_data_t tail ;
 2525   sk_buff_data_t end ;
 2526   unsigned char *head ;
 2527   unsigned char *data ;
 2528   unsigned int truesize ;
 2529   atomic_t users ;
 2530};
 2531#line 450
 2532struct dst_entry;
 2533#line 450
 2534struct dst_entry;
 2535#line 450
 2536struct dst_entry;
 2537#line 125 "include/linux/netlink.h"
 2538struct nlattr {
 2539   __u16 nla_len ;
 2540   __u16 nla_type ;
 2541};
 2542#line 18 "include/linux/capability.h"
 2543struct task_struct;
 2544#line 94 "include/linux/capability.h"
 2545struct kernel_cap_struct {
 2546   __u32 cap[2] ;
 2547};
 2548#line 94 "include/linux/capability.h"
 2549typedef struct kernel_cap_struct kernel_cap_t;
 2550#line 376
 2551struct dentry;
 2552#line 376
 2553struct dentry;
 2554#line 376
 2555struct dentry;
 2556#line 376
 2557struct dentry;
 2558#line 377
 2559struct user_namespace;
 2560#line 377
 2561struct user_namespace;
 2562#line 377
 2563struct user_namespace;
 2564#line 377
 2565struct user_namespace;
 2566#line 153 "include/linux/netlink.h"
 2567struct net;
 2568#line 41 "include/linux/if_link.h"
 2569struct rtnl_link_stats64 {
 2570   __u64 rx_packets ;
 2571   __u64 tx_packets ;
 2572   __u64 rx_bytes ;
 2573   __u64 tx_bytes ;
 2574   __u64 rx_errors ;
 2575   __u64 tx_errors ;
 2576   __u64 rx_dropped ;
 2577   __u64 tx_dropped ;
 2578   __u64 multicast ;
 2579   __u64 collisions ;
 2580   __u64 rx_length_errors ;
 2581   __u64 rx_over_errors ;
 2582   __u64 rx_crc_errors ;
 2583   __u64 rx_frame_errors ;
 2584   __u64 rx_fifo_errors ;
 2585   __u64 rx_missed_errors ;
 2586   __u64 tx_aborted_errors ;
 2587   __u64 tx_carrier_errors ;
 2588   __u64 tx_fifo_errors ;
 2589   __u64 tx_heartbeat_errors ;
 2590   __u64 tx_window_errors ;
 2591   __u64 rx_compressed ;
 2592   __u64 tx_compressed ;
 2593};
 2594#line 303 "include/linux/if_link.h"
 2595struct ifla_vf_info {
 2596   __u32 vf ;
 2597   __u8 mac[32] ;
 2598   __u32 vlan ;
 2599   __u32 qos ;
 2600   __u32 tx_rate ;
 2601};
 2602#line 82 "include/linux/plist.h"
 2603struct plist_head {
 2604   struct list_head node_list ;
 2605   raw_spinlock_t *rawlock ;
 2606   spinlock_t *spinlock ;
 2607};
 2608#line 90 "include/linux/plist.h"
 2609struct plist_node {
 2610   int prio ;
 2611   struct list_head prio_list ;
 2612   struct list_head node_list ;
 2613};
 2614#line 45 "include/linux/miscdevice.h"
 2615struct device;
 2616#line 47
 2617struct file_operations;
 2618#line 47
 2619struct file_operations;
 2620#line 47
 2621struct file_operations;
 2622#line 23 "include/linux/pm_qos_params.h"
 2623struct pm_qos_request_list {
 2624   struct plist_node list ;
 2625   int pm_qos_class ;
 2626};
 2627#line 84 "include/linux/sem.h"
 2628struct task_struct;
 2629#line 122
 2630struct sem_undo_list;
 2631#line 122
 2632struct sem_undo_list;
 2633#line 122
 2634struct sem_undo_list;
 2635#line 135 "include/linux/sem.h"
 2636struct sem_undo_list {
 2637   atomic_t refcnt ;
 2638   spinlock_t lock ;
 2639   struct list_head list_proc ;
 2640};
 2641#line 141 "include/linux/sem.h"
 2642struct sysv_sem {
 2643   struct sem_undo_list *undo_list ;
 2644};
 2645#line 15 "include/linux/blk_types.h"
 2646struct page;
 2647#line 16
 2648struct block_device;
 2649#line 16
 2650struct block_device;
 2651#line 16
 2652struct block_device;
 2653#line 16
 2654struct block_device;
 2655#line 33 "include/linux/list_bl.h"
 2656struct hlist_bl_node;
 2657#line 33
 2658struct hlist_bl_node;
 2659#line 33
 2660struct hlist_bl_node;
 2661#line 33 "include/linux/list_bl.h"
 2662struct hlist_bl_head {
 2663   struct hlist_bl_node *first ;
 2664};
 2665#line 37 "include/linux/list_bl.h"
 2666struct hlist_bl_node {
 2667   struct hlist_bl_node *next ;
 2668   struct hlist_bl_node **pprev ;
 2669};
 2670#line 13 "include/linux/dcache.h"
 2671struct nameidata;
 2672#line 13
 2673struct nameidata;
 2674#line 13
 2675struct nameidata;
 2676#line 13
 2677struct nameidata;
 2678#line 14
 2679struct path;
 2680#line 14
 2681struct path;
 2682#line 14
 2683struct path;
 2684#line 14
 2685struct path;
 2686#line 15
 2687struct vfsmount;
 2688#line 15
 2689struct vfsmount;
 2690#line 15
 2691struct vfsmount;
 2692#line 15
 2693struct vfsmount;
 2694#line 35 "include/linux/dcache.h"
 2695struct qstr {
 2696   unsigned int hash ;
 2697   unsigned int len ;
 2698   unsigned char const   *name ;
 2699};
 2700#line 116
 2701struct dentry_operations;
 2702#line 116
 2703struct dentry_operations;
 2704#line 116
 2705struct dentry_operations;
 2706#line 116
 2707struct super_block;
 2708#line 116
 2709struct super_block;
 2710#line 116
 2711struct super_block;
 2712#line 116 "include/linux/dcache.h"
 2713union __anonunion_d_u_252 {
 2714   struct list_head d_child ;
 2715   struct rcu_head d_rcu ;
 2716};
 2717#line 116 "include/linux/dcache.h"
 2718struct dentry {
 2719   unsigned int d_flags ;
 2720   seqcount_t d_seq ;
 2721   struct hlist_bl_node d_hash ;
 2722   struct dentry *d_parent ;
 2723   struct qstr d_name ;
 2724   struct inode *d_inode ;
 2725   unsigned char d_iname[32] ;
 2726   unsigned int d_count ;
 2727   spinlock_t d_lock ;
 2728   struct dentry_operations  const  *d_op ;
 2729   struct super_block *d_sb ;
 2730   unsigned long d_time ;
 2731   void *d_fsdata ;
 2732   struct list_head d_lru ;
 2733   union __anonunion_d_u_252 d_u ;
 2734   struct list_head d_subdirs ;
 2735   struct list_head d_alias ;
 2736};
 2737#line 159 "include/linux/dcache.h"
 2738struct dentry_operations {
 2739   int (*d_revalidate)(struct dentry * , struct nameidata * ) ;
 2740   int (*d_hash)(struct dentry  const  * , struct inode  const  * , struct qstr * ) ;
 2741   int (*d_compare)(struct dentry  const  * , struct inode  const  * , struct dentry  const  * ,
 2742                    struct inode  const  * , unsigned int  , char const   * , struct qstr  const  * ) ;
 2743   int (*d_delete)(struct dentry  const  * ) ;
 2744   void (*d_release)(struct dentry * ) ;
 2745   void (*d_iput)(struct dentry * , struct inode * ) ;
 2746   char *(*d_dname)(struct dentry * , char * , int  ) ;
 2747   struct vfsmount *(*d_automount)(struct path * ) ;
 2748   int (*d_manage)(struct dentry * , bool  ) ;
 2749} __attribute__((__aligned__((1) <<  (6) ))) ;
 2750#line 4 "include/linux/path.h"
 2751struct dentry;
 2752#line 5
 2753struct vfsmount;
 2754#line 7 "include/linux/path.h"
 2755struct path {
 2756   struct vfsmount *mnt ;
 2757   struct dentry *dentry ;
 2758};
 2759#line 57 "include/linux/radix-tree.h"
 2760struct radix_tree_node;
 2761#line 57
 2762struct radix_tree_node;
 2763#line 57
 2764struct radix_tree_node;
 2765#line 57 "include/linux/radix-tree.h"
 2766struct radix_tree_root {
 2767   unsigned int height ;
 2768   gfp_t gfp_mask ;
 2769   struct radix_tree_node *rnode ;
 2770};
 2771#line 6 "include/linux/pid.h"
 2772enum pid_type {
 2773    PIDTYPE_PID = 0,
 2774    PIDTYPE_PGID = 1,
 2775    PIDTYPE_SID = 2,
 2776    PIDTYPE_MAX = 3
 2777} ;
 2778#line 50
 2779struct pid_namespace;
 2780#line 50
 2781struct pid_namespace;
 2782#line 50
 2783struct pid_namespace;
 2784#line 50 "include/linux/pid.h"
 2785struct upid {
 2786   int nr ;
 2787   struct pid_namespace *ns ;
 2788   struct hlist_node pid_chain ;
 2789};
 2790#line 57 "include/linux/pid.h"
 2791struct pid {
 2792   atomic_t count ;
 2793   unsigned int level ;
 2794   struct hlist_head tasks[3] ;
 2795   struct rcu_head rcu ;
 2796   struct upid numbers[1] ;
 2797};
 2798#line 69 "include/linux/pid.h"
 2799struct pid_link {
 2800   struct hlist_node node ;
 2801   struct pid *pid ;
 2802};
 2803#line 100
 2804struct pid_namespace;
 2805#line 16 "include/linux/fiemap.h"
 2806struct fiemap_extent {
 2807   __u64 fe_logical ;
 2808   __u64 fe_physical ;
 2809   __u64 fe_length ;
 2810   __u64 fe_reserved64[2] ;
 2811   __u32 fe_flags ;
 2812   __u32 fe_reserved[3] ;
 2813};
 2814#line 399 "include/linux/fs.h"
 2815struct export_operations;
 2816#line 399
 2817struct export_operations;
 2818#line 399
 2819struct export_operations;
 2820#line 399
 2821struct export_operations;
 2822#line 401
 2823struct iovec;
 2824#line 402
 2825struct nameidata;
 2826#line 403
 2827struct kiocb;
 2828#line 404
 2829struct kobject;
 2830#line 405
 2831struct pipe_inode_info;
 2832#line 406
 2833struct poll_table_struct;
 2834#line 407
 2835struct kstatfs;
 2836#line 407
 2837struct kstatfs;
 2838#line 407
 2839struct kstatfs;
 2840#line 407
 2841struct kstatfs;
 2842#line 408
 2843struct vm_area_struct;
 2844#line 409
 2845struct vfsmount;
 2846#line 410
 2847struct cred;
 2848#line 460 "include/linux/fs.h"
 2849struct iattr {
 2850   unsigned int ia_valid ;
 2851   umode_t ia_mode ;
 2852   uid_t ia_uid ;
 2853   gid_t ia_gid ;
 2854   loff_t ia_size ;
 2855   struct timespec ia_atime ;
 2856   struct timespec ia_mtime ;
 2857   struct timespec ia_ctime ;
 2858   struct file *ia_file ;
 2859};
 2860#line 129 "include/linux/quota.h"
 2861struct if_dqinfo {
 2862   __u64 dqi_bgrace ;
 2863   __u64 dqi_igrace ;
 2864   __u32 dqi_flags ;
 2865   __u32 dqi_valid ;
 2866};
 2867#line 18 "include/linux/percpu_counter.h"
 2868struct percpu_counter {
 2869   spinlock_t lock ;
 2870   s64 count ;
 2871   struct list_head list ;
 2872   s32 *counters ;
 2873};
 2874#line 50 "include/linux/dqblk_xfs.h"
 2875struct fs_disk_quota {
 2876   __s8 d_version ;
 2877   __s8 d_flags ;
 2878   __u16 d_fieldmask ;
 2879   __u32 d_id ;
 2880   __u64 d_blk_hardlimit ;
 2881   __u64 d_blk_softlimit ;
 2882   __u64 d_ino_hardlimit ;
 2883   __u64 d_ino_softlimit ;
 2884   __u64 d_bcount ;
 2885   __u64 d_icount ;
 2886   __s32 d_itimer ;
 2887   __s32 d_btimer ;
 2888   __u16 d_iwarns ;
 2889   __u16 d_bwarns ;
 2890   __s32 d_padding2 ;
 2891   __u64 d_rtb_hardlimit ;
 2892   __u64 d_rtb_softlimit ;
 2893   __u64 d_rtbcount ;
 2894   __s32 d_rtbtimer ;
 2895   __u16 d_rtbwarns ;
 2896   __s16 d_padding3 ;
 2897   char d_padding4[8] ;
 2898};
 2899#line 146 "include/linux/dqblk_xfs.h"
 2900struct fs_qfilestat {
 2901   __u64 qfs_ino ;
 2902   __u64 qfs_nblks ;
 2903   __u32 qfs_nextents ;
 2904};
 2905#line 146 "include/linux/dqblk_xfs.h"
 2906typedef struct fs_qfilestat fs_qfilestat_t;
 2907#line 152 "include/linux/dqblk_xfs.h"
 2908struct fs_quota_stat {
 2909   __s8 qs_version ;
 2910   __u16 qs_flags ;
 2911   __s8 qs_pad ;
 2912   fs_qfilestat_t qs_uquota ;
 2913   fs_qfilestat_t qs_gquota ;
 2914   __u32 qs_incoredqs ;
 2915   __s32 qs_btimelimit ;
 2916   __s32 qs_itimelimit ;
 2917   __s32 qs_rtbtimelimit ;
 2918   __u16 qs_bwarnlimit ;
 2919   __u16 qs_iwarnlimit ;
 2920};
 2921#line 17 "include/linux/dqblk_qtree.h"
 2922struct dquot;
 2923#line 17
 2924struct dquot;
 2925#line 17
 2926struct dquot;
 2927#line 17
 2928struct dquot;
 2929#line 185 "include/linux/quota.h"
 2930typedef __kernel_uid32_t qid_t;
 2931#line 186 "include/linux/quota.h"
 2932typedef long long qsize_t;
 2933#line 200 "include/linux/quota.h"
 2934struct mem_dqblk {
 2935   qsize_t dqb_bhardlimit ;
 2936   qsize_t dqb_bsoftlimit ;
 2937   qsize_t dqb_curspace ;
 2938   qsize_t dqb_rsvspace ;
 2939   qsize_t dqb_ihardlimit ;
 2940   qsize_t dqb_isoftlimit ;
 2941   qsize_t dqb_curinodes ;
 2942   time_t dqb_btime ;
 2943   time_t dqb_itime ;
 2944};
 2945#line 215
 2946struct quota_format_type;
 2947#line 215
 2948struct quota_format_type;
 2949#line 215
 2950struct quota_format_type;
 2951#line 215
 2952struct quota_format_type;
 2953#line 217 "include/linux/quota.h"
 2954struct mem_dqinfo {
 2955   struct quota_format_type *dqi_format ;
 2956   int dqi_fmt_id ;
 2957   struct list_head dqi_dirty_list ;
 2958   unsigned long dqi_flags ;
 2959   unsigned int dqi_bgrace ;
 2960   unsigned int dqi_igrace ;
 2961   qsize_t dqi_maxblimit ;
 2962   qsize_t dqi_maxilimit ;
 2963   void *dqi_priv ;
 2964};
 2965#line 230
 2966struct super_block;
 2967#line 284 "include/linux/quota.h"
 2968struct dquot {
 2969   struct hlist_node dq_hash ;
 2970   struct list_head dq_inuse ;
 2971   struct list_head dq_free ;
 2972   struct list_head dq_dirty ;
 2973   struct mutex dq_lock ;
 2974   atomic_t dq_count ;
 2975   wait_queue_head_t dq_wait_unused ;
 2976   struct super_block *dq_sb ;
 2977   unsigned int dq_id ;
 2978   loff_t dq_off ;
 2979   unsigned long dq_flags ;
 2980   short dq_type ;
 2981   struct mem_dqblk dq_dqb ;
 2982};
 2983#line 301 "include/linux/quota.h"
 2984struct quota_format_ops {
 2985   int (*check_quota_file)(struct super_block *sb , int type ) ;
 2986   int (*read_file_info)(struct super_block *sb , int type ) ;
 2987   int (*write_file_info)(struct super_block *sb , int type ) ;
 2988   int (*free_file_info)(struct super_block *sb , int type ) ;
 2989   int (*read_dqblk)(struct dquot *dquot ) ;
 2990   int (*commit_dqblk)(struct dquot *dquot ) ;
 2991   int (*release_dqblk)(struct dquot *dquot ) ;
 2992};
 2993#line 312 "include/linux/quota.h"
 2994struct dquot_operations {
 2995   int (*write_dquot)(struct dquot * ) ;
 2996   struct dquot *(*alloc_dquot)(struct super_block * , int  ) ;
 2997   void (*destroy_dquot)(struct dquot * ) ;
 2998   int (*acquire_dquot)(struct dquot * ) ;
 2999   int (*release_dquot)(struct dquot * ) ;
 3000   int (*mark_dirty)(struct dquot * ) ;
 3001   int (*write_info)(struct super_block * , int  ) ;
 3002   qsize_t *(*get_reserved_space)(struct inode * ) ;
 3003};
 3004#line 325
 3005struct path;
 3006#line 328 "include/linux/quota.h"
 3007struct quotactl_ops {
 3008   int (*quota_on)(struct super_block * , int  , int  , struct path * ) ;
 3009   int (*quota_on_meta)(struct super_block * , int  , int  ) ;
 3010   int (*quota_off)(struct super_block * , int  ) ;
 3011   int (*quota_sync)(struct super_block * , int  , int  ) ;
 3012   int (*get_info)(struct super_block * , int  , struct if_dqinfo * ) ;
 3013   int (*set_info)(struct super_block * , int  , struct if_dqinfo * ) ;
 3014   int (*get_dqblk)(struct super_block * , int  , qid_t  , struct fs_disk_quota * ) ;
 3015   int (*set_dqblk)(struct super_block * , int  , qid_t  , struct fs_disk_quota * ) ;
 3016   int (*get_xstate)(struct super_block * , struct fs_quota_stat * ) ;
 3017   int (*set_xstate)(struct super_block * , unsigned int  , int  ) ;
 3018};
 3019#line 341 "include/linux/quota.h"
 3020struct quota_format_type {
 3021   int qf_fmt_id ;
 3022   struct quota_format_ops  const  *qf_ops ;
 3023   struct module *qf_owner ;
 3024   struct quota_format_type *qf_next ;
 3025};
 3026#line 395 "include/linux/quota.h"
 3027struct quota_info {
 3028   unsigned int flags ;
 3029   struct mutex dqio_mutex ;
 3030   struct mutex dqonoff_mutex ;
 3031   struct rw_semaphore dqptr_sem ;
 3032   struct inode *files[2] ;
 3033   struct mem_dqinfo info[2] ;
 3034   struct quota_format_ops  const  *ops[2] ;
 3035};
 3036#line 523 "include/linux/fs.h"
 3037struct page;
 3038#line 524
 3039struct address_space;
 3040#line 525
 3041struct writeback_control;
 3042#line 568 "include/linux/fs.h"
 3043union __anonunion_arg_259 {
 3044   char *buf ;
 3045   void *data ;
 3046};
 3047#line 568 "include/linux/fs.h"
 3048struct __anonstruct_read_descriptor_t_258 {
 3049   size_t written ;
 3050   size_t count ;
 3051   union __anonunion_arg_259 arg ;
 3052   int error ;
 3053};
 3054#line 568 "include/linux/fs.h"
 3055typedef struct __anonstruct_read_descriptor_t_258 read_descriptor_t;
 3056#line 581 "include/linux/fs.h"
 3057struct address_space_operations {
 3058   int (*writepage)(struct page *page , struct writeback_control *wbc ) ;
 3059   int (*readpage)(struct file * , struct page * ) ;
 3060   int (*writepages)(struct address_space * , struct writeback_control * ) ;
 3061   int (*set_page_dirty)(struct page *page ) ;
 3062   int (*readpages)(struct file *filp , struct address_space *mapping , struct list_head *pages ,
 3063                    unsigned int nr_pages ) ;
 3064   int (*write_begin)(struct file * , struct address_space *mapping , loff_t pos ,
 3065                      unsigned int len , unsigned int flags , struct page **pagep ,
 3066                      void **fsdata ) ;
 3067   int (*write_end)(struct file * , struct address_space *mapping , loff_t pos , unsigned int len ,
 3068                    unsigned int copied , struct page *page , void *fsdata ) ;
 3069   sector_t (*bmap)(struct address_space * , sector_t  ) ;
 3070   void (*invalidatepage)(struct page * , unsigned long  ) ;
 3071   int (*releasepage)(struct page * , gfp_t  ) ;
 3072   void (*freepage)(struct page * ) ;
 3073   ssize_t (*direct_IO)(int  , struct kiocb * , struct iovec  const  *iov , loff_t offset ,
 3074                        unsigned long nr_segs ) ;
 3075   int (*get_xip_mem)(struct address_space * , unsigned long  , int  , void ** , unsigned long * ) ;
 3076   int (*migratepage)(struct address_space * , struct page * , struct page * ) ;
 3077   int (*launder_page)(struct page * ) ;
 3078   int (*is_partially_uptodate)(struct page * , read_descriptor_t * , unsigned long  ) ;
 3079   int (*error_remove_page)(struct address_space * , struct page * ) ;
 3080};
 3081#line 633
 3082struct backing_dev_info;
 3083#line 633
 3084struct backing_dev_info;
 3085#line 633
 3086struct backing_dev_info;
 3087#line 633
 3088struct backing_dev_info;
 3089#line 634 "include/linux/fs.h"
 3090struct address_space {
 3091   struct inode *host ;
 3092   struct radix_tree_root page_tree ;
 3093   spinlock_t tree_lock ;
 3094   unsigned int i_mmap_writable ;
 3095   struct prio_tree_root i_mmap ;
 3096   struct list_head i_mmap_nonlinear ;
 3097   struct mutex i_mmap_mutex ;
 3098   unsigned long nrpages ;
 3099   unsigned long writeback_index ;
 3100   struct address_space_operations  const  *a_ops ;
 3101   unsigned long flags ;
 3102   struct backing_dev_info *backing_dev_info ;
 3103   spinlock_t private_lock ;
 3104   struct list_head private_list ;
 3105   struct address_space *assoc_mapping ;
 3106} __attribute__((__aligned__(sizeof(long )))) ;
 3107#line 658
 3108struct hd_struct;
 3109#line 658
 3110struct hd_struct;
 3111#line 658
 3112struct hd_struct;
 3113#line 658
 3114struct gendisk;
 3115#line 658
 3116struct gendisk;
 3117#line 658
 3118struct gendisk;
 3119#line 658 "include/linux/fs.h"
 3120struct block_device {
 3121   dev_t bd_dev ;
 3122   int bd_openers ;
 3123   struct inode *bd_inode ;
 3124   struct super_block *bd_super ;
 3125   struct mutex bd_mutex ;
 3126   struct list_head bd_inodes ;
 3127   void *bd_claiming ;
 3128   void *bd_holder ;
 3129   int bd_holders ;
 3130   bool bd_write_holder ;
 3131   struct list_head bd_holder_disks ;
 3132   struct block_device *bd_contains ;
 3133   unsigned int bd_block_size ;
 3134   struct hd_struct *bd_part ;
 3135   unsigned int bd_part_count ;
 3136   int bd_invalidated ;
 3137   struct gendisk *bd_disk ;
 3138   struct list_head bd_list ;
 3139   unsigned long bd_private ;
 3140   int bd_fsfreeze_count ;
 3141   struct mutex bd_fsfreeze_mutex ;
 3142};
 3143#line 735
 3144struct posix_acl;
 3145#line 735
 3146struct posix_acl;
 3147#line 735
 3148struct posix_acl;
 3149#line 735
 3150struct posix_acl;
 3151#line 738
 3152struct inode_operations;
 3153#line 738
 3154struct inode_operations;
 3155#line 738
 3156struct inode_operations;
 3157#line 738 "include/linux/fs.h"
 3158union __anonunion____missing_field_name_260 {
 3159   struct list_head i_dentry ;
 3160   struct rcu_head i_rcu ;
 3161};
 3162#line 738
 3163struct file_lock;
 3164#line 738
 3165struct file_lock;
 3166#line 738
 3167struct file_lock;
 3168#line 738
 3169struct cdev;
 3170#line 738
 3171struct cdev;
 3172#line 738
 3173struct cdev;
 3174#line 738 "include/linux/fs.h"
 3175union __anonunion____missing_field_name_261 {
 3176   struct pipe_inode_info *i_pipe ;
 3177   struct block_device *i_bdev ;
 3178   struct cdev *i_cdev ;
 3179};
 3180#line 738 "include/linux/fs.h"
 3181struct inode {
 3182   umode_t i_mode ;
 3183   uid_t i_uid ;
 3184   gid_t i_gid ;
 3185   struct inode_operations  const  *i_op ;
 3186   struct super_block *i_sb ;
 3187   spinlock_t i_lock ;
 3188   unsigned int i_flags ;
 3189   unsigned long i_state ;
 3190   void *i_security ;
 3191   struct mutex i_mutex ;
 3192   unsigned long dirtied_when ;
 3193   struct hlist_node i_hash ;
 3194   struct list_head i_wb_list ;
 3195   struct list_head i_lru ;
 3196   struct list_head i_sb_list ;
 3197   union __anonunion____missing_field_name_260 __annonCompField40 ;
 3198   unsigned long i_ino ;
 3199   atomic_t i_count ;
 3200   unsigned int i_nlink ;
 3201   dev_t i_rdev ;
 3202   unsigned int i_blkbits ;
 3203   u64 i_version ;
 3204   loff_t i_size ;
 3205   struct timespec i_atime ;
 3206   struct timespec i_mtime ;
 3207   struct timespec i_ctime ;
 3208   blkcnt_t i_blocks ;
 3209   unsigned short i_bytes ;
 3210   struct rw_semaphore i_alloc_sem ;
 3211   struct file_operations  const  *i_fop ;
 3212   struct file_lock *i_flock ;
 3213   struct address_space *i_mapping ;
 3214   struct address_space i_data ;
 3215   struct dquot *i_dquot[2] ;
 3216   struct list_head i_devices ;
 3217   union __anonunion____missing_field_name_261 __annonCompField41 ;
 3218   __u32 i_generation ;
 3219   __u32 i_fsnotify_mask ;
 3220   struct hlist_head i_fsnotify_marks ;
 3221   atomic_t i_readcount ;
 3222   atomic_t i_writecount ;
 3223   struct posix_acl *i_acl ;
 3224   struct posix_acl *i_default_acl ;
 3225   void *i_private ;
 3226};
 3227#line 903 "include/linux/fs.h"
 3228struct fown_struct {
 3229   rwlock_t lock ;
 3230   struct pid *pid ;
 3231   enum pid_type pid_type ;
 3232   uid_t uid ;
 3233   uid_t euid ;
 3234   int signum ;
 3235};
 3236#line 914 "include/linux/fs.h"
 3237struct file_ra_state {
 3238   unsigned long start ;
 3239   unsigned int size ;
 3240   unsigned int async_size ;
 3241   unsigned int ra_pages ;
 3242   unsigned int mmap_miss ;
 3243   loff_t prev_pos ;
 3244};
 3245#line 937 "include/linux/fs.h"
 3246union __anonunion_f_u_262 {
 3247   struct list_head fu_list ;
 3248   struct rcu_head fu_rcuhead ;
 3249};
 3250#line 937 "include/linux/fs.h"
 3251struct file {
 3252   union __anonunion_f_u_262 f_u ;
 3253   struct path f_path ;
 3254   struct file_operations  const  *f_op ;
 3255   spinlock_t f_lock ;
 3256   int f_sb_list_cpu ;
 3257   atomic_long_t f_count ;
 3258   unsigned int f_flags ;
 3259   fmode_t f_mode ;
 3260   loff_t f_pos ;
 3261   struct fown_struct f_owner ;
 3262   struct cred  const  *f_cred ;
 3263   struct file_ra_state f_ra ;
 3264   u64 f_version ;
 3265   void *f_security ;
 3266   void *private_data ;
 3267   struct list_head f_ep_links ;
 3268   struct address_space *f_mapping ;
 3269   unsigned long f_mnt_write_state ;
 3270};
 3271#line 1064
 3272struct files_struct;
 3273#line 1064
 3274struct files_struct;
 3275#line 1064
 3276struct files_struct;
 3277#line 1064 "include/linux/fs.h"
 3278typedef struct files_struct *fl_owner_t;
 3279#line 1066 "include/linux/fs.h"
 3280struct file_lock_operations {
 3281   void (*fl_copy_lock)(struct file_lock * , struct file_lock * ) ;
 3282   void (*fl_release_private)(struct file_lock * ) ;
 3283};
 3284#line 1071 "include/linux/fs.h"
 3285struct lock_manager_operations {
 3286   int (*fl_compare_owner)(struct file_lock * , struct file_lock * ) ;
 3287   void (*fl_notify)(struct file_lock * ) ;
 3288   int (*fl_grant)(struct file_lock * , struct file_lock * , int  ) ;
 3289   void (*fl_release_private)(struct file_lock * ) ;
 3290   void (*fl_break)(struct file_lock * ) ;
 3291   int (*fl_change)(struct file_lock ** , int  ) ;
 3292};
 3293#line 8 "include/linux/nfs_fs_i.h"
 3294struct nlm_lockowner;
 3295#line 8
 3296struct nlm_lockowner;
 3297#line 8
 3298struct nlm_lockowner;
 3299#line 8
 3300struct nlm_lockowner;
 3301#line 13 "include/linux/nfs_fs_i.h"
 3302struct nfs_lock_info {
 3303   u32 state ;
 3304   struct nlm_lockowner *owner ;
 3305   struct list_head list ;
 3306};
 3307#line 19
 3308struct nfs4_lock_state;
 3309#line 19
 3310struct nfs4_lock_state;
 3311#line 19
 3312struct nfs4_lock_state;
 3313#line 19
 3314struct nfs4_lock_state;
 3315#line 20 "include/linux/nfs_fs_i.h"
 3316struct nfs4_lock_info {
 3317   struct nfs4_lock_state *owner ;
 3318};
 3319#line 1091 "include/linux/fs.h"
 3320struct __anonstruct_afs_264 {
 3321   struct list_head link ;
 3322   int state ;
 3323};
 3324#line 1091 "include/linux/fs.h"
 3325union __anonunion_fl_u_263 {
 3326   struct nfs_lock_info nfs_fl ;
 3327   struct nfs4_lock_info nfs4_fl ;
 3328   struct __anonstruct_afs_264 afs ;
 3329};
 3330#line 1091 "include/linux/fs.h"
 3331struct file_lock {
 3332   struct file_lock *fl_next ;
 3333   struct list_head fl_link ;
 3334   struct list_head fl_block ;
 3335   fl_owner_t fl_owner ;
 3336   unsigned char fl_flags ;
 3337   unsigned char fl_type ;
 3338   unsigned int fl_pid ;
 3339   struct pid *fl_nspid ;
 3340   wait_queue_head_t fl_wait ;
 3341   struct file *fl_file ;
 3342   loff_t fl_start ;
 3343   loff_t fl_end ;
 3344   struct fasync_struct *fl_fasync ;
 3345   unsigned long fl_break_time ;
 3346   struct file_lock_operations  const  *fl_ops ;
 3347   struct lock_manager_operations  const  *fl_lmops ;
 3348   union __anonunion_fl_u_263 fl_u ;
 3349};
 3350#line 1324 "include/linux/fs.h"
 3351struct fasync_struct {
 3352   spinlock_t fa_lock ;
 3353   int magic ;
 3354   int fa_fd ;
 3355   struct fasync_struct *fa_next ;
 3356   struct file *fa_file ;
 3357   struct rcu_head fa_rcu ;
 3358};
 3359#line 1364
 3360struct file_system_type;
 3361#line 1364
 3362struct file_system_type;
 3363#line 1364
 3364struct file_system_type;
 3365#line 1364
 3366struct super_operations;
 3367#line 1364
 3368struct super_operations;
 3369#line 1364
 3370struct super_operations;
 3371#line 1364
 3372struct xattr_handler;
 3373#line 1364
 3374struct xattr_handler;
 3375#line 1364
 3376struct xattr_handler;
 3377#line 1364
 3378struct mtd_info;
 3379#line 1364
 3380struct mtd_info;
 3381#line 1364
 3382struct mtd_info;
 3383#line 1364 "include/linux/fs.h"
 3384struct super_block {
 3385   struct list_head s_list ;
 3386   dev_t s_dev ;
 3387   unsigned char s_dirt ;
 3388   unsigned char s_blocksize_bits ;
 3389   unsigned long s_blocksize ;
 3390   loff_t s_maxbytes ;
 3391   struct file_system_type *s_type ;
 3392   struct super_operations  const  *s_op ;
 3393   struct dquot_operations  const  *dq_op ;
 3394   struct quotactl_ops  const  *s_qcop ;
 3395   struct export_operations  const  *s_export_op ;
 3396   unsigned long s_flags ;
 3397   unsigned long s_magic ;
 3398   struct dentry *s_root ;
 3399   struct rw_semaphore s_umount ;
 3400   struct mutex s_lock ;
 3401   int s_count ;
 3402   atomic_t s_active ;
 3403   void *s_security ;
 3404   struct xattr_handler  const  **s_xattr ;
 3405   struct list_head s_inodes ;
 3406   struct hlist_bl_head s_anon ;
 3407   struct list_head *s_files ;
 3408   struct list_head s_dentry_lru ;
 3409   int s_nr_dentry_unused ;
 3410   struct block_device *s_bdev ;
 3411   struct backing_dev_info *s_bdi ;
 3412   struct mtd_info *s_mtd ;
 3413   struct list_head s_instances ;
 3414   struct quota_info s_dquot ;
 3415   int s_frozen ;
 3416   wait_queue_head_t s_wait_unfrozen ;
 3417   char s_id[32] ;
 3418   u8 s_uuid[16] ;
 3419   void *s_fs_info ;
 3420   fmode_t s_mode ;
 3421   u32 s_time_gran ;
 3422   struct mutex s_vfs_rename_mutex ;
 3423   char *s_subtype ;
 3424   char *s_options ;
 3425   struct dentry_operations  const  *s_d_op ;
 3426   int cleancache_poolid ;
 3427};
 3428#line 1499 "include/linux/fs.h"
 3429struct fiemap_extent_info {
 3430   unsigned int fi_flags ;
 3431   unsigned int fi_extents_mapped ;
 3432   unsigned int fi_extents_max ;
 3433   struct fiemap_extent *fi_extents_start ;
 3434};
 3435#line 1546 "include/linux/fs.h"
 3436struct file_operations {
 3437   struct module *owner ;
 3438   loff_t (*llseek)(struct file * , loff_t  , int  ) ;
 3439   ssize_t (*read)(struct file * , char * , size_t  , loff_t * ) ;
 3440   ssize_t (*write)(struct file * , char const   * , size_t  , loff_t * ) ;
 3441   ssize_t (*aio_read)(struct kiocb * , struct iovec  const  * , unsigned long  ,
 3442                       loff_t  ) ;
 3443   ssize_t (*aio_write)(struct kiocb * , struct iovec  const  * , unsigned long  ,
 3444                        loff_t  ) ;
 3445   int (*readdir)(struct file * , void * , int (*)(void * , char const   * , int  ,
 3446                                                   loff_t  , u64  , unsigned int  ) ) ;
 3447   unsigned int (*poll)(struct file * , struct poll_table_struct * ) ;
 3448   long (*unlocked_ioctl)(struct file * , unsigned int  , unsigned long  ) ;
 3449   long (*compat_ioctl)(struct file * , unsigned int  , unsigned long  ) ;
 3450   int (*mmap)(struct file * , struct vm_area_struct * ) ;
 3451   int (*open)(struct inode * , struct file * ) ;
 3452   int (*flush)(struct file * , fl_owner_t id ) ;
 3453   int (*release)(struct inode * , struct file * ) ;
 3454   int (*fsync)(struct file * , int datasync ) ;
 3455   int (*aio_fsync)(struct kiocb * , int datasync ) ;
 3456   int (*fasync)(int  , struct file * , int  ) ;
 3457   int (*lock)(struct file * , int  , struct file_lock * ) ;
 3458   ssize_t (*sendpage)(struct file * , struct page * , int  , size_t  , loff_t * ,
 3459                       int  ) ;
 3460   unsigned long (*get_unmapped_area)(struct file * , unsigned long  , unsigned long  ,
 3461                                      unsigned long  , unsigned long  ) ;
 3462   int (*check_flags)(int  ) ;
 3463   int (*flock)(struct file * , int  , struct file_lock * ) ;
 3464   ssize_t (*splice_write)(struct pipe_inode_info * , struct file * , loff_t * , size_t  ,
 3465                           unsigned int  ) ;
 3466   ssize_t (*splice_read)(struct file * , loff_t * , struct pipe_inode_info * , size_t  ,
 3467                          unsigned int  ) ;
 3468   int (*setlease)(struct file * , long  , struct file_lock ** ) ;
 3469   long (*fallocate)(struct file *file , int mode , loff_t offset , loff_t len ) ;
 3470};
 3471#line 1578 "include/linux/fs.h"
 3472struct inode_operations {
 3473   struct dentry *(*lookup)(struct inode * , struct dentry * , struct nameidata * ) ;
 3474   void *(*follow_link)(struct dentry * , struct nameidata * ) ;
 3475   int (*permission)(struct inode * , int  , unsigned int  ) ;
 3476   int (*check_acl)(struct inode * , int  , unsigned int  ) ;
 3477   int (*readlink)(struct dentry * , char * , int  ) ;
 3478   void (*put_link)(struct dentry * , struct nameidata * , void * ) ;
 3479   int (*create)(struct inode * , struct dentry * , int  , struct nameidata * ) ;
 3480   int (*link)(struct dentry * , struct inode * , struct dentry * ) ;
 3481   int (*unlink)(struct inode * , struct dentry * ) ;
 3482   int (*symlink)(struct inode * , struct dentry * , char const   * ) ;
 3483   int (*mkdir)(struct inode * , struct dentry * , int  ) ;
 3484   int (*rmdir)(struct inode * , struct dentry * ) ;
 3485   int (*mknod)(struct inode * , struct dentry * , int  , dev_t  ) ;
 3486   int (*rename)(struct inode * , struct dentry * , struct inode * , struct dentry * ) ;
 3487   void (*truncate)(struct inode * ) ;
 3488   int (*setattr)(struct dentry * , struct iattr * ) ;
 3489   int (*getattr)(struct vfsmount *mnt , struct dentry * , struct kstat * ) ;
 3490   int (*setxattr)(struct dentry * , char const   * , void const   * , size_t  , int  ) ;
 3491   ssize_t (*getxattr)(struct dentry * , char const   * , void * , size_t  ) ;
 3492   ssize_t (*listxattr)(struct dentry * , char * , size_t  ) ;
 3493   int (*removexattr)(struct dentry * , char const   * ) ;
 3494   void (*truncate_range)(struct inode * , loff_t  , loff_t  ) ;
 3495   int (*fiemap)(struct inode * , struct fiemap_extent_info * , u64 start , u64 len ) ;
 3496} __attribute__((__aligned__((1) <<  (6) ))) ;
 3497#line 1608
 3498struct seq_file;
 3499#line 1622 "include/linux/fs.h"
 3500struct super_operations {
 3501   struct inode *(*alloc_inode)(struct super_block *sb ) ;
 3502   void (*destroy_inode)(struct inode * ) ;
 3503   void (*dirty_inode)(struct inode * , int flags ) ;
 3504   int (*write_inode)(struct inode * , struct writeback_control *wbc ) ;
 3505   int (*drop_inode)(struct inode * ) ;
 3506   void (*evict_inode)(struct inode * ) ;
 3507   void (*put_super)(struct super_block * ) ;
 3508   void (*write_super)(struct super_block * ) ;
 3509   int (*sync_fs)(struct super_block *sb , int wait ) ;
 3510   int (*freeze_fs)(struct super_block * ) ;
 3511   int (*unfreeze_fs)(struct super_block * ) ;
 3512   int (*statfs)(struct dentry * , struct kstatfs * ) ;
 3513   int (*remount_fs)(struct super_block * , int * , char * ) ;
 3514   void (*umount_begin)(struct super_block * ) ;
 3515   int (*show_options)(struct seq_file * , struct vfsmount * ) ;
 3516   int (*show_devname)(struct seq_file * , struct vfsmount * ) ;
 3517   int (*show_path)(struct seq_file * , struct vfsmount * ) ;
 3518   int (*show_stats)(struct seq_file * , struct vfsmount * ) ;
 3519   ssize_t (*quota_read)(struct super_block * , int  , char * , size_t  , loff_t  ) ;
 3520   ssize_t (*quota_write)(struct super_block * , int  , char const   * , size_t  ,
 3521                          loff_t  ) ;
 3522   int (*bdev_try_to_free_page)(struct super_block * , struct page * , gfp_t  ) ;
 3523};
 3524#line 1802 "include/linux/fs.h"
 3525struct file_system_type {
 3526   char const   *name ;
 3527   int fs_flags ;
 3528   struct dentry *(*mount)(struct file_system_type * , int  , char const   * , void * ) ;
 3529   void (*kill_sb)(struct super_block * ) ;
 3530   struct module *owner ;
 3531   struct file_system_type *next ;
 3532   struct list_head fs_supers ;
 3533   struct lock_class_key s_lock_key ;
 3534   struct lock_class_key s_umount_key ;
 3535   struct lock_class_key s_vfs_rename_key ;
 3536   struct lock_class_key i_lock_key ;
 3537   struct lock_class_key i_mutex_key ;
 3538   struct lock_class_key i_mutex_dir_key ;
 3539   struct lock_class_key i_alloc_sem_key ;
 3540};
 3541#line 2574
 3542struct ctl_table;
 3543#line 58 "include/linux/aio_abi.h"
 3544struct io_event {
 3545   __u64 data ;
 3546   __u64 obj ;
 3547   __s64 res ;
 3548   __s64 res2 ;
 3549};
 3550#line 7 "include/asm-generic/cputime.h"
 3551typedef unsigned long cputime_t;
 3552#line 97 "include/linux/proportions.h"
 3553struct prop_local_single {
 3554   unsigned long events ;
 3555   unsigned long period ;
 3556   int shift ;
 3557   spinlock_t lock ;
 3558};
 3559#line 10 "include/linux/seccomp.h"
 3560struct __anonstruct_seccomp_t_268 {
 3561   int mode ;
 3562};
 3563#line 10 "include/linux/seccomp.h"
 3564typedef struct __anonstruct_seccomp_t_268 seccomp_t;
 3565#line 40 "include/linux/rtmutex.h"
 3566struct rt_mutex_waiter;
 3567#line 40
 3568struct rt_mutex_waiter;
 3569#line 40
 3570struct rt_mutex_waiter;
 3571#line 40
 3572struct rt_mutex_waiter;
 3573#line 42 "include/linux/resource.h"
 3574struct rlimit {
 3575   unsigned long rlim_cur ;
 3576   unsigned long rlim_max ;
 3577};
 3578#line 81
 3579struct task_struct;
 3580#line 11 "include/linux/task_io_accounting.h"
 3581struct task_io_accounting {
 3582   u64 rchar ;
 3583   u64 wchar ;
 3584   u64 syscr ;
 3585   u64 syscw ;
 3586   u64 read_bytes ;
 3587   u64 write_bytes ;
 3588   u64 cancelled_write_bytes ;
 3589};
 3590#line 18 "include/linux/latencytop.h"
 3591struct latency_record {
 3592   unsigned long backtrace[12] ;
 3593   unsigned int count ;
 3594   unsigned long time ;
 3595   unsigned long max ;
 3596};
 3597#line 26
 3598struct task_struct;
 3599#line 29 "include/linux/key.h"
 3600typedef int32_t key_serial_t;
 3601#line 32 "include/linux/key.h"
 3602typedef uint32_t key_perm_t;
 3603#line 34
 3604struct key;
 3605#line 34
 3606struct key;
 3607#line 34
 3608struct key;
 3609#line 34
 3610struct key;
 3611#line 74
 3612struct seq_file;
 3613#line 75
 3614struct user_struct;
 3615#line 76
 3616struct signal_struct;
 3617#line 76
 3618struct signal_struct;
 3619#line 76
 3620struct signal_struct;
 3621#line 76
 3622struct signal_struct;
 3623#line 77
 3624struct cred;
 3625#line 79
 3626struct key_type;
 3627#line 79
 3628struct key_type;
 3629#line 79
 3630struct key_type;
 3631#line 79
 3632struct key_type;
 3633#line 81
 3634struct keyring_list;
 3635#line 81
 3636struct keyring_list;
 3637#line 81
 3638struct keyring_list;
 3639#line 81
 3640struct keyring_list;
 3641#line 124
 3642struct key_user;
 3643#line 124
 3644struct key_user;
 3645#line 124
 3646struct key_user;
 3647#line 124 "include/linux/key.h"
 3648union __anonunion____missing_field_name_269 {
 3649   time_t expiry ;
 3650   time_t revoked_at ;
 3651};
 3652#line 124 "include/linux/key.h"
 3653union __anonunion_type_data_270 {
 3654   struct list_head link ;
 3655   unsigned long x[2] ;
 3656   void *p[2] ;
 3657   int reject_error ;
 3658};
 3659#line 124 "include/linux/key.h"
 3660union __anonunion_payload_271 {
 3661   unsigned long value ;
 3662   void *rcudata ;
 3663   void *data ;
 3664   struct keyring_list *subscriptions ;
 3665};
 3666#line 124 "include/linux/key.h"
 3667struct key {
 3668   atomic_t usage ;
 3669   key_serial_t serial ;
 3670   struct rb_node serial_node ;
 3671   struct key_type *type ;
 3672   struct rw_semaphore sem ;
 3673   struct key_user *user ;
 3674   void *security ;
 3675   union __anonunion____missing_field_name_269 __annonCompField42 ;
 3676   uid_t uid ;
 3677   gid_t gid ;
 3678   key_perm_t perm ;
 3679   unsigned short quotalen ;
 3680   unsigned short datalen ;
 3681   unsigned long flags ;
 3682   char *description ;
 3683   union __anonunion_type_data_270 type_data ;
 3684   union __anonunion_payload_271 payload ;
 3685};
 3686#line 18 "include/linux/selinux.h"
 3687struct audit_context;
 3688#line 18
 3689struct audit_context;
 3690#line 18
 3691struct audit_context;
 3692#line 18
 3693struct audit_context;
 3694#line 21 "include/linux/cred.h"
 3695struct user_struct;
 3696#line 22
 3697struct cred;
 3698#line 23
 3699struct inode;
 3700#line 31 "include/linux/cred.h"
 3701struct group_info {
 3702   atomic_t usage ;
 3703   int ngroups ;
 3704   int nblocks ;
 3705   gid_t small_block[32] ;
 3706   gid_t *blocks[0] ;
 3707};
 3708#line 83 "include/linux/cred.h"
 3709struct thread_group_cred {
 3710   atomic_t usage ;
 3711   pid_t tgid ;
 3712   spinlock_t lock ;
 3713   struct key *session_keyring ;
 3714   struct key *process_keyring ;
 3715   struct rcu_head rcu ;
 3716};
 3717#line 116 "include/linux/cred.h"
 3718struct cred {
 3719   atomic_t usage ;
 3720   atomic_t subscribers ;
 3721   void *put_addr ;
 3722   unsigned int magic ;
 3723   uid_t uid ;
 3724   gid_t gid ;
 3725   uid_t suid ;
 3726   gid_t sgid ;
 3727   uid_t euid ;
 3728   gid_t egid ;
 3729   uid_t fsuid ;
 3730   gid_t fsgid ;
 3731   unsigned int securebits ;
 3732   kernel_cap_t cap_inheritable ;
 3733   kernel_cap_t cap_permitted ;
 3734   kernel_cap_t cap_effective ;
 3735   kernel_cap_t cap_bset ;
 3736   unsigned char jit_keyring ;
 3737   struct key *thread_keyring ;
 3738   struct key *request_key_auth ;
 3739   struct thread_group_cred *tgcred ;
 3740   void *security ;
 3741   struct user_struct *user ;
 3742   struct user_namespace *user_ns ;
 3743   struct group_info *group_info ;
 3744   struct rcu_head rcu ;
 3745};
 3746#line 97 "include/linux/sched.h"
 3747struct futex_pi_state;
 3748#line 97
 3749struct futex_pi_state;
 3750#line 97
 3751struct futex_pi_state;
 3752#line 97
 3753struct futex_pi_state;
 3754#line 98
 3755struct robust_list_head;
 3756#line 98
 3757struct robust_list_head;
 3758#line 98
 3759struct robust_list_head;
 3760#line 98
 3761struct robust_list_head;
 3762#line 99
 3763struct bio_list;
 3764#line 99
 3765struct bio_list;
 3766#line 99
 3767struct bio_list;
 3768#line 99
 3769struct bio_list;
 3770#line 100
 3771struct fs_struct;
 3772#line 100
 3773struct fs_struct;
 3774#line 100
 3775struct fs_struct;
 3776#line 100
 3777struct fs_struct;
 3778#line 101
 3779struct perf_event_context;
 3780#line 101
 3781struct perf_event_context;
 3782#line 101
 3783struct perf_event_context;
 3784#line 101
 3785struct perf_event_context;
 3786#line 102
 3787struct blk_plug;
 3788#line 102
 3789struct blk_plug;
 3790#line 102
 3791struct blk_plug;
 3792#line 102
 3793struct blk_plug;
 3794#line 150
 3795struct seq_file;
 3796#line 151
 3797struct cfs_rq;
 3798#line 151
 3799struct cfs_rq;
 3800#line 151
 3801struct cfs_rq;
 3802#line 151
 3803struct cfs_rq;
 3804#line 259
 3805struct task_struct;
 3806#line 364
 3807struct nsproxy;
 3808#line 365
 3809struct user_namespace;
 3810#line 15 "include/linux/aio.h"
 3811struct kioctx;
 3812#line 15
 3813struct kioctx;
 3814#line 15
 3815struct kioctx;
 3816#line 15
 3817struct kioctx;
 3818#line 87 "include/linux/aio.h"
 3819union __anonunion_ki_obj_272 {
 3820   void *user ;
 3821   struct task_struct *tsk ;
 3822};
 3823#line 87
 3824struct eventfd_ctx;
 3825#line 87
 3826struct eventfd_ctx;
 3827#line 87
 3828struct eventfd_ctx;
 3829#line 87 "include/linux/aio.h"
 3830struct kiocb {
 3831   struct list_head ki_run_list ;
 3832   unsigned long ki_flags ;
 3833   int ki_users ;
 3834   unsigned int ki_key ;
 3835   struct file *ki_filp ;
 3836   struct kioctx *ki_ctx ;
 3837   int (*ki_cancel)(struct kiocb * , struct io_event * ) ;
 3838   ssize_t (*ki_retry)(struct kiocb * ) ;
 3839   void (*ki_dtor)(struct kiocb * ) ;
 3840   union __anonunion_ki_obj_272 ki_obj ;
 3841   __u64 ki_user_data ;
 3842   loff_t ki_pos ;
 3843   void *private ;
 3844   unsigned short ki_opcode ;
 3845   size_t ki_nbytes ;
 3846   char *ki_buf ;
 3847   size_t ki_left ;
 3848   struct iovec ki_inline_vec ;
 3849   struct iovec *ki_iovec ;
 3850   unsigned long ki_nr_segs ;
 3851   unsigned long ki_cur_seg ;
 3852   struct list_head ki_list ;
 3853   struct eventfd_ctx *ki_eventfd ;
 3854};
 3855#line 165 "include/linux/aio.h"
 3856struct aio_ring_info {
 3857   unsigned long mmap_base ;
 3858   unsigned long mmap_size ;
 3859   struct page **ring_pages ;
 3860   spinlock_t ring_lock ;
 3861   long nr_pages ;
 3862   unsigned int nr ;
 3863   unsigned int tail ;
 3864   struct page *internal_pages[8] ;
 3865};
 3866#line 178 "include/linux/aio.h"
 3867struct kioctx {
 3868   atomic_t users ;
 3869   int dead ;
 3870   struct mm_struct *mm ;
 3871   unsigned long user_id ;
 3872   struct hlist_node list ;
 3873   wait_queue_head_t wait ;
 3874   spinlock_t ctx_lock ;
 3875   int reqs_active ;
 3876   struct list_head active_reqs ;
 3877   struct list_head run_list ;
 3878   unsigned int max_reqs ;
 3879   struct aio_ring_info ring_info ;
 3880   struct delayed_work wq ;
 3881   struct rcu_head rcu_head ;
 3882};
 3883#line 213
 3884struct mm_struct;
 3885#line 441 "include/linux/sched.h"
 3886struct sighand_struct {
 3887   atomic_t count ;
 3888   struct k_sigaction action[64] ;
 3889   spinlock_t siglock ;
 3890   wait_queue_head_t signalfd_wqh ;
 3891};
 3892#line 448 "include/linux/sched.h"
 3893struct pacct_struct {
 3894   int ac_flag ;
 3895   long ac_exitcode ;
 3896   unsigned long ac_mem ;
 3897   cputime_t ac_utime ;
 3898   cputime_t ac_stime ;
 3899   unsigned long ac_minflt ;
 3900   unsigned long ac_majflt ;
 3901};
 3902#line 456 "include/linux/sched.h"
 3903struct cpu_itimer {
 3904   cputime_t expires ;
 3905   cputime_t incr ;
 3906   u32 error ;
 3907   u32 incr_error ;
 3908};
 3909#line 474 "include/linux/sched.h"
 3910struct task_cputime {
 3911   cputime_t utime ;
 3912   cputime_t stime ;
 3913   unsigned long long sum_exec_runtime ;
 3914};
 3915#line 510 "include/linux/sched.h"
 3916struct thread_group_cputimer {
 3917   struct task_cputime cputime ;
 3918   int running ;
 3919   spinlock_t lock ;
 3920};
 3921#line 517
 3922struct autogroup;
 3923#line 517
 3924struct autogroup;
 3925#line 517
 3926struct autogroup;
 3927#line 517
 3928struct autogroup;
 3929#line 526
 3930struct tty_struct;
 3931#line 526
 3932struct tty_struct;
 3933#line 526
 3934struct tty_struct;
 3935#line 526
 3936struct taskstats;
 3937#line 526
 3938struct taskstats;
 3939#line 526
 3940struct taskstats;
 3941#line 526
 3942struct tty_audit_buf;
 3943#line 526
 3944struct tty_audit_buf;
 3945#line 526
 3946struct tty_audit_buf;
 3947#line 526 "include/linux/sched.h"
 3948struct signal_struct {
 3949   atomic_t sigcnt ;
 3950   atomic_t live ;
 3951   int nr_threads ;
 3952   wait_queue_head_t wait_chldexit ;
 3953   struct task_struct *curr_target ;
 3954   struct sigpending shared_pending ;
 3955   int group_exit_code ;
 3956   int notify_count ;
 3957   struct task_struct *group_exit_task ;
 3958   int group_stop_count ;
 3959   unsigned int flags ;
 3960   struct list_head posix_timers ;
 3961   struct hrtimer real_timer ;
 3962   struct pid *leader_pid ;
 3963   ktime_t it_real_incr ;
 3964   struct cpu_itimer it[2] ;
 3965   struct thread_group_cputimer cputimer ;
 3966   struct task_cputime cputime_expires ;
 3967   struct list_head cpu_timers[3] ;
 3968   struct pid *tty_old_pgrp ;
 3969   int leader ;
 3970   struct tty_struct *tty ;
 3971   struct autogroup *autogroup ;
 3972   cputime_t utime ;
 3973   cputime_t stime ;
 3974   cputime_t cutime ;
 3975   cputime_t cstime ;
 3976   cputime_t gtime ;
 3977   cputime_t cgtime ;
 3978   cputime_t prev_utime ;
 3979   cputime_t prev_stime ;
 3980   unsigned long nvcsw ;
 3981   unsigned long nivcsw ;
 3982   unsigned long cnvcsw ;
 3983   unsigned long cnivcsw ;
 3984   unsigned long min_flt ;
 3985   unsigned long maj_flt ;
 3986   unsigned long cmin_flt ;
 3987   unsigned long cmaj_flt ;
 3988   unsigned long inblock ;
 3989   unsigned long oublock ;
 3990   unsigned long cinblock ;
 3991   unsigned long coublock ;
 3992   unsigned long maxrss ;
 3993   unsigned long cmaxrss ;
 3994   struct task_io_accounting ioac ;
 3995   unsigned long long sum_sched_runtime ;
 3996   struct rlimit rlim[16] ;
 3997   struct pacct_struct pacct ;
 3998   struct taskstats *stats ;
 3999   unsigned int audit_tty ;
 4000   struct tty_audit_buf *tty_audit_buf ;
 4001   struct rw_semaphore threadgroup_fork_lock ;
 4002   int oom_adj ;
 4003   int oom_score_adj ;
 4004   int oom_score_adj_min ;
 4005   struct mutex cred_guard_mutex ;
 4006};
 4007#line 687 "include/linux/sched.h"
 4008struct user_struct {
 4009   atomic_t __count ;
 4010   atomic_t processes ;
 4011   atomic_t files ;
 4012   atomic_t sigpending ;
 4013   atomic_t inotify_watches ;
 4014   atomic_t inotify_devs ;
 4015   atomic_t fanotify_listeners ;
 4016   atomic_long_t epoll_watches ;
 4017   unsigned long mq_bytes ;
 4018   unsigned long locked_shm ;
 4019   struct key *uid_keyring ;
 4020   struct key *session_keyring ;
 4021   struct hlist_node uidhash_node ;
 4022   uid_t uid ;
 4023   struct user_namespace *user_ns ;
 4024   atomic_long_t locked_vm ;
 4025};
 4026#line 731
 4027struct backing_dev_info;
 4028#line 732
 4029struct reclaim_state;
 4030#line 732
 4031struct reclaim_state;
 4032#line 732
 4033struct reclaim_state;
 4034#line 732
 4035struct reclaim_state;
 4036#line 735 "include/linux/sched.h"
 4037struct sched_info {
 4038   unsigned long pcount ;
 4039   unsigned long long run_delay ;
 4040   unsigned long long last_arrival ;
 4041   unsigned long long last_queued ;
 4042};
 4043#line 747 "include/linux/sched.h"
 4044struct task_delay_info {
 4045   spinlock_t lock ;
 4046   unsigned int flags ;
 4047   struct timespec blkio_start ;
 4048   struct timespec blkio_end ;
 4049   u64 blkio_delay ;
 4050   u64 swapin_delay ;
 4051   u32 blkio_count ;
 4052   u32 swapin_count ;
 4053   struct timespec freepages_start ;
 4054   struct timespec freepages_end ;
 4055   u64 freepages_delay ;
 4056   u32 freepages_count ;
 4057};
 4058#line 1050
 4059struct io_context;
 4060#line 1050
 4061struct io_context;
 4062#line 1050
 4063struct io_context;
 4064#line 1050
 4065struct io_context;
 4066#line 1059
 4067struct audit_context;
 4068#line 1060
 4069struct mempolicy;
 4070#line 1061
 4071struct pipe_inode_info;
 4072#line 1064
 4073struct rq;
 4074#line 1064
 4075struct rq;
 4076#line 1064
 4077struct rq;
 4078#line 1064
 4079struct rq;
 4080#line 1084 "include/linux/sched.h"
 4081struct sched_class {
 4082   struct sched_class  const  *next ;
 4083   void (*enqueue_task)(struct rq *rq , struct task_struct *p , int flags ) ;
 4084   void (*dequeue_task)(struct rq *rq , struct task_struct *p , int flags ) ;
 4085   void (*yield_task)(struct rq *rq ) ;
 4086   bool (*yield_to_task)(struct rq *rq , struct task_struct *p , bool preempt ) ;
 4087   void (*check_preempt_curr)(struct rq *rq , struct task_struct *p , int flags ) ;
 4088   struct task_struct *(*pick_next_task)(struct rq *rq ) ;
 4089   void (*put_prev_task)(struct rq *rq , struct task_struct *p ) ;
 4090   int (*select_task_rq)(struct task_struct *p , int sd_flag , int flags ) ;
 4091   void (*pre_schedule)(struct rq *this_rq , struct task_struct *task ) ;
 4092   void (*post_schedule)(struct rq *this_rq ) ;
 4093   void (*task_waking)(struct task_struct *task ) ;
 4094   void (*task_woken)(struct rq *this_rq , struct task_struct *task ) ;
 4095   void (*set_cpus_allowed)(struct task_struct *p , struct cpumask  const  *newmask ) ;
 4096   void (*rq_online)(struct rq *rq ) ;
 4097   void (*rq_offline)(struct rq *rq ) ;
 4098   void (*set_curr_task)(struct rq *rq ) ;
 4099   void (*task_tick)(struct rq *rq , struct task_struct *p , int queued ) ;
 4100   void (*task_fork)(struct task_struct *p ) ;
 4101   void (*switched_from)(struct rq *this_rq , struct task_struct *task ) ;
 4102   void (*switched_to)(struct rq *this_rq , struct task_struct *task ) ;
 4103   void (*prio_changed)(struct rq *this_rq , struct task_struct *task , int oldprio ) ;
 4104   unsigned int (*get_rr_interval)(struct rq *rq , struct task_struct *task ) ;
 4105   void (*task_move_group)(struct task_struct *p , int on_rq ) ;
 4106};
 4107#line 1129 "include/linux/sched.h"
 4108struct load_weight {
 4109   unsigned long weight ;
 4110   unsigned long inv_weight ;
 4111};
 4112#line 1134 "include/linux/sched.h"
 4113struct sched_statistics {
 4114   u64 wait_start ;
 4115   u64 wait_max ;
 4116   u64 wait_count ;
 4117   u64 wait_sum ;
 4118   u64 iowait_count ;
 4119   u64 iowait_sum ;
 4120   u64 sleep_start ;
 4121   u64 sleep_max ;
 4122   s64 sum_sleep_runtime ;
 4123   u64 block_start ;
 4124   u64 block_max ;
 4125   u64 exec_max ;
 4126   u64 slice_max ;
 4127   u64 nr_migrations_cold ;
 4128   u64 nr_failed_migrations_affine ;
 4129   u64 nr_failed_migrations_running ;
 4130   u64 nr_failed_migrations_hot ;
 4131   u64 nr_forced_migrations ;
 4132   u64 nr_wakeups ;
 4133   u64 nr_wakeups_sync ;
 4134   u64 nr_wakeups_migrate ;
 4135   u64 nr_wakeups_local ;
 4136   u64 nr_wakeups_remote ;
 4137   u64 nr_wakeups_affine ;
 4138   u64 nr_wakeups_affine_attempts ;
 4139   u64 nr_wakeups_passive ;
 4140   u64 nr_wakeups_idle ;
 4141};
 4142#line 1169 "include/linux/sched.h"
 4143struct sched_entity {
 4144   struct load_weight load ;
 4145   struct rb_node run_node ;
 4146   struct list_head group_node ;
 4147   unsigned int on_rq ;
 4148   u64 exec_start ;
 4149   u64 sum_exec_runtime ;
 4150   u64 vruntime ;
 4151   u64 prev_sum_exec_runtime ;
 4152   u64 nr_migrations ;
 4153   struct sched_statistics statistics ;
 4154   struct sched_entity *parent ;
 4155   struct cfs_rq *cfs_rq ;
 4156   struct cfs_rq *my_q ;
 4157};
 4158#line 1195
 4159struct rt_rq;
 4160#line 1195
 4161struct rt_rq;
 4162#line 1195
 4163struct rt_rq;
 4164#line 1195 "include/linux/sched.h"
 4165struct sched_rt_entity {
 4166   struct list_head run_list ;
 4167   unsigned long timeout ;
 4168   unsigned int time_slice ;
 4169   int nr_cpus_allowed ;
 4170   struct sched_rt_entity *back ;
 4171   struct sched_rt_entity *parent ;
 4172   struct rt_rq *rt_rq ;
 4173   struct rt_rq *my_q ;
 4174};
 4175#line 1220
 4176struct irqaction;
 4177#line 1220
 4178struct irqaction;
 4179#line 1220
 4180struct irqaction;
 4181#line 1220
 4182struct css_set;
 4183#line 1220
 4184struct css_set;
 4185#line 1220
 4186struct css_set;
 4187#line 1220
 4188struct compat_robust_list_head;
 4189#line 1220
 4190struct compat_robust_list_head;
 4191#line 1220
 4192struct compat_robust_list_head;
 4193#line 1220
 4194struct ftrace_ret_stack;
 4195#line 1220
 4196struct ftrace_ret_stack;
 4197#line 1220
 4198struct ftrace_ret_stack;
 4199#line 1220
 4200struct mem_cgroup;
 4201#line 1220
 4202struct mem_cgroup;
 4203#line 1220
 4204struct mem_cgroup;
 4205#line 1220 "include/linux/sched.h"
 4206struct memcg_batch_info {
 4207   int do_batch ;
 4208   struct mem_cgroup *memcg ;
 4209   unsigned long nr_pages ;
 4210   unsigned long memsw_nr_pages ;
 4211};
 4212#line 1220 "include/linux/sched.h"
 4213struct task_struct {
 4214   long volatile   state ;
 4215   void *stack ;
 4216   atomic_t usage ;
 4217   unsigned int flags ;
 4218   unsigned int ptrace ;
 4219   struct task_struct *wake_entry ;
 4220   int on_cpu ;
 4221   int on_rq ;
 4222   int prio ;
 4223   int static_prio ;
 4224   int normal_prio ;
 4225   unsigned int rt_priority ;
 4226   struct sched_class  const  *sched_class ;
 4227   struct sched_entity se ;
 4228   struct sched_rt_entity rt ;
 4229   struct hlist_head preempt_notifiers ;
 4230   unsigned char fpu_counter ;
 4231   unsigned int btrace_seq ;
 4232   unsigned int policy ;
 4233   cpumask_t cpus_allowed ;
 4234   struct sched_info sched_info ;
 4235   struct list_head tasks ;
 4236   struct plist_node pushable_tasks ;
 4237   struct mm_struct *mm ;
 4238   struct mm_struct *active_mm ;
 4239   unsigned int brk_randomized : 1 ;
 4240   int exit_state ;
 4241   int exit_code ;
 4242   int exit_signal ;
 4243   int pdeath_signal ;
 4244   unsigned int group_stop ;
 4245   unsigned int personality ;
 4246   unsigned int did_exec : 1 ;
 4247   unsigned int in_execve : 1 ;
 4248   unsigned int in_iowait : 1 ;
 4249   unsigned int sched_reset_on_fork : 1 ;
 4250   unsigned int sched_contributes_to_load : 1 ;
 4251   pid_t pid ;
 4252   pid_t tgid ;
 4253   unsigned long stack_canary ;
 4254   struct task_struct *real_parent ;
 4255   struct task_struct *parent ;
 4256   struct list_head children ;
 4257   struct list_head sibling ;
 4258   struct task_struct *group_leader ;
 4259   struct list_head ptraced ;
 4260   struct list_head ptrace_entry ;
 4261   struct pid_link pids[3] ;
 4262   struct list_head thread_group ;
 4263   struct completion *vfork_done ;
 4264   int *set_child_tid ;
 4265   int *clear_child_tid ;
 4266   cputime_t utime ;
 4267   cputime_t stime ;
 4268   cputime_t utimescaled ;
 4269   cputime_t stimescaled ;
 4270   cputime_t gtime ;
 4271   cputime_t prev_utime ;
 4272   cputime_t prev_stime ;
 4273   unsigned long nvcsw ;
 4274   unsigned long nivcsw ;
 4275   struct timespec start_time ;
 4276   struct timespec real_start_time ;
 4277   unsigned long min_flt ;
 4278   unsigned long maj_flt ;
 4279   struct task_cputime cputime_expires ;
 4280   struct list_head cpu_timers[3] ;
 4281   struct cred  const  *real_cred ;
 4282   struct cred  const  *cred ;
 4283   struct cred *replacement_session_keyring ;
 4284   char comm[16] ;
 4285   int link_count ;
 4286   int total_link_count ;
 4287   struct sysv_sem sysvsem ;
 4288   unsigned long last_switch_count ;
 4289   struct thread_struct thread ;
 4290   struct fs_struct *fs ;
 4291   struct files_struct *files ;
 4292   struct nsproxy *nsproxy ;
 4293   struct signal_struct *signal ;
 4294   struct sighand_struct *sighand ;
 4295   sigset_t blocked ;
 4296   sigset_t real_blocked ;
 4297   sigset_t saved_sigmask ;
 4298   struct sigpending pending ;
 4299   unsigned long sas_ss_sp ;
 4300   size_t sas_ss_size ;
 4301   int (*notifier)(void *priv ) ;
 4302   void *notifier_data ;
 4303   sigset_t *notifier_mask ;
 4304   struct audit_context *audit_context ;
 4305   uid_t loginuid ;
 4306   unsigned int sessionid ;
 4307   seccomp_t seccomp ;
 4308   u32 parent_exec_id ;
 4309   u32 self_exec_id ;
 4310   spinlock_t alloc_lock ;
 4311   struct irqaction *irqaction ;
 4312   raw_spinlock_t pi_lock ;
 4313   struct plist_head pi_waiters ;
 4314   struct rt_mutex_waiter *pi_blocked_on ;
 4315   struct mutex_waiter *blocked_on ;
 4316   unsigned int irq_events ;
 4317   unsigned long hardirq_enable_ip ;
 4318   unsigned long hardirq_disable_ip ;
 4319   unsigned int hardirq_enable_event ;
 4320   unsigned int hardirq_disable_event ;
 4321   int hardirqs_enabled ;
 4322   int hardirq_context ;
 4323   unsigned long softirq_disable_ip ;
 4324   unsigned long softirq_enable_ip ;
 4325   unsigned int softirq_disable_event ;
 4326   unsigned int softirq_enable_event ;
 4327   int softirqs_enabled ;
 4328   int softirq_context ;
 4329   u64 curr_chain_key ;
 4330   int lockdep_depth ;
 4331   unsigned int lockdep_recursion ;
 4332   struct held_lock held_locks[48UL] ;
 4333   gfp_t lockdep_reclaim_gfp ;
 4334   void *journal_info ;
 4335   struct bio_list *bio_list ;
 4336   struct blk_plug *plug ;
 4337   struct reclaim_state *reclaim_state ;
 4338   struct backing_dev_info *backing_dev_info ;
 4339   struct io_context *io_context ;
 4340   unsigned long ptrace_message ;
 4341   siginfo_t *last_siginfo ;
 4342   struct task_io_accounting ioac ;
 4343   u64 acct_rss_mem1 ;
 4344   u64 acct_vm_mem1 ;
 4345   cputime_t acct_timexpd ;
 4346   nodemask_t mems_allowed ;
 4347   int mems_allowed_change_disable ;
 4348   int cpuset_mem_spread_rotor ;
 4349   int cpuset_slab_spread_rotor ;
 4350   struct css_set *cgroups ;
 4351   struct list_head cg_list ;
 4352   struct robust_list_head *robust_list ;
 4353   struct compat_robust_list_head *compat_robust_list ;
 4354   struct list_head pi_state_list ;
 4355   struct futex_pi_state *pi_state_cache ;
 4356   struct perf_event_context *perf_event_ctxp[2] ;
 4357   struct mutex perf_event_mutex ;
 4358   struct list_head perf_event_list ;
 4359   struct mempolicy *mempolicy ;
 4360   short il_next ;
 4361   short pref_node_fork ;
 4362   atomic_t fs_excl ;
 4363   struct rcu_head rcu ;
 4364   struct pipe_inode_info *splice_pipe ;
 4365   struct task_delay_info *delays ;
 4366   int make_it_fail ;
 4367   struct prop_local_single dirties ;
 4368   int latency_record_count ;
 4369   struct latency_record latency_record[32] ;
 4370   unsigned long timer_slack_ns ;
 4371   unsigned long default_timer_slack_ns ;
 4372   struct list_head *scm_work_list ;
 4373   int curr_ret_stack ;
 4374   struct ftrace_ret_stack *ret_stack ;
 4375   unsigned long long ftrace_timestamp ;
 4376   atomic_t trace_overrun ;
 4377   atomic_t tracing_graph_pause ;
 4378   unsigned long trace ;
 4379   unsigned long trace_recursion ;
 4380   struct memcg_batch_info memcg_batch ;
 4381   atomic_t ptrace_bp_refcnt ;
 4382};
 4383#line 1634
 4384struct pid_namespace;
 4385#line 37 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/compat.h"
 4386typedef s32 compat_long_t;
 4387#line 196 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/compat.h"
 4388typedef u32 compat_uptr_t;
 4389#line 206 "include/linux/compat.h"
 4390struct compat_robust_list {
 4391   compat_uptr_t next ;
 4392};
 4393#line 210 "include/linux/compat.h"
 4394struct compat_robust_list_head {
 4395   struct compat_robust_list list ;
 4396   compat_long_t futex_offset ;
 4397   compat_uptr_t list_op_pending ;
 4398};
 4399#line 23 "include/linux/ethtool.h"
 4400struct ethtool_cmd {
 4401   __u32 cmd ;
 4402   __u32 supported ;
 4403   __u32 advertising ;
 4404   __u16 speed ;
 4405   __u8 duplex ;
 4406   __u8 port ;
 4407   __u8 phy_address ;
 4408   __u8 transceiver ;
 4409   __u8 autoneg ;
 4410   __u8 mdio_support ;
 4411   __u32 maxtxpkt ;
 4412   __u32 maxrxpkt ;
 4413   __u16 speed_hi ;
 4414   __u8 eth_tp_mdix ;
 4415   __u8 reserved2 ;
 4416   __u32 lp_advertising ;
 4417   __u32 reserved[2] ;
 4418};
 4419#line 65 "include/linux/ethtool.h"
 4420struct ethtool_drvinfo {
 4421   __u32 cmd ;
 4422   char driver[32] ;
 4423   char version[32] ;
 4424   char fw_version[32] ;
 4425   char bus_info[32] ;
 4426   char reserved1[32] ;
 4427   char reserved2[12] ;
 4428   __u32 n_priv_flags ;
 4429   __u32 n_stats ;
 4430   __u32 testinfo_len ;
 4431   __u32 eedump_len ;
 4432   __u32 regdump_len ;
 4433};
 4434#line 90 "include/linux/ethtool.h"
 4435struct ethtool_wolinfo {
 4436   __u32 cmd ;
 4437   __u32 supported ;
 4438   __u32 wolopts ;
 4439   __u8 sopass[6] ;
 4440};
 4441#line 104 "include/linux/ethtool.h"
 4442struct ethtool_regs {
 4443   __u32 cmd ;
 4444   __u32 version ;
 4445   __u32 len ;
 4446   __u8 data[0] ;
 4447};
 4448#line 112 "include/linux/ethtool.h"
 4449struct ethtool_eeprom {
 4450   __u32 cmd ;
 4451   __u32 magic ;
 4452   __u32 offset ;
 4453   __u32 len ;
 4454   __u8 data[0] ;
 4455};
 4456#line 121 "include/linux/ethtool.h"
 4457struct ethtool_coalesce {
 4458   __u32 cmd ;
 4459   __u32 rx_coalesce_usecs ;
 4460   __u32 rx_max_coalesced_frames ;
 4461   __u32 rx_coalesce_usecs_irq ;
 4462   __u32 rx_max_coalesced_frames_irq ;
 4463   __u32 tx_coalesce_usecs ;
 4464   __u32 tx_max_coalesced_frames ;
 4465   __u32 tx_coalesce_usecs_irq ;
 4466   __u32 tx_max_coalesced_frames_irq ;
 4467   __u32 stats_block_coalesce_usecs ;
 4468   __u32 use_adaptive_rx_coalesce ;
 4469   __u32 use_adaptive_tx_coalesce ;
 4470   __u32 pkt_rate_low ;
 4471   __u32 rx_coalesce_usecs_low ;
 4472   __u32 rx_max_coalesced_frames_low ;
 4473   __u32 tx_coalesce_usecs_low ;
 4474   __u32 tx_max_coalesced_frames_low ;
 4475   __u32 pkt_rate_high ;
 4476   __u32 rx_coalesce_usecs_high ;
 4477   __u32 rx_max_coalesced_frames_high ;
 4478   __u32 tx_coalesce_usecs_high ;
 4479   __u32 tx_max_coalesced_frames_high ;
 4480   __u32 rate_sample_interval ;
 4481};
 4482#line 217 "include/linux/ethtool.h"
 4483struct ethtool_ringparam {
 4484   __u32 cmd ;
 4485   __u32 rx_max_pending ;
 4486   __u32 rx_mini_max_pending ;
 4487   __u32 rx_jumbo_max_pending ;
 4488   __u32 tx_max_pending ;
 4489   __u32 rx_pending ;
 4490   __u32 rx_mini_pending ;
 4491   __u32 rx_jumbo_pending ;
 4492   __u32 tx_pending ;
 4493};
 4494#line 254 "include/linux/ethtool.h"
 4495struct ethtool_channels {
 4496   __u32 cmd ;
 4497   __u32 max_rx ;
 4498   __u32 max_tx ;
 4499   __u32 max_other ;
 4500   __u32 max_combined ;
 4501   __u32 rx_count ;
 4502   __u32 tx_count ;
 4503   __u32 other_count ;
 4504   __u32 combined_count ;
 4505};
 4506#line 267 "include/linux/ethtool.h"
 4507struct ethtool_pauseparam {
 4508   __u32 cmd ;
 4509   __u32 autoneg ;
 4510   __u32 rx_pause ;
 4511   __u32 tx_pause ;
 4512};
 4513#line 319 "include/linux/ethtool.h"
 4514struct ethtool_test {
 4515   __u32 cmd ;
 4516   __u32 flags ;
 4517   __u32 reserved ;
 4518   __u32 len ;
 4519   __u64 data[0] ;
 4520};
 4521#line 328 "include/linux/ethtool.h"
 4522struct ethtool_stats {
 4523   __u32 cmd ;
 4524   __u32 n_stats ;
 4525   __u64 data[0] ;
 4526};
 4527#line 373 "include/linux/ethtool.h"
 4528struct ethtool_tcpip4_spec {
 4529   __be32 ip4src ;
 4530   __be32 ip4dst ;
 4531   __be16 psrc ;
 4532   __be16 pdst ;
 4533   __u8 tos ;
 4534};
 4535#line 390 "include/linux/ethtool.h"
 4536struct ethtool_ah_espip4_spec {
 4537   __be32 ip4src ;
 4538   __be32 ip4dst ;
 4539   __be32 spi ;
 4540   __u8 tos ;
 4541};
 4542#line 408 "include/linux/ethtool.h"
 4543struct ethtool_usrip4_spec {
 4544   __be32 ip4src ;
 4545   __be32 ip4dst ;
 4546   __be32 l4_4_bytes ;
 4547   __u8 tos ;
 4548   __u8 ip_ver ;
 4549   __u8 proto ;
 4550};
 4551#line 417 "include/linux/ethtool.h"
 4552union ethtool_flow_union {
 4553   struct ethtool_tcpip4_spec tcp_ip4_spec ;
 4554   struct ethtool_tcpip4_spec udp_ip4_spec ;
 4555   struct ethtool_tcpip4_spec sctp_ip4_spec ;
 4556   struct ethtool_ah_espip4_spec ah_ip4_spec ;
 4557   struct ethtool_ah_espip4_spec esp_ip4_spec ;
 4558   struct ethtool_usrip4_spec usr_ip4_spec ;
 4559   struct ethhdr ether_spec ;
 4560   __u8 hdata[60] ;
 4561};
 4562#line 428 "include/linux/ethtool.h"
 4563struct ethtool_flow_ext {
 4564   __be16 vlan_etype ;
 4565   __be16 vlan_tci ;
 4566   __be32 data[2] ;
 4567};
 4568#line 447 "include/linux/ethtool.h"
 4569struct ethtool_rx_flow_spec {
 4570   __u32 flow_type ;
 4571   union ethtool_flow_union h_u ;
 4572   struct ethtool_flow_ext h_ext ;
 4573   union ethtool_flow_union m_u ;
 4574   struct ethtool_flow_ext m_ext ;
 4575   __u64 ring_cookie ;
 4576   __u32 location ;
 4577};
 4578#line 496 "include/linux/ethtool.h"
 4579struct ethtool_rxnfc {
 4580   __u32 cmd ;
 4581   __u32 flow_type ;
 4582   __u64 data ;
 4583   struct ethtool_rx_flow_spec fs ;
 4584   __u32 rule_cnt ;
 4585   __u32 rule_locs[0] ;
 4586};
 4587#line 537 "include/linux/ethtool.h"
 4588struct ethtool_rxfh_indir {
 4589   __u32 cmd ;
 4590   __u32 size ;
 4591   __u32 ring_index[0] ;
 4592};
 4593#line 559 "include/linux/ethtool.h"
 4594union __anonunion_h_u_279 {
 4595   struct ethtool_tcpip4_spec tcp_ip4_spec ;
 4596   struct ethtool_tcpip4_spec udp_ip4_spec ;
 4597   struct ethtool_tcpip4_spec sctp_ip4_spec ;
 4598   struct ethtool_ah_espip4_spec ah_ip4_spec ;
 4599   struct ethtool_ah_espip4_spec esp_ip4_spec ;
 4600   struct ethtool_usrip4_spec usr_ip4_spec ;
 4601   struct ethhdr ether_spec ;
 4602   __u8 hdata[72] ;
 4603};
 4604#line 559 "include/linux/ethtool.h"
 4605struct ethtool_rx_ntuple_flow_spec {
 4606   __u32 flow_type ;
 4607   union __anonunion_h_u_279 h_u ;
 4608   union __anonunion_h_u_279 m_u ;
 4609   __u16 vlan_tag ;
 4610   __u16 vlan_tag_mask ;
 4611   __u64 data ;
 4612   __u64 data_mask ;
 4613   __s32 action ;
 4614};
 4615#line 587 "include/linux/ethtool.h"
 4616struct ethtool_rx_ntuple {
 4617   __u32 cmd ;
 4618   struct ethtool_rx_ntuple_flow_spec fs ;
 4619};
 4620#line 598 "include/linux/ethtool.h"
 4621struct ethtool_flash {
 4622   __u32 cmd ;
 4623   __u32 region ;
 4624   char data[128] ;
 4625};
 4626#line 616 "include/linux/ethtool.h"
 4627struct ethtool_dump {
 4628   __u32 cmd ;
 4629   __u32 version ;
 4630   __u32 flag ;
 4631   __u32 len ;
 4632   __u8 data[0] ;
 4633};
 4634#line 722 "include/linux/ethtool.h"
 4635struct ethtool_rx_ntuple_list {
 4636   struct list_head list ;
 4637   unsigned int count ;
 4638};
 4639#line 738
 4640enum ethtool_phys_id_state {
 4641    ETHTOOL_ID_INACTIVE = 0,
 4642    ETHTOOL_ID_ACTIVE = 1,
 4643    ETHTOOL_ID_ON = 2,
 4644    ETHTOOL_ID_OFF = 3
 4645} ;
 4646#line 745
 4647struct net_device;
 4648#line 891 "include/linux/ethtool.h"
 4649struct ethtool_ops {
 4650   int (*get_settings)(struct net_device * , struct ethtool_cmd * ) ;
 4651   int (*set_settings)(struct net_device * , struct ethtool_cmd * ) ;
 4652   void (*get_drvinfo)(struct net_device * , struct ethtool_drvinfo * ) ;
 4653   int (*get_regs_len)(struct net_device * ) ;
 4654   void (*get_regs)(struct net_device * , struct ethtool_regs * , void * ) ;
 4655   void (*get_wol)(struct net_device * , struct ethtool_wolinfo * ) ;
 4656   int (*set_wol)(struct net_device * , struct ethtool_wolinfo * ) ;
 4657   u32 (*get_msglevel)(struct net_device * ) ;
 4658   void (*set_msglevel)(struct net_device * , u32  ) ;
 4659   int (*nway_reset)(struct net_device * ) ;
 4660   u32 (*get_link)(struct net_device * ) ;
 4661   int (*get_eeprom_len)(struct net_device * ) ;
 4662   int (*get_eeprom)(struct net_device * , struct ethtool_eeprom * , u8 * ) ;
 4663   int (*set_eeprom)(struct net_device * , struct ethtool_eeprom * , u8 * ) ;
 4664   int (*get_coalesce)(struct net_device * , struct ethtool_coalesce * ) ;
 4665   int (*set_coalesce)(struct net_device * , struct ethtool_coalesce * ) ;
 4666   void (*get_ringparam)(struct net_device * , struct ethtool_ringparam * ) ;
 4667   int (*set_ringparam)(struct net_device * , struct ethtool_ringparam * ) ;
 4668   void (*get_pauseparam)(struct net_device * , struct ethtool_pauseparam * ) ;
 4669   int (*set_pauseparam)(struct net_device * , struct ethtool_pauseparam * ) ;
 4670   u32 (*get_rx_csum)(struct net_device * ) ;
 4671   int (*set_rx_csum)(struct net_device * , u32  ) ;
 4672   u32 (*get_tx_csum)(struct net_device * ) ;
 4673   int (*set_tx_csum)(struct net_device * , u32  ) ;
 4674   u32 (*get_sg)(struct net_device * ) ;
 4675   int (*set_sg)(struct net_device * , u32  ) ;
 4676   u32 (*get_tso)(struct net_device * ) ;
 4677   int (*set_tso)(struct net_device * , u32  ) ;
 4678   void (*self_test)(struct net_device * , struct ethtool_test * , u64 * ) ;
 4679   void (*get_strings)(struct net_device * , u32 stringset , u8 * ) ;
 4680   int (*set_phys_id)(struct net_device * , enum ethtool_phys_id_state  ) ;
 4681   void (*get_ethtool_stats)(struct net_device * , struct ethtool_stats * , u64 * ) ;
 4682   int (*begin)(struct net_device * ) ;
 4683   void (*complete)(struct net_device * ) ;
 4684   u32 (*get_ufo)(struct net_device * ) ;
 4685   int (*set_ufo)(struct net_device * , u32  ) ;
 4686   u32 (*get_flags)(struct net_device * ) ;
 4687   int (*set_flags)(struct net_device * , u32  ) ;
 4688   u32 (*get_priv_flags)(struct net_device * ) ;
 4689   int (*set_priv_flags)(struct net_device * , u32  ) ;
 4690   int (*get_sset_count)(struct net_device * , int  ) ;
 4691   int (*get_rxnfc)(struct net_device * , struct ethtool_rxnfc * , void * ) ;
 4692   int (*set_rxnfc)(struct net_device * , struct ethtool_rxnfc * ) ;
 4693   int (*flash_device)(struct net_device * , struct ethtool_flash * ) ;
 4694   int (*reset)(struct net_device * , u32 * ) ;
 4695   int (*set_rx_ntuple)(struct net_device * , struct ethtool_rx_ntuple * ) ;
 4696   int (*get_rx_ntuple)(struct net_device * , u32 stringset , void * ) ;
 4697   int (*get_rxfh_indir)(struct net_device * , struct ethtool_rxfh_indir * ) ;
 4698   int (*set_rxfh_indir)(struct net_device * , struct ethtool_rxfh_indir  const  * ) ;
 4699   void (*get_channels)(struct net_device * , struct ethtool_channels * ) ;
 4700   int (*set_channels)(struct net_device * , struct ethtool_channels * ) ;
 4701   int (*get_dump_flag)(struct net_device * , struct ethtool_dump * ) ;
 4702   int (*get_dump_data)(struct net_device * , struct ethtool_dump * , void * ) ;
 4703   int (*set_dump)(struct net_device * , struct ethtool_dump * ) ;
 4704};
 4705#line 4 "include/net/netns/core.h"
 4706struct ctl_table_header;
 4707#line 5
 4708struct prot_inuse;
 4709#line 5
 4710struct prot_inuse;
 4711#line 5
 4712struct prot_inuse;
 4713#line 5
 4714struct prot_inuse;
 4715#line 7 "include/net/netns/core.h"
 4716struct netns_core {
 4717   struct ctl_table_header *sysctl_hdr ;
 4718   int sysctl_somaxconn ;
 4719   struct prot_inuse *inuse ;
 4720};
 4721#line 64 "include/linux/u64_stats_sync.h"
 4722struct u64_stats_sync {
 4723
 4724};
 4725#line 56 "include/net/snmp.h"
 4726struct ipstats_mib {
 4727   u64 mibs[31] ;
 4728   struct u64_stats_sync syncp ;
 4729};
 4730#line 64 "include/net/snmp.h"
 4731struct icmp_mib {
 4732   unsigned long mibs[27] ;
 4733};
 4734#line 69 "include/net/snmp.h"
 4735struct icmpmsg_mib {
 4736   unsigned long mibs[512] ;
 4737};
 4738#line 76 "include/net/snmp.h"
 4739struct icmpv6_mib {
 4740   unsigned long mibs[5] ;
 4741};
 4742#line 86 "include/net/snmp.h"
 4743struct icmpv6msg_mib {
 4744   unsigned long mibs[512] ;
 4745};
 4746#line 97 "include/net/snmp.h"
 4747struct tcp_mib {
 4748   unsigned long mibs[15] ;
 4749};
 4750#line 103 "include/net/snmp.h"
 4751struct udp_mib {
 4752   unsigned long mibs[7] ;
 4753};
 4754#line 109 "include/net/snmp.h"
 4755struct linux_mib {
 4756   unsigned long mibs[80] ;
 4757};
 4758#line 115 "include/net/snmp.h"
 4759struct linux_xfrm_mib {
 4760   unsigned long mibs[27] ;
 4761};
 4762#line 6 "include/net/netns/mib.h"
 4763struct proc_dir_entry;
 4764#line 6
 4765struct proc_dir_entry;
 4766#line 6
 4767struct proc_dir_entry;
 4768#line 6 "include/net/netns/mib.h"
 4769struct netns_mib {
 4770   struct tcp_mib *tcp_statistics[2] ;
 4771   struct ipstats_mib *ip_statistics[2] ;
 4772   struct linux_mib *net_statistics[2] ;
 4773   struct udp_mib *udp_statistics[2] ;
 4774   struct udp_mib *udplite_statistics[2] ;
 4775   struct icmp_mib *icmp_statistics[2] ;
 4776   struct icmpmsg_mib *icmpmsg_statistics[2] ;
 4777   struct proc_dir_entry *proc_net_devsnmp6 ;
 4778   struct udp_mib *udp_stats_in6[2] ;
 4779   struct udp_mib *udplite_stats_in6[2] ;
 4780   struct ipstats_mib *ipv6_statistics[2] ;
 4781   struct icmpv6_mib *icmpv6_statistics[2] ;
 4782   struct icmpv6msg_mib *icmpv6msg_statistics[2] ;
 4783   struct linux_xfrm_mib *xfrm_statistics[2] ;
 4784};
 4785#line 7 "include/net/netns/unix.h"
 4786struct ctl_table_header;
 4787#line 8 "include/net/netns/unix.h"
 4788struct netns_unix {
 4789   int sysctl_max_dgram_qlen ;
 4790   struct ctl_table_header *ctl ;
 4791};
 4792#line 10 "include/net/netns/packet.h"
 4793struct netns_packet {
 4794   spinlock_t sklist_lock ;
 4795   struct hlist_head sklist ;
 4796};
 4797#line 4 "include/net/inet_frag.h"
 4798struct netns_frags {
 4799   int nqueues ;
 4800   atomic_t mem ;
 4801   struct list_head lru_list ;
 4802   int timeout ;
 4803   int high_thresh ;
 4804   int low_thresh ;
 4805};
 4806#line 10 "include/net/netns/ipv4.h"
 4807struct ctl_table_header;
 4808#line 11
 4809struct ipv4_devconf;
 4810#line 11
 4811struct ipv4_devconf;
 4812#line 11
 4813struct ipv4_devconf;
 4814#line 11
 4815struct ipv4_devconf;
 4816#line 12
 4817struct fib_rules_ops;
 4818#line 12
 4819struct fib_rules_ops;
 4820#line 12
 4821struct fib_rules_ops;
 4822#line 12
 4823struct fib_rules_ops;
 4824#line 13
 4825struct hlist_head;
 4826#line 14
 4827struct sock;
 4828#line 16
 4829struct xt_table;
 4830#line 16
 4831struct xt_table;
 4832#line 16
 4833struct xt_table;
 4834#line 16 "include/net/netns/ipv4.h"
 4835struct netns_ipv4 {
 4836   struct ctl_table_header *forw_hdr ;
 4837   struct ctl_table_header *frags_hdr ;
 4838   struct ctl_table_header *ipv4_hdr ;
 4839   struct ctl_table_header *route_hdr ;
 4840   struct ipv4_devconf *devconf_all ;
 4841   struct ipv4_devconf *devconf_dflt ;
 4842   struct fib_rules_ops *rules_ops ;
 4843   struct hlist_head *fib_table_hash ;
 4844   struct sock *fibnl ;
 4845   struct sock **icmp_sk ;
 4846   struct sock *tcp_sock ;
 4847   struct netns_frags frags ;
 4848   struct xt_table *iptable_filter ;
 4849   struct xt_table *iptable_mangle ;
 4850   struct xt_table *iptable_raw ;
 4851   struct xt_table *arptable_filter ;
 4852   struct xt_table *iptable_security ;
 4853   struct xt_table *nat_table ;
 4854   struct hlist_head *nat_bysource ;
 4855   unsigned int nat_htable_size ;
 4856   int sysctl_icmp_echo_ignore_all ;
 4857   int sysctl_icmp_echo_ignore_broadcasts ;
 4858   int sysctl_icmp_ignore_bogus_error_responses ;
 4859   int sysctl_icmp_ratelimit ;
 4860   int sysctl_icmp_ratemask ;
 4861   int sysctl_icmp_errors_use_inbound_ifaddr ;
 4862   int sysctl_rt_cache_rebuild_count ;
 4863   int current_rt_cache_rebuild_count ;
 4864   unsigned int sysctl_ping_group_range[2] ;
 4865   atomic_t rt_genid ;
 4866   atomic_t dev_addr_genid ;
 4867   struct list_head mr_tables ;
 4868   struct fib_rules_ops *mr_rules_ops ;
 4869};
 4870#line 7 "include/net/dst_ops.h"
 4871struct dst_entry;
 4872#line 9
 4873struct net_device;
 4874#line 10
 4875struct sk_buff;
 4876#line 12 "include/net/dst_ops.h"
 4877struct dst_ops {
 4878   unsigned short family ;
 4879   __be16 protocol ;
 4880   unsigned int gc_thresh ;
 4881   int (*gc)(struct dst_ops *ops ) ;
 4882   struct dst_entry *(*check)(struct dst_entry * , __u32 cookie ) ;
 4883   unsigned int (*default_advmss)(struct dst_entry  const  * ) ;
 4884   unsigned int (*default_mtu)(struct dst_entry  const  * ) ;
 4885   u32 *(*cow_metrics)(struct dst_entry * , unsigned long  ) ;
 4886   void (*destroy)(struct dst_entry * ) ;
 4887   void (*ifdown)(struct dst_entry * , struct net_device *dev , int how ) ;
 4888   struct dst_entry *(*negative_advice)(struct dst_entry * ) ;
 4889   void (*link_failure)(struct sk_buff * ) ;
 4890   void (*update_pmtu)(struct dst_entry *dst , u32 mtu ) ;
 4891   int (*local_out)(struct sk_buff *skb ) ;
 4892   struct kmem_cache *kmem_cachep ;
 4893   struct percpu_counter pcpuc_entries  __attribute__((__aligned__((1) <<  (6) ))) ;
 4894};
 4895#line 11 "include/net/netns/ipv6.h"
 4896struct ctl_table_header;
 4897#line 13 "include/net/netns/ipv6.h"
 4898struct netns_sysctl_ipv6 {
 4899   struct ctl_table_header *table ;
 4900   struct ctl_table_header *frags_hdr ;
 4901   int bindv6only ;
 4902   int flush_delay ;
 4903   int ip6_rt_max_size ;
 4904   int ip6_rt_gc_min_interval ;
 4905   int ip6_rt_gc_timeout ;
 4906   int ip6_rt_gc_interval ;
 4907   int ip6_rt_gc_elasticity ;
 4908   int ip6_rt_mtu_expires ;
 4909   int ip6_rt_min_advmss ;
 4910   int icmpv6_time ;
 4911};
 4912#line 30
 4913struct ipv6_devconf;
 4914#line 30
 4915struct ipv6_devconf;
 4916#line 30
 4917struct ipv6_devconf;
 4918#line 30
 4919struct rt6_info;
 4920#line 30
 4921struct rt6_info;
 4922#line 30
 4923struct rt6_info;
 4924#line 30
 4925struct rt6_statistics;
 4926#line 30
 4927struct rt6_statistics;
 4928#line 30
 4929struct rt6_statistics;
 4930#line 30
 4931struct fib6_table;
 4932#line 30
 4933struct fib6_table;
 4934#line 30
 4935struct fib6_table;
 4936#line 30 "include/net/netns/ipv6.h"
 4937struct netns_ipv6 {
 4938   struct netns_sysctl_ipv6 sysctl ;
 4939   struct ipv6_devconf *devconf_all ;
 4940   struct ipv6_devconf *devconf_dflt ;
 4941   struct netns_frags frags ;
 4942   struct xt_table *ip6table_filter ;
 4943   struct xt_table *ip6table_mangle ;
 4944   struct xt_table *ip6table_raw ;
 4945   struct xt_table *ip6table_security ;
 4946   struct rt6_info *ip6_null_entry ;
 4947   struct rt6_statistics *rt6_stats ;
 4948   struct timer_list ip6_fib_timer ;
 4949   struct hlist_head *fib_table_hash ;
 4950   struct fib6_table *fib6_main_tbl ;
 4951   struct dst_ops ip6_dst_ops ;
 4952   unsigned int ip6_rt_gc_expire ;
 4953   unsigned long ip6_rt_last_gc ;
 4954   struct rt6_info *ip6_prohibit_entry ;
 4955   struct rt6_info *ip6_blk_hole_entry ;
 4956   struct fib6_table *fib6_local_tbl ;
 4957   struct fib_rules_ops *fib6_rules_ops ;
 4958   struct sock **icmp_sk ;
 4959   struct sock *ndisc_sk ;
 4960   struct sock *tcp_sk ;
 4961   struct sock *igmp_sk ;
 4962   struct list_head mr6_tables ;
 4963   struct fib_rules_ops *mr6_rules_ops ;
 4964};
 4965#line 4 "include/net/netns/dccp.h"
 4966struct sock;
 4967#line 6 "include/net/netns/dccp.h"
 4968struct netns_dccp {
 4969   struct sock *v4_ctl_sk ;
 4970   struct sock *v6_ctl_sk ;
 4971};
 4972#line 102 "include/linux/netfilter.h"
 4973struct sk_buff;
 4974#line 168 "include/net/flow.h"
 4975struct net;
 4976#line 169
 4977struct sock;
 4978#line 10 "include/linux/proc_fs.h"
 4979struct net;
 4980#line 11
 4981struct completion;
 4982#line 12
 4983struct mm_struct;
 4984#line 46 "include/linux/proc_fs.h"
 4985typedef int read_proc_t(char *page , char **start , off_t off , int count , int *eof ,
 4986                        void *data );
 4987#line 48 "include/linux/proc_fs.h"
 4988typedef int write_proc_t(struct file *file , char const   *buffer , unsigned long count ,
 4989                         void *data );
 4990#line 51 "include/linux/proc_fs.h"
 4991struct proc_dir_entry {
 4992   unsigned int low_ino ;
 4993   unsigned int namelen ;
 4994   char const   *name ;
 4995   mode_t mode ;
 4996   nlink_t nlink ;
 4997   uid_t uid ;
 4998   gid_t gid ;
 4999   loff_t size ;
 5000   struct inode_operations  const  *proc_iops ;
 5001   struct file_operations  const  *proc_fops ;
 5002   struct proc_dir_entry *next ;
 5003   struct proc_dir_entry *parent ;
 5004   struct proc_dir_entry *subdir ;
 5005   void *data ;
 5006   read_proc_t *read_proc ;
 5007   write_proc_t *write_proc ;
 5008   atomic_t count ;
 5009   int pde_users ;
 5010   spinlock_t pde_unload_lock ;
 5011   struct completion *pde_unload_completion ;
 5012   struct list_head pde_openers ;
 5013};
 5014#line 117
 5015struct pid_namespace;
 5016#line 243
 5017struct nsproxy;
 5018#line 263
 5019struct ctl_table_header;
 5020#line 264
 5021struct ctl_table;
 5022#line 7 "include/net/netns/x_tables.h"
 5023struct ebt_table;
 5024#line 7
 5025struct ebt_table;
 5026#line 7
 5027struct ebt_table;
 5028#line 7
 5029struct ebt_table;
 5030#line 9 "include/net/netns/x_tables.h"
 5031struct netns_xt {
 5032   struct list_head tables[13] ;
 5033   struct ebt_table *broute_table ;
 5034   struct ebt_table *frame_filter ;
 5035   struct ebt_table *frame_nat ;
 5036};
 5037#line 17 "include/linux/list_nulls.h"
 5038struct hlist_nulls_node;
 5039#line 17
 5040struct hlist_nulls_node;
 5041#line 17
 5042struct hlist_nulls_node;
 5043#line 17 "include/linux/list_nulls.h"
 5044struct hlist_nulls_head {
 5045   struct hlist_nulls_node *first ;
 5046};
 5047#line 21 "include/linux/list_nulls.h"
 5048struct hlist_nulls_node {
 5049   struct hlist_nulls_node *next ;
 5050   struct hlist_nulls_node **pprev ;
 5051};
 5052#line 8 "include/net/netns/conntrack.h"
 5053struct ctl_table_header;
 5054#line 11
 5055struct ip_conntrack_stat;
 5056#line 11
 5057struct ip_conntrack_stat;
 5058#line 11
 5059struct ip_conntrack_stat;
 5060#line 11 "include/net/netns/conntrack.h"
 5061struct netns_ct {
 5062   atomic_t count ;
 5063   unsigned int expect_count ;
 5064   unsigned int htable_size ;
 5065   struct kmem_cache *nf_conntrack_cachep ;
 5066   struct hlist_nulls_head *hash ;
 5067   struct hlist_head *expect_hash ;
 5068   struct hlist_nulls_head unconfirmed ;
 5069   struct hlist_nulls_head dying ;
 5070   struct ip_conntrack_stat *stat ;
 5071   int sysctl_events ;
 5072   unsigned int sysctl_events_retry_timeout ;
 5073   int sysctl_acct ;
 5074   int sysctl_tstamp ;
 5075   int sysctl_checksum ;
 5076   unsigned int sysctl_log_invalid ;
 5077   struct ctl_table_header *sysctl_header ;
 5078   struct ctl_table_header *acct_sysctl_header ;
 5079   struct ctl_table_header *tstamp_sysctl_header ;
 5080   struct ctl_table_header *event_sysctl_header ;
 5081   char *slabname ;
 5082};
 5083#line 10 "include/net/netns/xfrm.h"
 5084struct ctl_table_header;
 5085#line 12 "include/net/netns/xfrm.h"
 5086struct xfrm_policy_hash {
 5087   struct hlist_head *table ;
 5088   unsigned int hmask ;
 5089};
 5090#line 17 "include/net/netns/xfrm.h"
 5091struct netns_xfrm {
 5092   struct list_head state_all ;
 5093   struct hlist_head *state_bydst ;
 5094   struct hlist_head *state_bysrc ;
 5095   struct hlist_head *state_byspi ;
 5096   unsigned int state_hmask ;
 5097   unsigned int state_num ;
 5098   struct work_struct state_hash_work ;
 5099   struct hlist_head state_gc_list ;
 5100   struct work_struct state_gc_work ;
 5101   wait_queue_head_t km_waitq ;
 5102   struct list_head policy_all ;
 5103   struct hlist_head *policy_byidx ;
 5104   unsigned int policy_idx_hmask ;
 5105   struct hlist_head policy_inexact[6] ;
 5106   struct xfrm_policy_hash policy_bydst[6] ;
 5107   unsigned int policy_count[6] ;
 5108   struct work_struct policy_hash_work ;
 5109   struct sock *nlsk ;
 5110   struct sock *nlsk_stash ;
 5111   u32 sysctl_aevent_etime ;
 5112   u32 sysctl_aevent_rseqth ;
 5113   int sysctl_larval_drop ;
 5114   u32 sysctl_acq_expires ;
 5115   struct ctl_table_header *sysctl_hdr ;
 5116   struct dst_ops xfrm4_dst_ops ;
 5117   struct dst_ops xfrm6_dst_ops ;
 5118};
 5119#line 25 "include/net/net_namespace.h"
 5120struct proc_dir_entry;
 5121#line 26
 5122struct net_device;
 5123#line 27
 5124struct sock;
 5125#line 28
 5126struct ctl_table_header;
 5127#line 29
 5128struct net_generic;
 5129#line 29
 5130struct net_generic;
 5131#line 29
 5132struct net_generic;
 5133#line 29
 5134struct net_generic;
 5135#line 30
 5136struct sock;
 5137#line 31
 5138struct netns_ipvs;
 5139#line 31
 5140struct netns_ipvs;
 5141#line 31
 5142struct netns_ipvs;
 5143#line 31
 5144struct netns_ipvs;
 5145#line 37 "include/net/net_namespace.h"
 5146struct net {
 5147   atomic_t passive ;
 5148   atomic_t count ;
 5149   spinlock_t rules_mod_lock ;
 5150   struct list_head list ;
 5151   struct list_head cleanup_list ;
 5152   struct list_head exit_list ;
 5153   struct proc_dir_entry *proc_net ;
 5154   struct proc_dir_entry *proc_net_stat ;
 5155   struct ctl_table_set sysctls ;
 5156   struct sock *rtnl ;
 5157   struct sock *genl_sock ;
 5158   struct list_head dev_base_head ;
 5159   struct hlist_head *dev_name_head ;
 5160   struct hlist_head *dev_index_head ;
 5161   struct list_head rules_ops ;
 5162   struct net_device *loopback_dev ;
 5163   struct netns_core core ;
 5164   struct netns_mib mib ;
 5165   struct netns_packet packet ;
 5166   struct netns_unix unx ;
 5167   struct netns_ipv4 ipv4 ;
 5168   struct netns_ipv6 ipv6 ;
 5169   struct netns_dccp dccp ;
 5170   struct netns_xt xt ;
 5171   struct netns_ct ct ;
 5172   struct sock *nfnl ;
 5173   struct sock *nfnl_stash ;
 5174   struct sk_buff_head wext_nlevents ;
 5175   struct net_generic *gen ;
 5176   struct netns_xfrm xfrm ;
 5177   struct netns_ipvs *ipvs ;
 5178};
 5179#line 10 "include/linux/seq_file.h"
 5180struct seq_operations;
 5181#line 11
 5182struct file;
 5183#line 12
 5184struct path;
 5185#line 13
 5186struct inode;
 5187#line 14
 5188struct dentry;
 5189#line 16 "include/linux/seq_file.h"
 5190struct seq_file {
 5191   char *buf ;
 5192   size_t size ;
 5193   size_t from ;
 5194   size_t count ;
 5195   loff_t index ;
 5196   loff_t read_pos ;
 5197   u64 version ;
 5198   struct mutex lock ;
 5199   struct seq_operations  const  *op ;
 5200   void *private ;
 5201};
 5202#line 29 "include/linux/seq_file.h"
 5203struct seq_operations {
 5204   void *(*start)(struct seq_file *m , loff_t *pos ) ;
 5205   void (*stop)(struct seq_file *m , void *v ) ;
 5206   void *(*next)(struct seq_file *m , void *v , loff_t *pos ) ;
 5207   int (*show)(struct seq_file *m , void *v ) ;
 5208};
 5209#line 6 "include/linux/seq_file_net.h"
 5210struct net;
 5211#line 282 "include/net/net_namespace.h"
 5212struct ctl_table;
 5213#line 283
 5214struct ctl_table_header;
 5215#line 57 "include/linux/dcbnl.h"
 5216struct ieee_ets {
 5217   __u8 willing ;
 5218   __u8 ets_cap ;
 5219   __u8 cbs ;
 5220   __u8 tc_tx_bw[8] ;
 5221   __u8 tc_rx_bw[8] ;
 5222   __u8 tc_tsa[8] ;
 5223   __u8 prio_tc[8] ;
 5224   __u8 tc_reco_bw[8] ;
 5225   __u8 tc_reco_tsa[8] ;
 5226   __u8 reco_prio_tc[8] ;
 5227};
 5228#line 81 "include/linux/dcbnl.h"
 5229struct ieee_pfc {
 5230   __u8 pfc_cap ;
 5231   __u8 pfc_en ;
 5232   __u8 mbc ;
 5233   __u16 delay ;
 5234   __u64 requests[8] ;
 5235   __u64 indications[8] ;
 5236};
 5237#line 104 "include/linux/dcbnl.h"
 5238struct cee_pg {
 5239   __u8 willing ;
 5240   __u8 error ;
 5241   __u8 pg_en ;
 5242   __u8 tcs_supported ;
 5243   __u8 pg_bw[8] ;
 5244   __u8 prio_pg[8] ;
 5245};
 5246#line 121 "include/linux/dcbnl.h"
 5247struct cee_pfc {
 5248   __u8 willing ;
 5249   __u8 error ;
 5250   __u8 pfc_en ;
 5251   __u8 tcs_supported ;
 5252};
 5253#line 151 "include/linux/dcbnl.h"
 5254struct dcb_app {
 5255   __u8 selector ;
 5256   __u8 priority ;
 5257   __u16 protocol ;
 5258};
 5259#line 166 "include/linux/dcbnl.h"
 5260struct dcb_peer_app_info {
 5261   __u8 willing ;
 5262   __u8 error ;
 5263};
 5264#line 38 "include/net/dcbnl.h"
 5265struct dcbnl_rtnl_ops {
 5266   int (*ieee_getets)(struct net_device * , struct ieee_ets * ) ;
 5267   int (*ieee_setets)(struct net_device * , struct ieee_ets * ) ;
 5268   int (*ieee_getpfc)(struct net_device * , struct ieee_pfc * ) ;
 5269   int (*ieee_setpfc)(struct net_device * , struct ieee_pfc * ) ;
 5270   int (*ieee_getapp)(struct net_device * , struct dcb_app * ) ;
 5271   int (*ieee_setapp)(struct net_device * , struct dcb_app * ) ;
 5272   int (*ieee_peer_getets)(struct net_device * , struct ieee_ets * ) ;
 5273   int (*ieee_peer_getpfc)(struct net_device * , struct ieee_pfc * ) ;
 5274   u8 (*getstate)(struct net_device * ) ;
 5275   u8 (*setstate)(struct net_device * , u8  ) ;
 5276   void (*getpermhwaddr)(struct net_device * , u8 * ) ;
 5277   void (*setpgtccfgtx)(struct net_device * , int  , u8  , u8  , u8  , u8  ) ;
 5278   void (*setpgbwgcfgtx)(struct net_device * , int  , u8  ) ;
 5279   void (*setpgtccfgrx)(struct net_device * , int  , u8  , u8  , u8  , u8  ) ;
 5280   void (*setpgbwgcfgrx)(struct net_device * , int  , u8  ) ;
 5281   void (*getpgtccfgtx)(struct net_device * , int  , u8 * , u8 * , u8 * , u8 * ) ;
 5282   void (*getpgbwgcfgtx)(struct net_device * , int  , u8 * ) ;
 5283   void (*getpgtccfgrx)(struct net_device * , int  , u8 * , u8 * , u8 * , u8 * ) ;
 5284   void (*getpgbwgcfgrx)(struct net_device * , int  , u8 * ) ;
 5285   void (*setpfccfg)(struct net_device * , int  , u8  ) ;
 5286   void (*getpfccfg)(struct net_device * , int  , u8 * ) ;
 5287   u8 (*setall)(struct net_device * ) ;
 5288   u8 (*getcap)(struct net_device * , int  , u8 * ) ;
 5289   u8 (*getnumtcs)(struct net_device * , int  , u8 * ) ;
 5290   u8 (*setnumtcs)(struct net_device * , int  , u8  ) ;
 5291   u8 (*getpfcstate)(struct net_device * ) ;
 5292   void (*setpfcstate)(struct net_device * , u8  ) ;
 5293   void (*getbcncfg)(struct net_device * , int  , u32 * ) ;
 5294   void (*setbcncfg)(struct net_device * , int  , u32  ) ;
 5295   void (*getbcnrp)(struct net_device * , int  , u8 * ) ;
 5296   void (*setbcnrp)(struct net_device * , int  , u8  ) ;
 5297   u8 (*setapp)(struct net_device * , u8  , u16  , u8  ) ;
 5298   u8 (*getapp)(struct net_device * , u8  , u16  ) ;
 5299   u8 (*getfeatcfg)(struct net_device * , int  , u8 * ) ;
 5300   u8 (*setfeatcfg)(struct net_device * , int  , u8  ) ;
 5301   u8 (*getdcbx)(struct net_device * ) ;
 5302   u8 (*setdcbx)(struct net_device * , u8  ) ;
 5303   int (*peer_getappinfo)(struct net_device * , struct dcb_peer_app_info * , u16 * ) ;
 5304   int (*peer_getapptable)(struct net_device * , struct dcb_app * ) ;
 5305   int (*cee_peer_getpg)(struct net_device * , struct cee_pg * ) ;
 5306   int (*cee_peer_getpfc)(struct net_device * , struct cee_pfc * ) ;
 5307};
 5308#line 55 "include/linux/netdevice.h"
 5309struct vlan_group;
 5310#line 55
 5311struct vlan_group;
 5312#line 55
 5313struct vlan_group;
 5314#line 55
 5315struct vlan_group;
 5316#line 56
 5317struct netpoll_info;
 5318#line 56
 5319struct netpoll_info;
 5320#line 56
 5321struct netpoll_info;
 5322#line 56
 5323struct netpoll_info;
 5324#line 57
 5325struct phy_device;
 5326#line 57
 5327struct phy_device;
 5328#line 57
 5329struct phy_device;
 5330#line 57
 5331struct phy_device;
 5332#line 59
 5333struct wireless_dev;
 5334#line 59
 5335struct wireless_dev;
 5336#line 59
 5337struct wireless_dev;
 5338#line 59
 5339struct wireless_dev;
 5340#line 111
 5341enum netdev_tx {
 5342    __NETDEV_TX_MIN = (-0x7FFFFFFF-1),
 5343    NETDEV_TX_OK = 0,
 5344    NETDEV_TX_BUSY = 16,
 5345    NETDEV_TX_LOCKED = 32
 5346} ;
 5347#line 117 "include/linux/netdevice.h"
 5348typedef enum netdev_tx netdev_tx_t;
 5349#line 176 "include/linux/netdevice.h"
 5350struct net_device_stats {
 5351   unsigned long rx_packets ;
 5352   unsigned long tx_packets ;
 5353   unsigned long rx_bytes ;
 5354   unsigned long tx_bytes ;
 5355   unsigned long rx_errors ;
 5356   unsigned long tx_errors ;
 5357   unsigned long rx_dropped ;
 5358   unsigned long tx_dropped ;
 5359   unsigned long multicast ;
 5360   unsigned long collisions ;
 5361   unsigned long rx_length_errors ;
 5362   unsigned long rx_over_errors ;
 5363   unsigned long rx_crc_errors ;
 5364   unsigned long rx_frame_errors ;
 5365   unsigned long rx_fifo_errors ;
 5366   unsigned long rx_missed_errors ;
 5367   unsigned long tx_aborted_errors ;
 5368   unsigned long tx_carrier_errors ;
 5369   unsigned long tx_fifo_errors ;
 5370   unsigned long tx_heartbeat_errors ;
 5371   unsigned long tx_window_errors ;
 5372   unsigned long rx_compressed ;
 5373   unsigned long tx_compressed ;
 5374};
 5375#line 221
 5376struct neighbour;
 5377#line 221
 5378struct neighbour;
 5379#line 221
 5380struct neighbour;
 5381#line 221
 5382struct neighbour;
 5383#line 222
 5384struct neigh_parms;
 5385#line 222
 5386struct neigh_parms;
 5387#line 222
 5388struct neigh_parms;
 5389#line 222
 5390struct neigh_parms;
 5391#line 223
 5392struct sk_buff;
 5393#line 240 "include/linux/netdevice.h"
 5394struct netdev_hw_addr_list {
 5395   struct list_head list ;
 5396   int count ;
 5397};
 5398#line 260 "include/linux/netdevice.h"
 5399struct hh_cache {
 5400   struct hh_cache *hh_next ;
 5401   atomic_t hh_refcnt ;
 5402   __be16 hh_type  __attribute__((__aligned__((1) <<  (6) ))) ;
 5403   u16 hh_len ;
 5404   int (*hh_output)(struct sk_buff *skb ) ;
 5405   seqlock_t hh_lock ;
 5406   unsigned long hh_data[128UL / sizeof(long )] ;
 5407};
 5408#line 311 "include/linux/netdevice.h"
 5409struct header_ops {
 5410   int (*create)(struct sk_buff *skb , struct net_device *dev , unsigned short type ,
 5411                 void const   *daddr , void const   *saddr , unsigned int len ) ;
 5412   int (*parse)(struct sk_buff  const  *skb , unsigned char *haddr ) ;
 5413   int (*rebuild)(struct sk_buff *skb ) ;
 5414   int (*cache)(struct neighbour  const  *neigh , struct hh_cache *hh ) ;
 5415   void (*cache_update)(struct hh_cache *hh , struct net_device  const  *dev , unsigned char const   *haddr ) ;
 5416};
 5417#line 434
 5418enum rx_handler_result {
 5419    RX_HANDLER_CONSUMED = 0,
 5420    RX_HANDLER_ANOTHER = 1,
 5421    RX_HANDLER_EXACT = 2,
 5422    RX_HANDLER_PASS = 3
 5423} ;
 5424#line 440 "include/linux/netdevice.h"
 5425typedef enum rx_handler_result rx_handler_result_t;
 5426#line 441 "include/linux/netdevice.h"
 5427typedef rx_handler_result_t rx_handler_func_t(struct sk_buff **pskb );
 5428#line 551
 5429struct Qdisc;
 5430#line 551
 5431struct Qdisc;
 5432#line 551
 5433struct Qdisc;
 5434#line 551 "include/linux/netdevice.h"
 5435struct netdev_queue {
 5436   struct net_device *dev ;
 5437   struct Qdisc *qdisc ;
 5438   unsigned long state ;
 5439   struct Qdisc *qdisc_sleeping ;
 5440   struct kobject kobj ;
 5441   int numa_node ;
 5442   spinlock_t _xmit_lock  __attribute__((__aligned__((1) <<  (6) ))) ;
 5443   int xmit_lock_owner ;
 5444   unsigned long trans_start ;
 5445} __attribute__((__aligned__((1) <<  (6) ))) ;
 5446#line 597 "include/linux/netdevice.h"
 5447struct rps_map {
 5448   unsigned int len ;
 5449   struct rcu_head rcu ;
 5450   u16 cpus[0] ;
 5451};
 5452#line 609 "include/linux/netdevice.h"
 5453struct rps_dev_flow {
 5454   u16 cpu ;
 5455   u16 filter ;
 5456   unsigned int last_qtail ;
 5457};
 5458#line 619 "include/linux/netdevice.h"
 5459struct rps_dev_flow_table {
 5460   unsigned int mask ;
 5461   struct rcu_head rcu ;
 5462   struct work_struct free_work ;
 5463   struct rps_dev_flow flows[0] ;
 5464};
 5465#line 670 "include/linux/netdevice.h"
 5466struct netdev_rx_queue {
 5467   struct rps_map *rps_map ;
 5468   struct rps_dev_flow_table *rps_flow_table ;
 5469   struct kobject kobj ;
 5470   struct net_device *dev ;
 5471} __attribute__((__aligned__((1) <<  (6) ))) ;
 5472#line 683 "include/linux/netdevice.h"
 5473struct xps_map {
 5474   unsigned int len ;
 5475   unsigned int alloc_len ;
 5476   struct rcu_head rcu ;
 5477   u16 queues[0] ;
 5478};
 5479#line 696 "include/linux/netdevice.h"
 5480struct xps_dev_maps {
 5481   struct rcu_head rcu ;
 5482   struct xps_map *cpu_map[0] ;
 5483};
 5484#line 707 "include/linux/netdevice.h"
 5485struct netdev_tc_txq {
 5486   u16 count ;
 5487   u16 offset ;
 5488};
 5489#line 892 "include/linux/netdevice.h"
 5490struct net_device_ops {
 5491   int (*ndo_init)(struct net_device *dev ) ;
 5492   void (*ndo_uninit)(struct net_device *dev ) ;
 5493   int (*ndo_open)(struct net_device *dev ) ;
 5494   int (*ndo_stop)(struct net_device *dev ) ;
 5495   netdev_tx_t (*ndo_start_xmit)(struct sk_buff *skb , struct net_device *dev ) ;
 5496   u16 (*ndo_select_queue)(struct net_device *dev , struct sk_buff *skb ) ;
 5497   void (*ndo_change_rx_flags)(struct net_device *dev , int flags ) ;
 5498   void (*ndo_set_rx_mode)(struct net_device *dev ) ;
 5499   void (*ndo_set_multicast_list)(struct net_device *dev ) ;
 5500   int (*ndo_set_mac_address)(struct net_device *dev , void *addr ) ;
 5501   int (*ndo_validate_addr)(struct net_device *dev ) ;
 5502   int (*ndo_do_ioctl)(struct net_device *dev , struct ifreq *ifr , int cmd ) ;
 5503   int (*ndo_set_config)(struct net_device *dev , struct ifmap *map ) ;
 5504   int (*ndo_change_mtu)(struct net_device *dev , int new_mtu ) ;
 5505   int (*ndo_neigh_setup)(struct net_device *dev , struct neigh_parms * ) ;
 5506   void (*ndo_tx_timeout)(struct net_device *dev ) ;
 5507   struct rtnl_link_stats64 *(*ndo_get_stats64)(struct net_device *dev , struct rtnl_link_stats64 *storage ) ;
 5508   struct net_device_stats *(*ndo_get_stats)(struct net_device *dev ) ;
 5509   void (*ndo_vlan_rx_register)(struct net_device *dev , struct vlan_group *grp ) ;
 5510   void (*ndo_vlan_rx_add_vid)(struct net_device *dev , unsigned short vid ) ;
 5511   void (*ndo_vlan_rx_kill_vid)(struct net_device *dev , unsigned short vid ) ;
 5512   void (*ndo_poll_controller)(struct net_device *dev ) ;
 5513   int (*ndo_netpoll_setup)(struct net_device *dev , struct netpoll_info *info ) ;
 5514   void (*ndo_netpoll_cleanup)(struct net_device *dev ) ;
 5515   int (*ndo_set_vf_mac)(struct net_device *dev , int queue , u8 *mac ) ;
 5516   int (*ndo_set_vf_vlan)(struct net_device *dev , int queue , u16 vlan , u8 qos ) ;
 5517   int (*ndo_set_vf_tx_rate)(struct net_device *dev , int vf , int rate ) ;
 5518   int (*ndo_get_vf_config)(struct net_device *dev , int vf , struct ifla_vf_info *ivf ) ;
 5519   int (*ndo_set_vf_port)(struct net_device *dev , int vf , struct nlattr **port ) ;
 5520   int (*ndo_get_vf_port)(struct net_device *dev , int vf , struct sk_buff *skb ) ;
 5521   int (*ndo_setup_tc)(struct net_device *dev , u8 tc ) ;
 5522   int (*ndo_fcoe_enable)(struct net_device *dev ) ;
 5523   int (*ndo_fcoe_disable)(struct net_device *dev ) ;
 5524   int (*ndo_fcoe_ddp_setup)(struct net_device *dev , u16 xid , struct scatterlist *sgl ,
 5525                             unsigned int sgc ) ;
 5526   int (*ndo_fcoe_ddp_done)(struct net_device *dev , u16 xid ) ;
 5527   int (*ndo_fcoe_ddp_target)(struct net_device *dev , u16 xid , struct scatterlist *sgl ,
 5528                              unsigned int sgc ) ;
 5529   int (*ndo_fcoe_get_wwn)(struct net_device *dev , u64 *wwn , int type ) ;
 5530   int (*ndo_rx_flow_steer)(struct net_device *dev , struct sk_buff  const  *skb ,
 5531                            u16 rxq_index , u32 flow_id ) ;
 5532   int (*ndo_add_slave)(struct net_device *dev , struct net_device *slave_dev ) ;
 5533   int (*ndo_del_slave)(struct net_device *dev , struct net_device *slave_dev ) ;
 5534   u32 (*ndo_fix_features)(struct net_device *dev , u32 features ) ;
 5535   int (*ndo_set_features)(struct net_device *dev , u32 features ) ;
 5536};
 5537#line 993
 5538struct iw_handler_def;
 5539#line 993
 5540struct iw_handler_def;
 5541#line 993
 5542struct iw_handler_def;
 5543#line 993
 5544struct iw_public_data;
 5545#line 993
 5546struct iw_public_data;
 5547#line 993
 5548struct iw_public_data;
 5549#line 993
 5550struct in_device;
 5551#line 993
 5552struct in_device;
 5553#line 993
 5554struct in_device;
 5555#line 993
 5556struct dn_dev;
 5557#line 993
 5558struct dn_dev;
 5559#line 993
 5560struct dn_dev;
 5561#line 993
 5562struct inet6_dev;
 5563#line 993
 5564struct inet6_dev;
 5565#line 993
 5566struct inet6_dev;
 5567#line 993
 5568struct cpu_rmap;
 5569#line 993
 5570struct cpu_rmap;
 5571#line 993
 5572struct cpu_rmap;
 5573#line 993
 5574enum __anonenum_reg_state_303 {
 5575    NETREG_UNINITIALIZED = 0,
 5576    NETREG_REGISTERED = 1,
 5577    NETREG_UNREGISTERING = 2,
 5578    NETREG_UNREGISTERED = 3,
 5579    NETREG_RELEASED = 4,
 5580    NETREG_DUMMY = 5
 5581} ;
 5582#line 993
 5583enum __anonenum_rtnl_link_state_304 {
 5584    RTNL_LINK_INITIALIZED = 0,
 5585    RTNL_LINK_INITIALIZING = 1
 5586} ;
 5587#line 993
 5588struct pcpu_lstats;
 5589#line 993
 5590struct pcpu_lstats;
 5591#line 993
 5592struct pcpu_lstats;
 5593#line 993
 5594struct pcpu_tstats;
 5595#line 993
 5596struct pcpu_tstats;
 5597#line 993
 5598struct pcpu_tstats;
 5599#line 993
 5600struct pcpu_dstats;
 5601#line 993
 5602struct pcpu_dstats;
 5603#line 993
 5604struct pcpu_dstats;
 5605#line 993 "include/linux/netdevice.h"
 5606union __anonunion____missing_field_name_305 {
 5607   void *ml_priv ;
 5608   struct pcpu_lstats *lstats ;
 5609   struct pcpu_tstats *tstats ;
 5610   struct pcpu_dstats *dstats ;
 5611};
 5612#line 993
 5613struct garp_port;
 5614#line 993
 5615struct garp_port;
 5616#line 993
 5617struct garp_port;
 5618#line 993
 5619struct rtnl_link_ops;
 5620#line 993
 5621struct rtnl_link_ops;
 5622#line 993
 5623struct rtnl_link_ops;
 5624#line 993 "include/linux/netdevice.h"
 5625struct net_device {
 5626   char name[16] ;
 5627   struct pm_qos_request_list pm_qos_req ;
 5628   struct hlist_node name_hlist ;
 5629   char *ifalias ;
 5630   unsigned long mem_end ;
 5631   unsigned long mem_start ;
 5632   unsigned long base_addr ;
 5633   unsigned int irq ;
 5634   unsigned long state ;
 5635   struct list_head dev_list ;
 5636   struct list_head napi_list ;
 5637   struct list_head unreg_list ;
 5638   u32 features ;
 5639   u32 hw_features ;
 5640   u32 wanted_features ;
 5641   u32 vlan_features ;
 5642   int ifindex ;
 5643   int iflink ;
 5644   struct net_device_stats stats ;
 5645   atomic_long_t rx_dropped ;
 5646   struct iw_handler_def  const  *wireless_handlers ;
 5647   struct iw_public_data *wireless_data ;
 5648   struct net_device_ops  const  *netdev_ops ;
 5649   struct ethtool_ops  const  *ethtool_ops ;
 5650   struct header_ops  const  *header_ops ;
 5651   unsigned int flags ;
 5652   unsigned int priv_flags ;
 5653   unsigned short gflags ;
 5654   unsigned short padded ;
 5655   unsigned char operstate ;
 5656   unsigned char link_mode ;
 5657   unsigned char if_port ;
 5658   unsigned char dma ;
 5659   unsigned int mtu ;
 5660   unsigned short type ;
 5661   unsigned short hard_header_len ;
 5662   unsigned short needed_headroom ;
 5663   unsigned short needed_tailroom ;
 5664   unsigned char perm_addr[32] ;
 5665   unsigned char addr_assign_type ;
 5666   unsigned char addr_len ;
 5667   unsigned short dev_id ;
 5668   spinlock_t addr_list_lock ;
 5669   struct netdev_hw_addr_list uc ;
 5670   struct netdev_hw_addr_list mc ;
 5671   int uc_promisc ;
 5672   unsigned int promiscuity ;
 5673   unsigned int allmulti ;
 5674   struct vlan_group *vlgrp ;
 5675   void *dsa_ptr ;
 5676   void *atalk_ptr ;
 5677   struct in_device *ip_ptr ;
 5678   struct dn_dev *dn_ptr ;
 5679   struct inet6_dev *ip6_ptr ;
 5680   void *ec_ptr ;
 5681   void *ax25_ptr ;
 5682   struct wireless_dev *ieee80211_ptr ;
 5683   unsigned long last_rx ;
 5684   struct net_device *master ;
 5685   unsigned char *dev_addr ;
 5686   struct netdev_hw_addr_list dev_addrs ;
 5687   unsigned char broadcast[32] ;
 5688   struct kset *queues_kset ;
 5689   struct netdev_rx_queue *_rx ;
 5690   unsigned int num_rx_queues ;
 5691   unsigned int real_num_rx_queues ;
 5692   struct cpu_rmap *rx_cpu_rmap ;
 5693   rx_handler_func_t *rx_handler ;
 5694   void *rx_handler_data ;
 5695   struct netdev_queue *ingress_queue ;
 5696   struct netdev_queue *_tx  __attribute__((__aligned__((1) <<  (6) ))) ;
 5697   unsigned int num_tx_queues ;
 5698   unsigned int real_num_tx_queues ;
 5699   struct Qdisc *qdisc ;
 5700   unsigned long tx_queue_len ;
 5701   spinlock_t tx_global_lock ;
 5702   struct xps_dev_maps *xps_maps ;
 5703   unsigned long trans_start ;
 5704   int watchdog_timeo ;
 5705   struct timer_list watchdog_timer ;
 5706   int *pcpu_refcnt ;
 5707   struct list_head todo_list ;
 5708   struct hlist_node index_hlist ;
 5709   struct list_head link_watch_list ;
 5710   enum __anonenum_reg_state_303 reg_state : 8 ;
 5711   bool dismantle ;
 5712   enum __anonenum_rtnl_link_state_304 rtnl_link_state : 16 ;
 5713   void (*destructor)(struct net_device *dev ) ;
 5714   struct netpoll_info *npinfo ;
 5715   struct net *nd_net ;
 5716   union __anonunion____missing_field_name_305 __annonCompField44 ;
 5717   struct garp_port *garp_port ;
 5718   struct device dev ;
 5719   struct attribute_group  const  *sysfs_groups[4] ;
 5720   struct rtnl_link_ops  const  *rtnl_link_ops ;
 5721   unsigned int gso_max_size ;
 5722   struct dcbnl_rtnl_ops  const  *dcbnl_ops ;
 5723   u8 num_tc ;
 5724   struct netdev_tc_txq tc_to_txq[16] ;
 5725   u8 prio_tc_map[16] ;
 5726   unsigned int fcoe_ddp_xid ;
 5727   struct ethtool_rx_ntuple_list ethtool_ntuple_list ;
 5728   struct phy_device *phydev ;
 5729   int group ;
 5730};
 5731#line 10 "include/linux/irqreturn.h"
 5732enum irqreturn {
 5733    IRQ_NONE = 0,
 5734    IRQ_HANDLED = 1,
 5735    IRQ_WAKE_THREAD = 2
 5736} ;
 5737#line 16 "include/linux/irqreturn.h"
 5738typedef enum irqreturn irqreturn_t;
 5739#line 31 "include/linux/irq.h"
 5740struct seq_file;
 5741#line 12 "include/linux/irqdesc.h"
 5742struct proc_dir_entry;
 5743#line 16 "include/linux/profile.h"
 5744struct proc_dir_entry;
 5745#line 17
 5746struct pt_regs;
 5747#line 65
 5748struct task_struct;
 5749#line 66
 5750struct mm_struct;
 5751#line 88
 5752struct pt_regs;
 5753#line 363 "include/linux/irq.h"
 5754struct irqaction;
 5755#line 132 "include/linux/hardirq.h"
 5756struct task_struct;
 5757#line 9 "include/trace/events/irq.h"
 5758struct irqaction;
 5759#line 106 "include/linux/interrupt.h"
 5760struct irqaction {
 5761   irqreturn_t (*handler)(int  , void * ) ;
 5762   unsigned long flags ;
 5763   void *dev_id ;
 5764   struct irqaction *next ;
 5765   int irq ;
 5766   irqreturn_t (*thread_fn)(int  , void * ) ;
 5767   struct task_struct *thread ;
 5768   unsigned long thread_flags ;
 5769   unsigned long thread_mask ;
 5770   char const   *name ;
 5771   struct proc_dir_entry *dir ;
 5772} __attribute__((__aligned__((1) <<  (12) ))) ;
 5773#line 172
 5774struct device;
 5775#line 682
 5776struct seq_file;
 5777#line 12 "include/linux/mod_devicetable.h"
 5778typedef unsigned long kernel_ulong_t;
 5779#line 98 "include/linux/mod_devicetable.h"
 5780struct usb_device_id {
 5781   __u16 match_flags ;
 5782   __u16 idVendor ;
 5783   __u16 idProduct ;
 5784   __u16 bcdDevice_lo ;
 5785   __u16 bcdDevice_hi ;
 5786   __u8 bDeviceClass ;
 5787   __u8 bDeviceSubClass ;
 5788   __u8 bDeviceProtocol ;
 5789   __u8 bInterfaceClass ;
 5790   __u8 bInterfaceSubClass ;
 5791   __u8 bInterfaceProtocol ;
 5792   kernel_ulong_t driver_info ;
 5793};
 5794#line 219 "include/linux/mod_devicetable.h"
 5795struct of_device_id {
 5796   char name[32] ;
 5797   char type[32] ;
 5798   char compatible[128] ;
 5799   void *data ;
 5800};
 5801#line 244 "include/linux/usb/ch9.h"
 5802struct usb_device_descriptor {
 5803   __u8 bLength ;
 5804   __u8 bDescriptorType ;
 5805   __le16 bcdUSB ;
 5806   __u8 bDeviceClass ;
 5807   __u8 bDeviceSubClass ;
 5808   __u8 bDeviceProtocol ;
 5809   __u8 bMaxPacketSize0 ;
 5810   __le16 idVendor ;
 5811   __le16 idProduct ;
 5812   __le16 bcdDevice ;
 5813   __u8 iManufacturer ;
 5814   __u8 iProduct ;
 5815   __u8 iSerialNumber ;
 5816   __u8 bNumConfigurations ;
 5817} __attribute__((__packed__)) ;
 5818#line 300 "include/linux/usb/ch9.h"
 5819struct usb_config_descriptor {
 5820   __u8 bLength ;
 5821   __u8 bDescriptorType ;
 5822   __le16 wTotalLength ;
 5823   __u8 bNumInterfaces ;
 5824   __u8 bConfigurationValue ;
 5825   __u8 iConfiguration ;
 5826   __u8 bmAttributes ;
 5827   __u8 bMaxPower ;
 5828} __attribute__((__packed__)) ;
 5829#line 337 "include/linux/usb/ch9.h"
 5830struct usb_interface_descriptor {
 5831   __u8 bLength ;
 5832   __u8 bDescriptorType ;
 5833   __u8 bInterfaceNumber ;
 5834   __u8 bAlternateSetting ;
 5835   __u8 bNumEndpoints ;
 5836   __u8 bInterfaceClass ;
 5837   __u8 bInterfaceSubClass ;
 5838   __u8 bInterfaceProtocol ;
 5839   __u8 iInterface ;
 5840} __attribute__((__packed__)) ;
 5841#line 355 "include/linux/usb/ch9.h"
 5842struct usb_endpoint_descriptor {
 5843   __u8 bLength ;
 5844   __u8 bDescriptorType ;
 5845   __u8 bEndpointAddress ;
 5846   __u8 bmAttributes ;
 5847   __le16 wMaxPacketSize ;
 5848   __u8 bInterval ;
 5849   __u8 bRefresh ;
 5850   __u8 bSynchAddress ;
 5851} __attribute__((__packed__)) ;
 5852#line 576 "include/linux/usb/ch9.h"
 5853struct usb_ss_ep_comp_descriptor {
 5854   __u8 bLength ;
 5855   __u8 bDescriptorType ;
 5856   __u8 bMaxBurst ;
 5857   __u8 bmAttributes ;
 5858   __le16 wBytesPerInterval ;
 5859} __attribute__((__packed__)) ;
 5860#line 637 "include/linux/usb/ch9.h"
 5861struct usb_interface_assoc_descriptor {
 5862   __u8 bLength ;
 5863   __u8 bDescriptorType ;
 5864   __u8 bFirstInterface ;
 5865   __u8 bInterfaceCount ;
 5866   __u8 bFunctionClass ;
 5867   __u8 bFunctionSubClass ;
 5868   __u8 bFunctionProtocol ;
 5869   __u8 iFunction ;
 5870} __attribute__((__packed__)) ;
 5871#line 846
 5872enum usb_device_speed {
 5873    USB_SPEED_UNKNOWN = 0,
 5874    USB_SPEED_LOW = 1,
 5875    USB_SPEED_FULL = 2,
 5876    USB_SPEED_HIGH = 3,
 5877    USB_SPEED_WIRELESS = 4,
 5878    USB_SPEED_SUPER = 5
 5879} ;
 5880#line 854
 5881enum usb_device_state {
 5882    USB_STATE_NOTATTACHED = 0,
 5883    USB_STATE_ATTACHED = 1,
 5884    USB_STATE_POWERED = 2,
 5885    USB_STATE_RECONNECTING = 3,
 5886    USB_STATE_UNAUTHENTICATED = 4,
 5887    USB_STATE_DEFAULT = 5,
 5888    USB_STATE_ADDRESS = 6,
 5889    USB_STATE_CONFIGURED = 7,
 5890    USB_STATE_SUSPENDED = 8
 5891} ;
 5892#line 25 "include/linux/usb.h"
 5893struct usb_device;
 5894#line 25
 5895struct usb_device;
 5896#line 25
 5897struct usb_device;
 5898#line 25
 5899struct usb_device;
 5900#line 26
 5901struct usb_driver;
 5902#line 26
 5903struct usb_driver;
 5904#line 26
 5905struct usb_driver;
 5906#line 26
 5907struct usb_driver;
 5908#line 27
 5909struct wusb_dev;
 5910#line 27
 5911struct wusb_dev;
 5912#line 27
 5913struct wusb_dev;
 5914#line 27
 5915struct wusb_dev;
 5916#line 47
 5917struct ep_device;
 5918#line 47
 5919struct ep_device;
 5920#line 47
 5921struct ep_device;
 5922#line 47
 5923struct ep_device;
 5924#line 64 "include/linux/usb.h"
 5925struct usb_host_endpoint {
 5926   struct usb_endpoint_descriptor desc ;
 5927   struct usb_ss_ep_comp_descriptor ss_ep_comp ;
 5928   struct list_head urb_list ;
 5929   void *hcpriv ;
 5930   struct ep_device *ep_dev ;
 5931   unsigned char *extra ;
 5932   int extralen ;
 5933   int enabled ;
 5934};
 5935#line 77 "include/linux/usb.h"
 5936struct usb_host_interface {
 5937   struct usb_interface_descriptor desc ;
 5938   struct usb_host_endpoint *endpoint ;
 5939   char *string ;
 5940   unsigned char *extra ;
 5941   int extralen ;
 5942};
 5943#line 90
 5944enum usb_interface_condition {
 5945    USB_INTERFACE_UNBOUND = 0,
 5946    USB_INTERFACE_BINDING = 1,
 5947    USB_INTERFACE_BOUND = 2,
 5948    USB_INTERFACE_UNBINDING = 3
 5949} ;
 5950#line 159 "include/linux/usb.h"
 5951struct usb_interface {
 5952   struct usb_host_interface *altsetting ;
 5953   struct usb_host_interface *cur_altsetting ;
 5954   unsigned int num_altsetting ;
 5955   struct usb_interface_assoc_descriptor *intf_assoc ;
 5956   int minor ;
 5957   enum usb_interface_condition condition ;
 5958   unsigned int sysfs_files_created : 1 ;
 5959   unsigned int ep_devs_created : 1 ;
 5960   unsigned int unregistering : 1 ;
 5961   unsigned int needs_remote_wakeup : 1 ;
 5962   unsigned int needs_altsetting0 : 1 ;
 5963   unsigned int needs_binding : 1 ;
 5964   unsigned int reset_running : 1 ;
 5965   unsigned int resetting_device : 1 ;
 5966   struct device dev ;
 5967   struct device *usb_dev ;
 5968   atomic_t pm_usage_cnt ;
 5969   struct work_struct reset_ws ;
 5970};
 5971#line 222 "include/linux/usb.h"
 5972struct usb_interface_cache {
 5973   unsigned int num_altsetting ;
 5974   struct kref ref ;
 5975   struct usb_host_interface altsetting[0] ;
 5976};
 5977#line 274 "include/linux/usb.h"
 5978struct usb_host_config {
 5979   struct usb_config_descriptor desc ;
 5980   char *string ;
 5981   struct usb_interface_assoc_descriptor *intf_assoc[16] ;
 5982   struct usb_interface *interface[32] ;
 5983   struct usb_interface_cache *intf_cache[32] ;
 5984   unsigned char *extra ;
 5985   int extralen ;
 5986};
 5987#line 305 "include/linux/usb.h"
 5988struct usb_devmap {
 5989   unsigned long devicemap[128UL / (8UL * sizeof(unsigned long ))] ;
 5990};
 5991#line 312
 5992struct mon_bus;
 5993#line 312
 5994struct mon_bus;
 5995#line 312
 5996struct mon_bus;
 5997#line 312 "include/linux/usb.h"
 5998struct usb_bus {
 5999   struct device *controller ;
 6000   int busnum ;
 6001   char const   *bus_name ;
 6002   u8 uses_dma ;
 6003   u8 uses_pio_for_control ;
 6004   u8 otg_port ;
 6005   unsigned int is_b_host : 1 ;
 6006   unsigned int b_hnp_enable : 1 ;
 6007   unsigned int sg_tablesize ;
 6008   int devnum_next ;
 6009   struct usb_devmap devmap ;
 6010   struct usb_device *root_hub ;
 6011   struct usb_bus *hs_companion ;
 6012   struct list_head bus_list ;
 6013   int bandwidth_allocated ;
 6014   int bandwidth_int_reqs ;
 6015   int bandwidth_isoc_reqs ;
 6016   struct dentry *usbfs_dentry ;
 6017   struct mon_bus *mon_bus ;
 6018   int monitored ;
 6019};
 6020#line 367
 6021struct usb_tt;
 6022#line 367
 6023struct usb_tt;
 6024#line 367
 6025struct usb_tt;
 6026#line 367
 6027struct usb_tt;
 6028#line 426 "include/linux/usb.h"
 6029struct usb_device {
 6030   int devnum ;
 6031   char devpath[16] ;
 6032   u32 route ;
 6033   enum usb_device_state state ;
 6034   enum usb_device_speed speed ;
 6035   struct usb_tt *tt ;
 6036   int ttport ;
 6037   unsigned int toggle[2] ;
 6038   struct usb_device *parent ;
 6039   struct usb_bus *bus ;
 6040   struct usb_host_endpoint ep0 ;
 6041   struct device dev ;
 6042   struct usb_device_descriptor descriptor ;
 6043   struct usb_host_config *config ;
 6044   struct usb_host_config *actconfig ;
 6045   struct usb_host_endpoint *ep_in[16] ;
 6046   struct usb_host_endpoint *ep_out[16] ;
 6047   char **rawdescriptors ;
 6048   unsigned short bus_mA ;
 6049   u8 portnum ;
 6050   u8 level ;
 6051   unsigned int can_submit : 1 ;
 6052   unsigned int persist_enabled : 1 ;
 6053   unsigned int have_langid : 1 ;
 6054   unsigned int authorized : 1 ;
 6055   unsigned int authenticated : 1 ;
 6056   unsigned int wusb : 1 ;
 6057   int string_langid ;
 6058   char *product ;
 6059   char *manufacturer ;
 6060   char *serial ;
 6061   struct list_head filelist ;
 6062   struct device *usb_classdev ;
 6063   struct dentry *usbfs_dentry ;
 6064   int maxchild ;
 6065   struct usb_device *children[31] ;
 6066   u32 quirks ;
 6067   atomic_t urbnum ;
 6068   unsigned long active_duration ;
 6069   unsigned long connect_time ;
 6070   unsigned int do_remote_wakeup : 1 ;
 6071   unsigned int reset_resume : 1 ;
 6072   struct wusb_dev *wusb_dev ;
 6073   int slot_id ;
 6074};
 6075#line 763 "include/linux/usb.h"
 6076struct usb_dynids {
 6077   spinlock_t lock ;
 6078   struct list_head list ;
 6079};
 6080#line 782 "include/linux/usb.h"
 6081struct usbdrv_wrap {
 6082   struct device_driver driver ;
 6083   int for_devices ;
 6084};
 6085#line 843 "include/linux/usb.h"
 6086struct usb_driver {
 6087   char const   *name ;
 6088   int (*probe)(struct usb_interface *intf , struct usb_device_id  const  *id ) ;
 6089   void (*disconnect)(struct usb_interface *intf ) ;
 6090   int (*unlocked_ioctl)(struct usb_interface *intf , unsigned int code , void *buf ) ;
 6091   int (*suspend)(struct usb_interface *intf , pm_message_t message ) ;
 6092   int (*resume)(struct usb_interface *intf ) ;
 6093   int (*reset_resume)(struct usb_interface *intf ) ;
 6094   int (*pre_reset)(struct usb_interface *intf ) ;
 6095   int (*post_reset)(struct usb_interface *intf ) ;
 6096   struct usb_device_id  const  *id_table ;
 6097   struct usb_dynids dynids ;
 6098   struct usbdrv_wrap drvwrap ;
 6099   unsigned int no_dynamic_id : 1 ;
 6100   unsigned int supports_autosuspend : 1 ;
 6101   unsigned int soft_unbind : 1 ;
 6102};
 6103#line 983 "include/linux/usb.h"
 6104struct usb_iso_packet_descriptor {
 6105   unsigned int offset ;
 6106   unsigned int length ;
 6107   unsigned int actual_length ;
 6108   int status ;
 6109};
 6110#line 990
 6111struct urb;
 6112#line 990
 6113struct urb;
 6114#line 990
 6115struct urb;
 6116#line 990
 6117struct urb;
 6118#line 992 "include/linux/usb.h"
 6119struct usb_anchor {
 6120   struct list_head urb_list ;
 6121   wait_queue_head_t wait ;
 6122   spinlock_t lock ;
 6123   unsigned int poisoned : 1 ;
 6124};
 6125#line 1183 "include/linux/usb.h"
 6126struct urb {
 6127   struct kref kref ;
 6128   void *hcpriv ;
 6129   atomic_t use_count ;
 6130   atomic_t reject ;
 6131   int unlinked ;
 6132   struct list_head urb_list ;
 6133   struct list_head anchor_list ;
 6134   struct usb_anchor *anchor ;
 6135   struct usb_device *dev ;
 6136   struct usb_host_endpoint *ep ;
 6137   unsigned int pipe ;
 6138   unsigned int stream_id ;
 6139   int status ;
 6140   unsigned int transfer_flags ;
 6141   void *transfer_buffer ;
 6142   dma_addr_t transfer_dma ;
 6143   struct scatterlist *sg ;
 6144   int num_sgs ;
 6145   u32 transfer_buffer_length ;
 6146   u32 actual_length ;
 6147   unsigned char *setup_packet ;
 6148   dma_addr_t setup_dma ;
 6149   int start_frame ;
 6150   int number_of_packets ;
 6151   int interval ;
 6152   int error_count ;
 6153   void *context ;
 6154   void (*complete)(struct urb * ) ;
 6155   struct usb_iso_packet_descriptor iso_frame_desc[0] ;
 6156};
 6157#line 1388
 6158struct scatterlist;
 6159#line 41 "include/linux/can.h"
 6160typedef __u32 canid_t;
 6161#line 57 "include/linux/can.h"
 6162struct can_frame {
 6163   canid_t can_id ;
 6164   __u8 can_dlc ;
 6165   __u8 data[8]  __attribute__((__aligned__(8))) ;
 6166};
 6167#line 24 "include/linux/can/netlink.h"
 6168struct can_bittiming {
 6169   __u32 bitrate ;
 6170   __u32 sample_point ;
 6171   __u32 tq ;
 6172   __u32 prop_seg ;
 6173   __u32 phase_seg1 ;
 6174   __u32 phase_seg2 ;
 6175   __u32 sjw ;
 6176   __u32 brp ;
 6177};
 6178#line 40 "include/linux/can/netlink.h"
 6179struct can_bittiming_const {
 6180   char name[16] ;
 6181   __u32 tseg1_min ;
 6182   __u32 tseg1_max ;
 6183   __u32 tseg2_min ;
 6184   __u32 tseg2_max ;
 6185   __u32 sjw_max ;
 6186   __u32 brp_min ;
 6187   __u32 brp_max ;
 6188   __u32 brp_inc ;
 6189};
 6190#line 55 "include/linux/can/netlink.h"
 6191struct can_clock {
 6192   __u32 freq ;
 6193};
 6194#line 62
 6195enum can_state {
 6196    CAN_STATE_ERROR_ACTIVE = 0,
 6197    CAN_STATE_ERROR_WARNING = 1,
 6198    CAN_STATE_ERROR_PASSIVE = 2,
 6199    CAN_STATE_BUS_OFF = 3,
 6200    CAN_STATE_STOPPED = 4,
 6201    CAN_STATE_SLEEPING = 5,
 6202    CAN_STATE_MAX = 6
 6203} ;
 6204#line 75 "include/linux/can/netlink.h"
 6205struct can_berr_counter {
 6206   __u16 txerr ;
 6207   __u16 rxerr ;
 6208};
 6209#line 97 "include/linux/can/netlink.h"
 6210struct can_device_stats {
 6211   __u32 bus_error ;
 6212   __u32 error_warning ;
 6213   __u32 error_passive ;
 6214   __u32 bus_off ;
 6215   __u32 arbitration_lost ;
 6216   __u32 restarts ;
 6217};
 6218#line 24 "include/linux/can/dev.h"
 6219enum can_mode {
 6220    CAN_MODE_STOP = 0,
 6221    CAN_MODE_START = 1,
 6222    CAN_MODE_SLEEP = 2
 6223} ;
 6224#line 33 "include/linux/can/dev.h"
 6225struct can_priv {
 6226   struct can_device_stats can_stats ;
 6227   struct can_bittiming bittiming ;
 6228   struct can_bittiming_const *bittiming_const ;
 6229   struct can_clock clock ;
 6230   enum can_state state ;
 6231   u32 ctrlmode ;
 6232   u32 ctrlmode_supported ;
 6233   int restart_ms ;
 6234   struct timer_list restart_timer ;
 6235   int (*do_set_bittiming)(struct net_device *dev ) ;
 6236   int (*do_set_mode)(struct net_device *dev , enum can_mode mode ) ;
 6237   int (*do_get_state)(struct net_device  const  *dev , enum can_state *state ) ;
 6238   int (*do_get_berr_counter)(struct net_device  const  *dev , struct can_berr_counter *bec ) ;
 6239   unsigned int echo_skb_max ;
 6240   struct sk_buff **echo_skb ;
 6241};
 6242#line 127 "/anthill/stuff/tacas-comp/work/current--X--drivers/net/can/usb/ems_usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/net/can/usb/ems_usb.c.common.c"
 6243struct cpc_can_msg {
 6244   u32 id ;
 6245   u8 length ;
 6246   u8 msg[8] ;
 6247};
 6248#line 134 "/anthill/stuff/tacas-comp/work/current--X--drivers/net/can/usb/ems_usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/net/can/usb/ems_usb.c.common.c"
 6249struct cpc_sja1000_params {
 6250   u8 mode ;
 6251   u8 acc_code0 ;
 6252   u8 acc_code1 ;
 6253   u8 acc_code2 ;
 6254   u8 acc_code3 ;
 6255   u8 acc_mask0 ;
 6256   u8 acc_mask1 ;
 6257   u8 acc_mask2 ;
 6258   u8 acc_mask3 ;
 6259   u8 btr0 ;
 6260   u8 btr1 ;
 6261   u8 outp_contr ;
 6262};
 6263#line 150 "/anthill/stuff/tacas-comp/work/current--X--drivers/net/can/usb/ems_usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/net/can/usb/ems_usb.c.common.c"
 6264union __anonunion_cc_params_319 {
 6265   struct cpc_sja1000_params sja1000 ;
 6266};
 6267#line 150 "/anthill/stuff/tacas-comp/work/current--X--drivers/net/can/usb/ems_usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/net/can/usb/ems_usb.c.common.c"
 6268struct cpc_can_params {
 6269   u8 cc_type ;
 6270   union __anonunion_cc_params_319 cc_params ;
 6271};
 6272#line 160 "/anthill/stuff/tacas-comp/work/current--X--drivers/net/can/usb/ems_usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/net/can/usb/ems_usb.c.common.c"
 6273struct cpc_confirm {
 6274   u8 error ;
 6275};
 6276#line 165 "/anthill/stuff/tacas-comp/work/current--X--drivers/net/can/usb/ems_usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/net/can/usb/ems_usb.c.common.c"
 6277struct cpc_overrun {
 6278   u8 event ;
 6279   u8 count ;
 6280};
 6281#line 171 "/anthill/stuff/tacas-comp/work/current--X--drivers/net/can/usb/ems_usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/net/can/usb/ems_usb.c.common.c"
 6282struct cpc_sja1000_can_error {
 6283   u8 ecc ;
 6284   u8 rxerr ;
 6285   u8 txerr ;
 6286};
 6287#line 178 "/anthill/stuff/tacas-comp/work/current--X--drivers/net/can/usb/ems_usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/net/can/usb/ems_usb.c.common.c"
 6288union __anonunion_regs_321 {
 6289   struct cpc_sja1000_can_error sja1000 ;
 6290};
 6291#line 178 "/anthill/stuff/tacas-comp/work/current--X--drivers/net/can/usb/ems_usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/net/can/usb/ems_usb.c.common.c"
 6292struct __anonstruct_cc_320 {
 6293   u8 cc_type ;
 6294   union __anonunion_regs_321 regs ;
 6295};
 6296#line 178 "/anthill/stuff/tacas-comp/work/current--X--drivers/net/can/usb/ems_usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/net/can/usb/ems_usb.c.common.c"
 6297struct cpc_can_error {
 6298   u8 ecode ;
 6299   struct __anonstruct_cc_320 cc ;
 6300};
 6301#line 195 "/anthill/stuff/tacas-comp/work/current--X--drivers/net/can/usb/ems_usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/net/can/usb/ems_usb.c.common.c"
 6302struct cpc_can_err_counter {
 6303   u8 rx ;
 6304   u8 tx ;
 6305};
 6306#line 201 "/anthill/stuff/tacas-comp/work/current--X--drivers/net/can/usb/ems_usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/net/can/usb/ems_usb.c.common.c"
 6307union __anonunion_msg_322 {
 6308   u8 generic[64] ;
 6309   struct cpc_can_msg can_msg ;
 6310   struct cpc_can_params can_params ;
 6311   struct cpc_confirm confirmation ;
 6312   struct cpc_overrun overrun ;
 6313   struct cpc_can_error error ;
 6314   struct cpc_can_err_counter err_counter ;
 6315   u8 can_state ;
 6316};
 6317#line 201 "/anthill/stuff/tacas-comp/work/current--X--drivers/net/can/usb/ems_usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/net/can/usb/ems_usb.c.common.c"
 6318struct ems_cpc_msg {
 6319   u8 type ;
 6320   u8 length ;
 6321   u8 msgid ;
 6322   u32 ts_sec ;
 6323   u32 ts_nsec ;
 6324   union __anonunion_msg_322 msg ;
 6325} __attribute__((__packed__)) ;
 6326#line 238
 6327struct ems_usb;
 6328#line 238
 6329struct ems_usb;
 6330#line 238
 6331struct ems_usb;
 6332#line 238
 6333struct ems_usb;
 6334#line 240 "/anthill/stuff/tacas-comp/work/current--X--drivers/net/can/usb/ems_usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/net/can/usb/ems_usb.c.common.c"
 6335struct ems_tx_urb_context {
 6336   struct ems_usb *dev ;
 6337   u32 echo_index ;
 6338   u8 dlc ;
 6339};
 6340#line 247 "/anthill/stuff/tacas-comp/work/current--X--drivers/net/can/usb/ems_usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/net/can/usb/ems_usb.c.common.c"
 6341struct ems_usb {
 6342   struct can_priv can ;
 6343   int open_time ;
 6344   struct sk_buff *echo_skb[10] ;
 6345   struct usb_device *udev ;
 6346   struct net_device *netdev ;
 6347   atomic_t active_tx_urbs ;
 6348   struct usb_anchor tx_submitted ;
 6349   struct ems_tx_urb_context tx_contexts[10] ;
 6350   struct usb_anchor rx_submitted ;
 6351   struct urb *intr_urb ;
 6352   u8 *tx_msg_buffer ;
 6353   u8 *intr_in_buffer ;
 6354   unsigned int free_slots ;
 6355   struct ems_cpc_msg active_params ;
 6356};
 6357#line 1 "<compiler builtins>"
 6358
 6359#line 1
 6360long __builtin_expect(long  , long  ) ;
 6361#line 59 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/bitops.h"
 6362__inline static void ( __attribute__((__always_inline__)) set_bit)(unsigned int nr ,
 6363                                                                   unsigned long volatile   *addr ) 
 6364{ long volatile   *__cil_tmp3 ;
 6365
 6366  {
 6367#line 68
 6368  __cil_tmp3 = (long volatile   *)addr;
 6369#line 68
 6370  __asm__  volatile   (".section .smp_locks,\"a\"\n"
 6371                       ".balign 4\n"
 6372                       ".long 671f - .\n"
 6373                       ".previous\n"
 6374                       "671:"
 6375                       "\n\tlock; "
 6376                       "bts %1,%0": "+m" (*__cil_tmp3): "Ir" (nr): "memory");
 6377#line 71
 6378  return;
 6379}
 6380}
 6381#line 97 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/bitops.h"
 6382__inline static void ( __attribute__((__always_inline__)) clear_bit)(int nr , unsigned long volatile   *addr ) 
 6383{ long volatile   *__cil_tmp3 ;
 6384
 6385  {
 6386#line 105
 6387  __cil_tmp3 = (long volatile   *)addr;
 6388#line 105
 6389  __asm__  volatile   (".section .smp_locks,\"a\"\n"
 6390                       ".balign 4\n"
 6391                       ".long 671f - .\n"
 6392                       ".previous\n"
 6393                       "671:"
 6394                       "\n\tlock; "
 6395                       "btr %1,%0": "+m" (*__cil_tmp3): "Ir" (nr));
 6396#line 109
 6397  return;
 6398}
 6399}
 6400#line 246 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/bitops.h"
 6401__inline static int test_and_clear_bit(int nr , unsigned long volatile   *addr ) 
 6402{ int oldbit ;
 6403  long volatile   *__cil_tmp4 ;
 6404
 6405  {
 6406#line 250
 6407  __cil_tmp4 = (long volatile   *)addr;
 6408#line 250
 6409  __asm__  volatile   (".section .smp_locks,\"a\"\n"
 6410                       ".balign 4\n"
 6411                       ".long 671f - .\n"
 6412                       ".previous\n"
 6413                       "671:"
 6414                       "\n\tlock; "
 6415                       "btr %2,%1\n\t"
 6416                       "sbb %0,%0": "=r" (oldbit), "+m" (*__cil_tmp4): "Ir" (nr): "memory");
 6417#line 254
 6418  return (oldbit);
 6419}
 6420}
 6421#line 309 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/bitops.h"
 6422__inline static int ( __attribute__((__always_inline__)) constant_test_bit)(unsigned int nr ,
 6423                                                                            unsigned long const volatile   *addr ) 
 6424{ unsigned int __cil_tmp3 ;
 6425  unsigned long const volatile   *__cil_tmp4 ;
 6426  unsigned long volatile   __cil_tmp5 ;
 6427  unsigned long __cil_tmp6 ;
 6428  unsigned int __cil_tmp7 ;
 6429  unsigned long __cil_tmp8 ;
 6430  unsigned long __cil_tmp9 ;
 6431
 6432  {
 6433  {
 6434#line 311
 6435  __cil_tmp3 = nr / 64U;
 6436#line 311
 6437  __cil_tmp4 = addr + __cil_tmp3;
 6438#line 311
 6439  __cil_tmp5 = *__cil_tmp4;
 6440#line 311
 6441  __cil_tmp6 = (unsigned long )__cil_tmp5;
 6442#line 311
 6443  __cil_tmp7 = nr % 64U;
 6444#line 311
 6445  __cil_tmp8 = 1UL << __cil_tmp7;
 6446#line 311
 6447  __cil_tmp9 = __cil_tmp8 & __cil_tmp6;
 6448#line 311
 6449  return (__cil_tmp9 != 0UL);
 6450  }
 6451}
 6452}
 6453#line 100 "include/linux/printk.h"
 6454extern int printk(char const   *fmt  , ...) ;
 6455#line 69 "include/asm-generic/bug.h"
 6456extern void warn_slowpath_null(char const   *file , int line ) ;
 6457#line 55 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/string_64.h"
 6458extern void *memset(void *s , int c , size_t n ) ;
 6459#line 23 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/atomic.h"
 6460__inline static int atomic_read(atomic_t const   *v ) 
 6461{ int const   *__cil_tmp2 ;
 6462  int volatile   *__cil_tmp3 ;
 6463  int volatile   __cil_tmp4 ;
 6464
 6465  {
 6466  {
 6467#line 25
 6468  __cil_tmp2 = & v->counter;
 6469#line 25
 6470  __cil_tmp3 = (int volatile   *)__cil_tmp2;
 6471#line 25
 6472  __cil_tmp4 = *__cil_tmp3;
 6473#line 25
 6474  return ((int )__cil_tmp4);
 6475  }
 6476}
 6477}
 6478#line 35 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/atomic.h"
 6479__inline static void atomic_set(atomic_t *v , int i ) 
 6480{ 
 6481
 6482  {
 6483#line 37
 6484  v->counter = i;
 6485#line 38
 6486  return;
 6487}
 6488}
 6489#line 93 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/atomic.h"
 6490__inline static void atomic_inc(atomic_t *v ) 
 6491{ 
 6492
 6493  {
 6494#line 95
 6495  __asm__  volatile   (".section .smp_locks,\"a\"\n"
 6496                       ".balign 4\n"
 6497                       ".long 671f - .\n"
 6498                       ".previous\n"
 6499                       "671:"
 6500                       "\n\tlock; "
 6501                       "incl %0": "+m" (v->counter));
 6502#line 97
 6503  return;
 6504}
 6505}
 6506#line 105 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/atomic.h"
 6507__inline static void atomic_dec(atomic_t *v ) 
 6508{ 
 6509
 6510  {
 6511#line 107
 6512  __asm__  volatile   (".section .smp_locks,\"a\"\n"
 6513                       ".balign 4\n"
 6514                       ".long 671f - .\n"
 6515                       ".previous\n"
 6516                       "671:"
 6517                       "\n\tlock; "
 6518                       "decl %0": "+m" (v->counter));
 6519#line 109
 6520  return;
 6521}
 6522}
 6523#line 24 "include/linux/list.h"
 6524__inline static void INIT_LIST_HEAD(struct list_head *list ) 
 6525{ 
 6526
 6527  {
 6528#line 26
 6529  list->next = list;
 6530#line 27
 6531  list->prev = list;
 6532#line 28
 6533  return;
 6534}
 6535}
 6536#line 93 "include/linux/spinlock.h"
 6537extern void __raw_spin_lock_init(raw_spinlock_t *lock , char const   *name , struct lock_class_key *key ) ;
 6538#line 272 "include/linux/spinlock.h"
 6539__inline static raw_spinlock_t *spinlock_check(spinlock_t *lock ) 
 6540{ 
 6541
 6542  {
 6543#line 274
 6544  return (& lock->__annonCompField18.rlock);
 6545}
 6546}
 6547#line 80 "include/linux/wait.h"
 6548extern void __init_waitqueue_head(wait_queue_head_t *q , struct lock_class_key * ) ;
 6549#line 82 "include/linux/jiffies.h"
 6550extern unsigned long volatile   jiffies  __attribute__((__section__(".data"))) ;
 6551#line 141 "include/linux/slab.h"
 6552extern void kfree(void const   * ) ;
 6553#line 221 "include/linux/slub_def.h"
 6554extern void *__kmalloc(size_t size , gfp_t flags ) ;
 6555#line 255 "include/linux/slub_def.h"
 6556__inline static void *( __attribute__((__always_inline__)) kmalloc)(size_t size ,
 6557                                                                    gfp_t flags ) 
 6558{ void *tmp___2 ;
 6559
 6560  {
 6561  {
 6562#line 270
 6563  tmp___2 = __kmalloc(size, flags);
 6564  }
 6565#line 270
 6566  return (tmp___2);
 6567}
 6568}
 6569#line 318 "include/linux/slab.h"
 6570__inline static void *kzalloc(size_t size , gfp_t flags ) 
 6571{ void *tmp ;
 6572  unsigned int __cil_tmp4 ;
 6573
 6574  {
 6575  {
 6576#line 320
 6577  __cil_tmp4 = flags | 32768U;
 6578#line 320
 6579  tmp = kmalloc(size, __cil_tmp4);
 6580  }
 6581#line 320
 6582  return (tmp);
 6583}
 6584}
 6585#line 79 "include/linux/module.h"
 6586int init_module(void) ;
 6587#line 80
 6588void cleanup_module(void) ;
 6589#line 99
 6590extern struct module __this_module ;
 6591#line 705 "include/linux/device.h"
 6592extern void *dev_get_drvdata(struct device  const  *dev )  __attribute__((__ldv_model__)) ;
 6593#line 706
 6594extern int dev_set_drvdata(struct device *dev , void *data ) ;
 6595#line 797
 6596extern int dev_err(struct device  const  *dev , char const   *fmt  , ...) ;
 6597#line 799
 6598extern int dev_warn(struct device  const  *dev , char const   *fmt  , ...) ;
 6599#line 803
 6600extern int _dev_info(struct device  const  *dev , char const   *fmt  , ...) ;
 6601#line 490 "include/linux/skbuff.h"
 6602extern void kfree_skb(struct sk_buff *skb ) ;
 6603#line 491
 6604extern void consume_skb(struct sk_buff *skb ) ;
 6605#line 1409 "include/linux/netdevice.h"
 6606__inline static struct netdev_queue *netdev_get_tx_queue(struct net_device  const  *dev ,
 6607                                                         unsigned int index ) 
 6608{ struct netdev_queue *__cil_tmp3 ;
 6609  struct netdev_queue *__cil_tmp4 ;
 6610
 6611  {
 6612  {
 6613#line 1413
 6614  __cil_tmp3 = dev->_tx;
 6615#line 1413
 6616  __cil_tmp4 = __cil_tmp3 + index;
 6617#line 1413
 6618  return ((struct netdev_queue *)__cil_tmp4);
 6619  }
 6620}
 6621}
 6622#line 1481 "include/linux/netdevice.h"
 6623__inline static void *netdev_priv(struct net_device  const  *dev ) 
 6624{ unsigned long __cil_tmp2 ;
 6625  unsigned long __cil_tmp3 ;
 6626  char *__cil_tmp4 ;
 6627  char *__cil_tmp5 ;
 6628
 6629  {
 6630  {
 6631#line 1483
 6632  __cil_tmp2 = 2496UL + 31UL;
 6633#line 1483
 6634  __cil_tmp3 = __cil_tmp2 & 1152921504606846944UL;
 6635#line 1483
 6636  __cil_tmp4 = (char *)dev;
 6637#line 1483
 6638  __cil_tmp5 = __cil_tmp4 + __cil_tmp3;
 6639#line 1483
 6640  return ((void *)__cil_tmp5);
 6641  }
 6642}
 6643}
 6644#line 1656
 6645extern int netpoll_trap(void) ;
 6646#line 1788
 6647extern void __netif_schedule(struct Qdisc *q ) ;
 6648#line 1804 "include/linux/netdevice.h"
 6649__inline static void netif_tx_start_queue(struct netdev_queue *dev_queue ) 
 6650{ unsigned long *__cil_tmp2 ;
 6651  unsigned long volatile   *__cil_tmp3 ;
 6652
 6653  {
 6654  {
 6655#line 1806
 6656  __cil_tmp2 = & dev_queue->state;
 6657#line 1806
 6658  __cil_tmp3 = (unsigned long volatile   *)__cil_tmp2;
 6659#line 1806
 6660  clear_bit(0, __cil_tmp3);
 6661  }
 6662#line 1807
 6663  return;
 6664}
 6665}
 6666#line 1815 "include/linux/netdevice.h"
 6667__inline static void netif_start_queue(struct net_device *dev ) 
 6668{ struct netdev_queue *tmp___7 ;
 6669  struct net_device  const  *__cil_tmp3 ;
 6670
 6671  {
 6672  {
 6673#line 1817
 6674  __cil_tmp3 = (struct net_device  const  *)dev;
 6675#line 1817
 6676  tmp___7 = netdev_get_tx_queue(__cil_tmp3, 0U);
 6677#line 1817
 6678  netif_tx_start_queue(tmp___7);
 6679  }
 6680#line 1818
 6681  return;
 6682}
 6683}
 6684#line 1830 "include/linux/netdevice.h"
 6685__inline static void netif_tx_wake_queue(struct netdev_queue *dev_queue ) 
 6686{ int tmp___7 ;
 6687  int tmp___8 ;
 6688  unsigned long *__cil_tmp4 ;
 6689  unsigned long volatile   *__cil_tmp5 ;
 6690  struct Qdisc *__cil_tmp6 ;
 6691
 6692  {
 6693  {
 6694#line 1833
 6695  tmp___7 = netpoll_trap();
 6696  }
 6697#line 1833
 6698  if (tmp___7) {
 6699    {
 6700#line 1834
 6701    netif_tx_start_queue(dev_queue);
 6702    }
 6703#line 1835
 6704    return;
 6705  } else {
 6706
 6707  }
 6708  {
 6709#line 1838
 6710  __cil_tmp4 = & dev_queue->state;
 6711#line 1838
 6712  __cil_tmp5 = (unsigned long volatile   *)__cil_tmp4;
 6713#line 1838
 6714  tmp___8 = test_and_clear_bit(0, __cil_tmp5);
 6715  }
 6716#line 1838
 6717  if (tmp___8) {
 6718    {
 6719#line 1839
 6720    __cil_tmp6 = dev_queue->qdisc;
 6721#line 1839
 6722    __netif_schedule(__cil_tmp6);
 6723    }
 6724  } else {
 6725
 6726  }
 6727#line 1840
 6728  return;
 6729}
 6730}
 6731#line 1849 "include/linux/netdevice.h"
 6732__inline static void netif_wake_queue(struct net_device *dev ) 
 6733{ struct netdev_queue *tmp___7 ;
 6734  struct net_device  const  *__cil_tmp3 ;
 6735
 6736  {
 6737  {
 6738#line 1851
 6739  __cil_tmp3 = (struct net_device  const  *)dev;
 6740#line 1851
 6741  tmp___7 = netdev_get_tx_queue(__cil_tmp3, 0U);
 6742#line 1851
 6743  netif_tx_wake_queue(tmp___7);
 6744  }
 6745#line 1852
 6746  return;
 6747}
 6748}
 6749#line 1864 "include/linux/netdevice.h"
 6750__inline static void netif_tx_stop_queue(struct netdev_queue *dev_queue ) 
 6751{ int __ret_warn_on ;
 6752  long tmp___7 ;
 6753  long tmp___8 ;
 6754  int __cil_tmp5 ;
 6755  int __cil_tmp6 ;
 6756  int __cil_tmp7 ;
 6757  int __cil_tmp8 ;
 6758  long __cil_tmp9 ;
 6759  int __cil_tmp10 ;
 6760  int __cil_tmp11 ;
 6761  int __cil_tmp12 ;
 6762  int __cil_tmp13 ;
 6763  long __cil_tmp14 ;
 6764  unsigned long *__cil_tmp15 ;
 6765  unsigned long volatile   *__cil_tmp16 ;
 6766
 6767  {
 6768  {
 6769#line 1866
 6770  __cil_tmp5 = ! dev_queue;
 6771#line 1866
 6772  __cil_tmp6 = ! __cil_tmp5;
 6773#line 1866
 6774  __ret_warn_on = ! __cil_tmp6;
 6775#line 1866
 6776  __cil_tmp7 = ! __ret_warn_on;
 6777#line 1866
 6778  __cil_tmp8 = ! __cil_tmp7;
 6779#line 1866
 6780  __cil_tmp9 = (long )__cil_tmp8;
 6781#line 1866
 6782  tmp___7 = __builtin_expect(__cil_tmp9, 0L);
 6783  }
 6784#line 1866
 6785  if (tmp___7) {
 6786    {
 6787#line 1866
 6788    __cil_tmp10 = (int const   )1866;
 6789#line 1866
 6790    __cil_tmp11 = (int )__cil_tmp10;
 6791#line 1866
 6792    warn_slowpath_null("include/linux/netdevice.h", __cil_tmp11);
 6793    }
 6794  } else {
 6795
 6796  }
 6797  {
 6798#line 1866
 6799  __cil_tmp12 = ! __ret_warn_on;
 6800#line 1866
 6801  __cil_tmp13 = ! __cil_tmp12;
 6802#line 1866
 6803  __cil_tmp14 = (long )__cil_tmp13;
 6804#line 1866
 6805  tmp___8 = __builtin_expect(__cil_tmp14, 0L);
 6806  }
 6807#line 1866
 6808  if (tmp___8) {
 6809    {
 6810#line 1867
 6811    printk("<6>netif_stop_queue() cannot be called before register_netdev()\n");
 6812    }
 6813#line 1868
 6814    return;
 6815  } else {
 6816
 6817  }
 6818  {
 6819#line 1870
 6820  __cil_tmp15 = & dev_queue->state;
 6821#line 1870
 6822  __cil_tmp16 = (unsigned long volatile   *)__cil_tmp15;
 6823#line 1870
 6824  set_bit(0U, __cil_tmp16);
 6825  }
 6826#line 1871
 6827  return;
 6828}
 6829}
 6830#line 1880 "include/linux/netdevice.h"
 6831__inline static void netif_stop_queue(struct net_device *dev ) 
 6832{ struct netdev_queue *tmp___7 ;
 6833  struct net_device  const  *__cil_tmp3 ;
 6834
 6835  {
 6836  {
 6837#line 1882
 6838  __cil_tmp3 = (struct net_device  const  *)dev;
 6839#line 1882
 6840  tmp___7 = netdev_get_tx_queue(__cil_tmp3, 0U);
 6841#line 1882
 6842  netif_tx_stop_queue(tmp___7);
 6843  }
 6844#line 1883
 6845  return;
 6846}
 6847}
 6848#line 1895 "include/linux/netdevice.h"
 6849__inline static int netif_tx_queue_stopped(struct netdev_queue  const  *dev_queue ) 
 6850{ int tmp___7 ;
 6851  unsigned long const   *__cil_tmp3 ;
 6852  unsigned long const volatile   *__cil_tmp4 ;
 6853
 6854  {
 6855  {
 6856#line 1897
 6857  __cil_tmp3 = & dev_queue->state;
 6858#line 1897
 6859  __cil_tmp4 = (unsigned long const volatile   *)__cil_tmp3;
 6860#line 1897
 6861  tmp___7 = constant_test_bit(0U, __cil_tmp4);
 6862  }
 6863#line 1897
 6864  return (tmp___7);
 6865}
 6866}
 6867#line 1906 "include/linux/netdevice.h"
 6868__inline static int netif_queue_stopped(struct net_device  const  *dev ) 
 6869{ struct netdev_queue *tmp___7 ;
 6870  int tmp___8 ;
 6871  struct netdev_queue  const  *__cil_tmp4 ;
 6872
 6873  {
 6874  {
 6875#line 1908
 6876  tmp___7 = netdev_get_tx_queue(dev, 0U);
 6877#line 1908
 6878  __cil_tmp4 = (struct netdev_queue  const  *)tmp___7;
 6879#line 1908
 6880  tmp___8 = netif_tx_queue_stopped(__cil_tmp4);
 6881  }
 6882#line 1908
 6883  return (tmp___8);
 6884}
 6885}
 6886#line 2064
 6887extern int netif_rx(struct sk_buff *skb ) ;
 6888#line 2234 "include/linux/netdevice.h"
 6889__inline static int netif_device_present(struct net_device *dev ) 
 6890{ int tmp___7 ;
 6891  unsigned long *__cil_tmp3 ;
 6892  unsigned long const volatile   *__cil_tmp4 ;
 6893
 6894  {
 6895  {
 6896#line 2236
 6897  __cil_tmp3 = & dev->state;
 6898#line 2236
 6899  __cil_tmp4 = (unsigned long const volatile   *)__cil_tmp3;
 6900#line 2236
 6901  tmp___7 = constant_test_bit(1U, __cil_tmp4);
 6902  }
 6903#line 2236
 6904  return (tmp___7);
 6905}
 6906}
 6907#line 2239
 6908extern void netif_device_detach(struct net_device *dev ) ;
 6909#line 2459
 6910extern void unregister_netdev(struct net_device *dev ) ;
 6911#line 191 "include/linux/usb.h"
 6912__inline static void *usb_get_intfdata(struct usb_interface *intf )  __attribute__((__ldv_model__)) ;
 6913#line 191
 6914__inline static void *usb_get_intfdata(struct usb_interface *intf )  __attribute__((__ldv_model__)) ;
 6915#line 191 "include/linux/usb.h"
 6916__inline static void *usb_get_intfdata(struct usb_interface *intf ) 
 6917{ void *tmp___7 ;
 6918  struct device *__cil_tmp3 ;
 6919  struct device  const  *__cil_tmp4 ;
 6920
 6921  {
 6922  {
 6923#line 193
 6924  __cil_tmp3 = & intf->dev;
 6925#line 193
 6926  __cil_tmp4 = (struct device  const  *)__cil_tmp3;
 6927#line 193
 6928  tmp___7 = dev_get_drvdata(__cil_tmp4);
 6929  }
 6930#line 193
 6931  return (tmp___7);
 6932}
 6933}
 6934#line 196
 6935__inline static void usb_set_intfdata(struct usb_interface *intf , void *data )  __attribute__((__ldv_model__)) ;
 6936#line 196
 6937__inline static void usb_set_intfdata(struct usb_interface *intf , void *data )  __attribute__((__ldv_model__)) ;
 6938#line 196 "include/linux/usb.h"
 6939__inline static void usb_set_intfdata(struct usb_interface *intf , void *data ) 
 6940{ struct device *__cil_tmp3 ;
 6941
 6942  {
 6943  {
 6944#line 198
 6945  __cil_tmp3 = & intf->dev;
 6946#line 198
 6947  dev_set_drvdata(__cil_tmp3, data);
 6948  }
 6949#line 199
 6950  return;
 6951}
 6952}
 6953#line 497 "include/linux/usb.h"
 6954__inline static struct usb_device *interface_to_usbdev(struct usb_interface *intf ) 
 6955{ struct device  const  *__mptr ;
 6956  struct device *__cil_tmp3 ;
 6957  struct usb_device *__cil_tmp4 ;
 6958  struct device *__cil_tmp5 ;
 6959  unsigned int __cil_tmp6 ;
 6960  char *__cil_tmp7 ;
 6961  char *__cil_tmp8 ;
 6962
 6963  {
 6964#line 499
 6965  __cil_tmp3 = intf->dev.parent;
 6966#line 499
 6967  __mptr = (struct device  const  *)__cil_tmp3;
 6968  {
 6969#line 499
 6970  __cil_tmp4 = (struct usb_device *)0;
 6971#line 499
 6972  __cil_tmp5 = & __cil_tmp4->dev;
 6973#line 499
 6974  __cil_tmp6 = (unsigned int )__cil_tmp5;
 6975#line 499
 6976  __cil_tmp7 = (char *)__mptr;
 6977#line 499
 6978  __cil_tmp8 = __cil_tmp7 - __cil_tmp6;
 6979#line 499
 6980  return ((struct usb_device *)__cil_tmp8);
 6981  }
 6982}
 6983}
 6984#line 929
 6985extern int usb_register_driver(struct usb_driver * , struct module * , char const   * ) ;
 6986#line 931 "include/linux/usb.h"
 6987__inline static int usb_register(struct usb_driver *driver ) 
 6988{ int tmp___7 ;
 6989
 6990  {
 6991  {
 6992#line 933
 6993  tmp___7 = usb_register_driver(driver, & __this_module, "ems_usb");
 6994  }
 6995#line 933
 6996  return (tmp___7);
 6997}
 6998}
 6999#line 935
 7000extern void usb_deregister(struct usb_driver * ) ;
 7001#line 1002 "include/linux/usb.h"
 7002static struct lock_class_key __key___7  ;
 7003#line 1003 "include/linux/usb.h"
 7004static struct lock_class_key __key___8  ;
 7005#line 999 "include/linux/usb.h"
 7006__inline static void init_usb_anchor(struct usb_anchor *anchor ) 
 7007{ struct list_head *__cil_tmp2 ;
 7008  wait_queue_head_t *__cil_tmp3 ;
 7009  spinlock_t *__cil_tmp4 ;
 7010  struct raw_spinlock *__cil_tmp5 ;
 7011
 7012  {
 7013  {
 7014#line 1001
 7015  __cil_tmp2 = & anchor->urb_list;
 7016#line 1001
 7017  INIT_LIST_HEAD(__cil_tmp2);
 7018  }
 7019  {
 7020#line 1002
 7021  while (1) {
 7022    while_continue: /* CIL Label */ ;
 7023    {
 7024#line 1002
 7025    __cil_tmp3 = & anchor->wait;
 7026#line 1002
 7027    __init_waitqueue_head(__cil_tmp3, & __key___7);
 7028    }
 7029#line 1002
 7030    goto while_break;
 7031  }
 7032  while_break___2: /* CIL Label */ ;
 7033  }
 7034
 7035  while_break: ;
 7036  {
 7037#line 1003
 7038  while (1) {
 7039    while_continue___0: /* CIL Label */ ;
 7040    {
 7041#line 1003
 7042    __cil_tmp4 = & anchor->lock;
 7043#line 1003
 7044    spinlock_check(__cil_tmp4);
 7045    }
 7046    {
 7047#line 1003
 7048    while (1) {
 7049      while_continue___1: /* CIL Label */ ;
 7050      {
 7051#line 1003
 7052      __cil_tmp5 = & anchor->lock.__annonCompField18.rlock;
 7053#line 1003
 7054      __raw_spin_lock_init(__cil_tmp5, "&(&anchor->lock)->rlock", & __key___8);
 7055      }
 7056#line 1003
 7057      goto while_break___1;
 7058    }
 7059    while_break___4: /* CIL Label */ ;
 7060    }
 7061
 7062    while_break___1: ;
 7063#line 1003
 7064    goto while_break___0;
 7065  }
 7066  while_break___3: /* CIL Label */ ;
 7067  }
 7068
 7069  while_break___0: ;
 7070#line 1004
 7071  return;
 7072}
 7073}
 7074#line 1268 "include/linux/usb.h"
 7075__inline static void usb_fill_bulk_urb(struct urb *urb , struct usb_device *dev ,
 7076                                       unsigned int pipe , void *transfer_buffer ,
 7077                                       int buffer_length , void (*complete_fn)(struct urb * ) ,
 7078                                       void *context ) 
 7079{ 
 7080
 7081  {
 7082#line 1276
 7083  urb->dev = dev;
 7084#line 1277
 7085  urb->pipe = pipe;
 7086#line 1278
 7087  urb->transfer_buffer = transfer_buffer;
 7088#line 1279
 7089  urb->transfer_buffer_length = (u32 )buffer_length;
 7090#line 1280
 7091  urb->complete = complete_fn;
 7092#line 1281
 7093  urb->context = context;
 7094#line 1282
 7095  return;
 7096}
 7097}
 7098#line 1309 "include/linux/usb.h"
 7099__inline static void usb_fill_int_urb(struct urb *urb , struct usb_device *dev , unsigned int pipe ,
 7100                                      void *transfer_buffer , int buffer_length ,
 7101                                      void (*complete_fn)(struct urb * ) , void *context ,
 7102                                      int interval ) 
 7103{ enum usb_device_speed __cil_tmp9 ;
 7104  unsigned int __cil_tmp10 ;
 7105  int __cil_tmp11 ;
 7106  enum usb_device_speed __cil_tmp12 ;
 7107  unsigned int __cil_tmp13 ;
 7108  int __cil_tmp14 ;
 7109
 7110  {
 7111#line 1318
 7112  urb->dev = dev;
 7113#line 1319
 7114  urb->pipe = pipe;
 7115#line 1320
 7116  urb->transfer_buffer = transfer_buffer;
 7117#line 1321
 7118  urb->transfer_buffer_length = (u32 )buffer_length;
 7119#line 1322
 7120  urb->complete = complete_fn;
 7121#line 1323
 7122  urb->context = context;
 7123  {
 7124#line 1324
 7125  __cil_tmp9 = dev->speed;
 7126#line 1324
 7127  __cil_tmp10 = (unsigned int )__cil_tmp9;
 7128#line 1324
 7129  if (__cil_tmp10 == 3U) {
 7130#line 1325
 7131    __cil_tmp11 = interval - 1;
 7132#line 1325
 7133    urb->interval = 1 << __cil_tmp11;
 7134  } else {
 7135    {
 7136#line 1324
 7137    __cil_tmp12 = dev->speed;
 7138#line 1324
 7139    __cil_tmp13 = (unsigned int )__cil_tmp12;
 7140#line 1324
 7141    if (__cil_tmp13 == 5U) {
 7142#line 1325
 7143      __cil_tmp14 = interval - 1;
 7144#line 1325
 7145      urb->interval = 1 << __cil_tmp14;
 7146    } else {
 7147#line 1327
 7148      urb->interval = interval;
 7149    }
 7150    }
 7151  }
 7152  }
 7153#line 1328
 7154  urb->start_frame = -1;
 7155#line 1329
 7156  return;
 7157}
 7158}
 7159#line 1332
 7160struct urb *usb_alloc_urb(int iso_packets , gfp_t mem_flags )  __attribute__((__ldv_model__)) ;
 7161#line 1333
 7162void usb_free_urb(struct urb *urb )  __attribute__((__ldv_model__)) ;
 7163#line 1336
 7164extern int usb_submit_urb(struct urb *urb , gfp_t mem_flags ) ;
 7165#line 1337
 7166extern int usb_unlink_urb(struct urb *urb ) ;
 7167#line 1341
 7168extern void usb_kill_anchored_urbs(struct usb_anchor *anchor ) ;
 7169#line 1345
 7170extern void usb_anchor_urb(struct urb *urb , struct usb_anchor *anchor ) ;
 7171#line 1346
 7172extern void usb_unanchor_urb(struct urb *urb ) ;
 7173#line 1377
 7174void *usb_alloc_coherent(struct usb_device *dev , size_t size , gfp_t mem_flags ,
 7175                         dma_addr_t *dma )  __attribute__((__ldv_model__)) ;
 7176#line 1379
 7177void usb_free_coherent(struct usb_device *dev , size_t size , void *addr , dma_addr_t dma )  __attribute__((__ldv_model__)) ;
 7178#line 1407
 7179extern int usb_bulk_msg(struct usb_device *usb_dev , unsigned int pipe , void *data ,
 7180                        int len , int *actual_length , int timeout ) ;
 7181#line 1526 "include/linux/usb.h"
 7182__inline static unsigned int __create_pipe(struct usb_device *dev , unsigned int endpoint ) 
 7183{ unsigned int __cil_tmp3 ;
 7184  int __cil_tmp4 ;
 7185  int __cil_tmp5 ;
 7186  unsigned int __cil_tmp6 ;
 7187
 7188  {
 7189  {
 7190#line 1529
 7191  __cil_tmp3 = endpoint << 15;
 7192#line 1529
 7193  __cil_tmp4 = dev->devnum;
 7194#line 1529
 7195  __cil_tmp5 = __cil_tmp4 << 8;
 7196#line 1529
 7197  __cil_tmp6 = (unsigned int )__cil_tmp5;
 7198#line 1529
 7199  return (__cil_tmp6 | __cil_tmp3);
 7200  }
 7201}
 7202}
 7203#line 68 "include/linux/can/dev.h"
 7204__inline static int can_dropped_invalid_skb(struct net_device *dev , struct sk_buff *skb ) 
 7205{ struct can_frame  const  *cf ;
 7206  int tmp___7 ;
 7207  long tmp___8 ;
 7208  unsigned char *__cil_tmp6 ;
 7209  struct can_frame *__cil_tmp7 ;
 7210  unsigned int __cil_tmp8 ;
 7211  unsigned long __cil_tmp9 ;
 7212  __u8 __cil_tmp10 ;
 7213  int __cil_tmp11 ;
 7214  long __cil_tmp12 ;
 7215  unsigned long __cil_tmp13 ;
 7216
 7217  {
 7218#line 71
 7219  __cil_tmp6 = skb->data;
 7220#line 71
 7221  __cil_tmp7 = (struct can_frame *)__cil_tmp6;
 7222#line 71
 7223  cf = (struct can_frame  const  *)__cil_tmp7;
 7224  {
 7225#line 73
 7226  __cil_tmp8 = skb->len;
 7227#line 73
 7228  __cil_tmp9 = (unsigned long )__cil_tmp8;
 7229#line 73
 7230  if (__cil_tmp9 != 16UL) {
 7231#line 73
 7232    tmp___7 = 1;
 7233  } else {
 7234    {
 7235#line 73
 7236    __cil_tmp10 = cf->can_dlc;
 7237#line 73
 7238    __cil_tmp11 = (int const   )__cil_tmp10;
 7239#line 73
 7240    if (__cil_tmp11 > 8) {
 7241#line 73
 7242      tmp___7 = 1;
 7243    } else {
 7244#line 73
 7245      tmp___7 = 0;
 7246    }
 7247    }
 7248  }
 7249  }
 7250  {
 7251#line 73
 7252  __cil_tmp12 = (long )tmp___7;
 7253#line 73
 7254  tmp___8 = __builtin_expect(__cil_tmp12, 0L);
 7255  }
 7256#line 73
 7257  if (tmp___8) {
 7258    {
 7259#line 74
 7260    kfree_skb(skb);
 7261#line 75
 7262    __cil_tmp13 = dev->stats.tx_dropped;
 7263#line 75
 7264    dev->stats.tx_dropped = __cil_tmp13 + 1UL;
 7265    }
 7266#line 76
 7267    return (1);
 7268  } else {
 7269
 7270  }
 7271#line 79
 7272  return (0);
 7273}
 7274}
 7275#line 82
 7276extern struct net_device *alloc_candev(int sizeof_priv , unsigned int echo_skb_max ) ;
 7277#line 83
 7278extern void free_candev(struct net_device *dev ) ;
 7279#line 85
 7280extern int open_candev(struct net_device *dev ) ;
 7281#line 86
 7282extern void close_candev(struct net_device *dev ) ;
 7283#line 88
 7284extern int register_candev(struct net_device *dev ) ;
 7285#line 92
 7286extern void can_bus_off(struct net_device *dev ) ;
 7287#line 94
 7288extern void can_put_echo_skb(struct sk_buff *skb , struct net_device *dev , unsigned int idx ) ;
 7289#line 96
 7290extern void can_get_echo_skb(struct net_device *dev , unsigned int idx ) ;
 7291#line 97
 7292extern void can_free_echo_skb(struct net_device *dev , unsigned int idx ) ;
 7293#line 99
 7294extern struct sk_buff *alloc_can_skb(struct net_device *dev , struct can_frame **cf ) ;
 7295#line 100
 7296extern struct sk_buff *alloc_can_err_skb(struct net_device *dev , struct can_frame **cf ) ;
 7297#line 31 "/anthill/stuff/tacas-comp/work/current--X--drivers/net/can/usb/ems_usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/net/can/usb/ems_usb.c.common.c"
 7298static char const   __mod_author31[46]  __attribute__((__used__, __unused__, __section__(".modinfo"),
 7299__aligned__(1)))  = 
 7300#line 31 "/anthill/stuff/tacas-comp/work/current--X--drivers/net/can/usb/ems_usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/net/can/usb/ems_usb.c.common.c"
 7301  {      (char const   )'a',      (char const   )'u',      (char const   )'t',      (char const   )'h', 
 7302        (char const   )'o',      (char const   )'r',      (char const   )'=',      (char const   )'S', 
 7303        (char const   )'e',      (char const   )'b',      (char const   )'a',      (char const   )'s', 
 7304        (char const   )'t',      (char const   )'i',      (char const   )'a',      (char const   )'n', 
 7305        (char const   )' ',      (char const   )'H',      (char const   )'a',      (char const   )'a', 
 7306        (char const   )'s',      (char const   )' ',      (char const   )'<',      (char const   )'h', 
 7307        (char const   )'a',      (char const   )'a',      (char const   )'s',      (char const   )'@', 
 7308        (char const   )'e',      (char const   )'m',      (char const   )'s',      (char const   )'-', 
 7309        (char const   )'w',      (char const   )'u',      (char const   )'e',      (char const   )'n', 
 7310        (char const   )'s',      (char const   )'c',      (char const   )'h',      (char const   )'e', 
 7311        (char const   )'.',      (char const   )'c',      (char const   )'o',      (char const   )'m', 
 7312        (char const   )'>',      (char const   )'\000'};
 7313#line 32 "/anthill/stuff/tacas-comp/work/current--X--drivers/net/can/usb/ems_usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/net/can/usb/ems_usb.c.common.c"
 7314static char const   __mod_description32[70]  __attribute__((__used__, __unused__,
 7315__section__(".modinfo"), __aligned__(1)))  = 
 7316#line 32
 7317  {      (char const   )'d',      (char const   )'e',      (char const   )'s',      (char const   )'c', 
 7318        (char const   )'r',      (char const   )'i',      (char const   )'p',      (char const   )'t', 
 7319        (char const   )'i',      (char const   )'o',      (char const   )'n',      (char const   )'=', 
 7320        (char const   )'C',      (char const   )'A',      (char const   )'N',      (char const   )' ', 
 7321        (char const   )'d',      (char const   )'r',      (char const   )'i',      (char const   )'v', 
 7322        (char const   )'e',      (char const   )'r',      (char const   )' ',      (char const   )'f', 
 7323        (char const   )'o',      (char const   )'r',      (char const   )' ',      (char const   )'E', 
 7324        (char const   )'M',      (char const   )'S',      (char const   )' ',      (char const   )'D', 
 7325        (char const   )'r',      (char const   )'.',      (char const   )' ',      (char const   )'T', 
 7326        (char const   )'h',      (char const   )'o',      (char const   )'m',      (char const   )'a', 
 7327        (char const   )'s',      (char const   )' ',      (char const   )'W',      (char const   )'u', 
 7328        (char const   )'e',      (char const   )'n',      (char const   )'s',      (char const   )'c', 
 7329        (char const   )'h',      (char const   )'e',      (char const   )' ',      (char const   )'C', 
 7330        (char const   )'A',      (char const   )'N',      (char const   )'/',      (char const   )'U', 
 7331        (char const   )'S',      (char const   )'B',      (char const   )' ',      (char const   )'i', 
 7332        (char const   )'n',      (char const   )'t',      (char const   )'e',      (char const   )'r', 
 7333        (char const   )'f',      (char const   )'a',      (char const   )'c',      (char const   )'e', 
 7334        (char const   )'s',      (char const   )'\000'};
 7335#line 33 "/anthill/stuff/tacas-comp/work/current--X--drivers/net/can/usb/ems_usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/net/can/usb/ems_usb.c.common.c"
 7336static char const   __mod_license33[15]  __attribute__((__used__, __unused__, __section__(".modinfo"),
 7337__aligned__(1)))  = 
 7338#line 33
 7339  {      (char const   )'l',      (char const   )'i',      (char const   )'c',      (char const   )'e', 
 7340        (char const   )'n',      (char const   )'s',      (char const   )'e',      (char const   )'=', 
 7341        (char const   )'G',      (char const   )'P',      (char const   )'L',      (char const   )' ', 
 7342        (char const   )'v',      (char const   )'2',      (char const   )'\000'};
 7343#line 224 "/anthill/stuff/tacas-comp/work/current--X--drivers/net/can/usb/ems_usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/net/can/usb/ems_usb.c.common.c"
 7344static struct usb_device_id ems_usb_table[1]  = {      {(__u16 )3, (__u16 )4822, (__u16 )1092, (unsigned short)0, (unsigned short)0,
 7345      (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0, (unsigned char)0,
 7346      (unsigned char)0, 0UL}};
 7347#line 229
 7348extern struct usb_device_id  const  __mod_usb_device_table  __attribute__((__unused__,
 7349__alias__("ems_usb_table"))) ;
 7350#line 272 "/anthill/stuff/tacas-comp/work/current--X--drivers/net/can/usb/ems_usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/net/can/usb/ems_usb.c.common.c"
 7351static void ems_usb_read_interrupt_callback(struct urb *urb ) 
 7352{ struct ems_usb *dev ;
 7353  struct net_device *netdev ;
 7354  int err ;
 7355  int tmp___7 ;
 7356  void *__cil_tmp6 ;
 7357  int __cil_tmp7 ;
 7358  int __cil_tmp8 ;
 7359  int __cil_tmp9 ;
 7360  int __cil_tmp10 ;
 7361  u8 *__cil_tmp11 ;
 7362  u8 *__cil_tmp12 ;
 7363  u8 __cil_tmp13 ;
 7364  struct device *__cil_tmp14 ;
 7365  struct device  const  *__cil_tmp15 ;
 7366  int __cil_tmp16 ;
 7367  struct device *__cil_tmp17 ;
 7368  struct device  const  *__cil_tmp18 ;
 7369
 7370  {
 7371  {
 7372#line 274
 7373  __cil_tmp6 = urb->context;
 7374#line 274
 7375  dev = (struct ems_usb *)__cil_tmp6;
 7376#line 275
 7377  netdev = dev->netdev;
 7378#line 278
 7379  tmp___7 = netif_device_present(netdev);
 7380  }
 7381#line 278
 7382  if (tmp___7) {
 7383
 7384  } else {
 7385#line 279
 7386    return;
 7387  }
 7388  {
 7389#line 282
 7390  __cil_tmp7 = urb->status;
 7391#line 282
 7392  if (__cil_tmp7 == 0) {
 7393#line 282
 7394    goto case_0;
 7395  } else {
 7396    {
 7397#line 286
 7398    __cil_tmp8 = urb->status;
 7399#line 286
 7400    if (__cil_tmp8 == -104) {
 7401#line 286
 7402      goto case_neg_104;
 7403    } else {
 7404      {
 7405#line 287
 7406      __cil_tmp9 = urb->status;
 7407#line 287
 7408      if (__cil_tmp9 == -2) {
 7409#line 287
 7410        goto case_neg_104;
 7411      } else {
 7412        {
 7413#line 288
 7414        __cil_tmp10 = urb->status;
 7415#line 288
 7416        if (__cil_tmp10 == -108) {
 7417#line 288
 7418          goto case_neg_104;
 7419        } else {
 7420#line 291
 7421          goto switch_default;
 7422#line 281
 7423          if (0) {
 7424            case_0: 
 7425#line 283
 7426            __cil_tmp11 = dev->intr_in_buffer;
 7427#line 283
 7428            __cil_tmp12 = __cil_tmp11 + 1;
 7429#line 283
 7430            __cil_tmp13 = *__cil_tmp12;
 7431#line 283
 7432            dev->free_slots = (unsigned int )__cil_tmp13;
 7433#line 284
 7434            goto switch_break;
 7435            case_neg_104: 
 7436#line 289
 7437            return;
 7438            switch_default: 
 7439            {
 7440#line 292
 7441            __cil_tmp14 = netdev->dev.parent;
 7442#line 292
 7443            __cil_tmp15 = (struct device  const  *)__cil_tmp14;
 7444#line 292
 7445            __cil_tmp16 = urb->status;
 7446#line 292
 7447            _dev_info(__cil_tmp15, "Rx interrupt aborted %d\n", __cil_tmp16);
 7448            }
 7449#line 294
 7450            goto switch_break;
 7451          } else {
 7452            switch_break: ;
 7453          }
 7454        }
 7455        }
 7456      }
 7457      }
 7458    }
 7459    }
 7460  }
 7461  }
 7462  {
 7463#line 297
 7464  err = usb_submit_urb(urb, 32U);
 7465  }
 7466#line 299
 7467  if (err == -19) {
 7468    {
 7469#line 300
 7470    netif_device_detach(netdev);
 7471    }
 7472  } else
 7473#line 301
 7474  if (err) {
 7475    {
 7476#line 302
 7477    __cil_tmp17 = netdev->dev.parent;
 7478#line 302
 7479    __cil_tmp18 = (struct device  const  *)__cil_tmp17;
 7480#line 302
 7481    dev_err(__cil_tmp18, "failed resubmitting intr urb: %d\n", err);
 7482    }
 7483  } else {
 7484
 7485  }
 7486#line 304
 7487  return;
 7488}
 7489}
 7490#line 306 "/anthill/stuff/tacas-comp/work/current--X--drivers/net/can/usb/ems_usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/net/can/usb/ems_usb.c.common.c"
 7491static void ems_usb_rx_can_msg(struct ems_usb *dev , struct ems_cpc_msg *msg ) 
 7492{ struct can_frame *cf ;
 7493  struct sk_buff *skb ;
 7494  int i ;
 7495  struct net_device_stats *stats ;
 7496  __u8 __min1 ;
 7497  __u8 __min2 ;
 7498  int tmp___7 ;
 7499  struct net_device *__cil_tmp10 ;
 7500  struct net_device *__cil_tmp11 ;
 7501  void *__cil_tmp12 ;
 7502  unsigned long __cil_tmp13 ;
 7503  unsigned long __cil_tmp14 ;
 7504  u8 __cil_tmp15 ;
 7505  int __cil_tmp16 ;
 7506  int __cil_tmp17 ;
 7507  int __cil_tmp18 ;
 7508  int __cil_tmp19 ;
 7509  u8 __cil_tmp20 ;
 7510  int __cil_tmp21 ;
 7511  canid_t __cil_tmp22 ;
 7512  u8 __cil_tmp23 ;
 7513  int __cil_tmp24 ;
 7514  canid_t __cil_tmp25 ;
 7515  u8 __cil_tmp26 ;
 7516  int __cil_tmp27 ;
 7517  canid_t __cil_tmp28 ;
 7518  u8 __cil_tmp29 ;
 7519  int __cil_tmp30 ;
 7520  canid_t __cil_tmp31 ;
 7521  __u8 __cil_tmp32 ;
 7522  int __cil_tmp33 ;
 7523  unsigned long __cil_tmp34 ;
 7524  __u8 __cil_tmp35 ;
 7525  unsigned long __cil_tmp36 ;
 7526  unsigned long __cil_tmp37 ;
 7527
 7528  {
 7529  {
 7530#line 311
 7531  __cil_tmp10 = dev->netdev;
 7532#line 311
 7533  stats = & __cil_tmp10->stats;
 7534#line 313
 7535  __cil_tmp11 = dev->netdev;
 7536#line 313
 7537  skb = alloc_can_skb(__cil_tmp11, & cf);
 7538  }
 7539  {
 7540#line 314
 7541  __cil_tmp12 = (void *)0;
 7542#line 314
 7543  __cil_tmp13 = (unsigned long )__cil_tmp12;
 7544#line 314
 7545  __cil_tmp14 = (unsigned long )skb;
 7546#line 314
 7547  if (__cil_tmp14 == __cil_tmp13) {
 7548#line 315
 7549    return;
 7550  } else {
 7551
 7552  }
 7553  }
 7554#line 317
 7555  cf->can_id = msg->msg.can_msg.id;
 7556#line 318
 7557  __cil_tmp15 = msg->msg.can_msg.length;
 7558#line 318
 7559  __cil_tmp16 = (int )__cil_tmp15;
 7560#line 318
 7561  __cil_tmp17 = __cil_tmp16 & 15;
 7562#line 318
 7563  __min1 = (__u8 )__cil_tmp17;
 7564#line 318
 7565  __min2 = (__u8 )8;
 7566  {
 7567#line 318
 7568  __cil_tmp18 = (int )__min2;
 7569#line 318
 7570  __cil_tmp19 = (int )__min1;
 7571#line 318
 7572  if (__cil_tmp19 < __cil_tmp18) {
 7573#line 318
 7574    tmp___7 = (int )__min1;
 7575  } else {
 7576#line 318
 7577    tmp___7 = (int )__min2;
 7578  }
 7579  }
 7580#line 318
 7581  cf->can_dlc = (__u8 )tmp___7;
 7582  {
 7583#line 320
 7584  __cil_tmp20 = msg->type;
 7585#line 320
 7586  __cil_tmp21 = (int )__cil_tmp20;
 7587#line 320
 7588  if (__cil_tmp21 == 16) {
 7589#line 322
 7590    __cil_tmp22 = cf->can_id;
 7591#line 322
 7592    cf->can_id = __cil_tmp22 | 2147483648U;
 7593  } else {
 7594    {
 7595#line 320
 7596    __cil_tmp23 = msg->type;
 7597#line 320
 7598    __cil_tmp24 = (int )__cil_tmp23;
 7599#line 320
 7600    if (__cil_tmp24 == 17) {
 7601#line 322
 7602      __cil_tmp25 = cf->can_id;
 7603#line 322
 7604      cf->can_id = __cil_tmp25 | 2147483648U;
 7605    } else {
 7606
 7607    }
 7608    }
 7609  }
 7610  }
 7611  {
 7612#line 324
 7613  __cil_tmp26 = msg->type;
 7614#line 324
 7615  __cil_tmp27 = (int )__cil_tmp26;
 7616#line 324
 7617  if (__cil_tmp27 == 8) {
 7618#line 326
 7619    __cil_tmp28 = cf->can_id;
 7620#line 326
 7621    cf->can_id = __cil_tmp28 | 1073741824U;
 7622  } else {
 7623    {
 7624#line 324
 7625    __cil_tmp29 = msg->type;
 7626#line 324
 7627    __cil_tmp30 = (int )__cil_tmp29;
 7628#line 324
 7629    if (__cil_tmp30 == 17) {
 7630#line 326
 7631      __cil_tmp31 = cf->can_id;
 7632#line 326
 7633      cf->can_id = __cil_tmp31 | 1073741824U;
 7634    } else {
 7635#line 328
 7636      i = 0;
 7637      {
 7638#line 328
 7639      while (1) {
 7640        while_continue: /* CIL Label */ ;
 7641
 7642        {
 7643#line 328
 7644        __cil_tmp32 = cf->can_dlc;
 7645#line 328
 7646        __cil_tmp33 = (int )__cil_tmp32;
 7647#line 328
 7648        if (i < __cil_tmp33) {
 7649
 7650        } else {
 7651#line 328
 7652          goto while_break;
 7653        }
 7654        }
 7655#line 329
 7656        cf->data[i] = msg->msg.can_msg.msg[i];
 7657#line 328
 7658        i = i + 1;
 7659      }
 7660      while_break___0: /* CIL Label */ ;
 7661      }
 7662
 7663      while_break: ;
 7664    }
 7665    }
 7666  }
 7667  }
 7668  {
 7669#line 332
 7670  netif_rx(skb);
 7671#line 334
 7672  __cil_tmp34 = stats->rx_packets;
 7673#line 334
 7674  stats->rx_packets = __cil_tmp34 + 1UL;
 7675#line 335
 7676  __cil_tmp35 = cf->can_dlc;
 7677#line 335
 7678  __cil_tmp36 = (unsigned long )__cil_tmp35;
 7679#line 335
 7680  __cil_tmp37 = stats->rx_bytes;
 7681#line 335
 7682  stats->rx_bytes = __cil_tmp37 + __cil_tmp36;
 7683  }
 7684#line 336
 7685  return;
 7686}
 7687}
 7688#line 338 "/anthill/stuff/tacas-comp/work/current--X--drivers/net/can/usb/ems_usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/net/can/usb/ems_usb.c.common.c"
 7689static void ems_usb_rx_err(struct ems_usb *dev , struct ems_cpc_msg *msg ) 
 7690{ struct can_frame *cf ;
 7691  struct sk_buff *skb ;
 7692  struct net_device_stats *stats ;
 7693  u8 state ;
 7694  u8 ecc ;
 7695  u8 txerr ;
 7696  u8 rxerr ;
 7697  struct net_device *__cil_tmp10 ;
 7698  struct net_device *__cil_tmp11 ;
 7699  void *__cil_tmp12 ;
 7700  unsigned long __cil_tmp13 ;
 7701  unsigned long __cil_tmp14 ;
 7702  u8 __cil_tmp15 ;
 7703  int __cil_tmp16 ;
 7704  int __cil_tmp17 ;
 7705  canid_t __cil_tmp18 ;
 7706  struct net_device *__cil_tmp19 ;
 7707  int __cil_tmp20 ;
 7708  __u32 __cil_tmp21 ;
 7709  __u32 __cil_tmp22 ;
 7710  u8 __cil_tmp23 ;
 7711  int __cil_tmp24 ;
 7712  __u32 __cil_tmp25 ;
 7713  unsigned long __cil_tmp26 ;
 7714  canid_t __cil_tmp27 ;
 7715  int __cil_tmp28 ;
 7716  int __cil_tmp29 ;
 7717  int __cil_tmp30 ;
 7718  int __cil_tmp31 ;
 7719  int __cil_tmp32 ;
 7720  int __cil_tmp33 ;
 7721  __u8 __cil_tmp34 ;
 7722  int __cil_tmp35 ;
 7723  int __cil_tmp36 ;
 7724  __u8 __cil_tmp37 ;
 7725  int __cil_tmp38 ;
 7726  int __cil_tmp39 ;
 7727  __u8 __cil_tmp40 ;
 7728  int __cil_tmp41 ;
 7729  int __cil_tmp42 ;
 7730  __u8 __cil_tmp43 ;
 7731  int __cil_tmp44 ;
 7732  int __cil_tmp45 ;
 7733  int __cil_tmp46 ;
 7734  int __cil_tmp47 ;
 7735  int __cil_tmp48 ;
 7736  __u8 __cil_tmp49 ;
 7737  int __cil_tmp50 ;
 7738  int __cil_tmp51 ;
 7739  enum can_state __cil_tmp52 ;
 7740  unsigned int __cil_tmp53 ;
 7741  enum can_state __cil_tmp54 ;
 7742  unsigned int __cil_tmp55 ;
 7743  int __cil_tmp56 ;
 7744  int __cil_tmp57 ;
 7745  u8 __cil_tmp58 ;
 7746  int __cil_tmp59 ;
 7747  canid_t __cil_tmp60 ;
 7748  unsigned long __cil_tmp61 ;
 7749  unsigned long __cil_tmp62 ;
 7750  unsigned long __cil_tmp63 ;
 7751  __u8 __cil_tmp64 ;
 7752  unsigned long __cil_tmp65 ;
 7753  unsigned long __cil_tmp66 ;
 7754
 7755  {
 7756  {
 7757#line 342
 7758  __cil_tmp10 = dev->netdev;
 7759#line 342
 7760  stats = & __cil_tmp10->stats;
 7761#line 344
 7762  __cil_tmp11 = dev->netdev;
 7763#line 344
 7764  skb = alloc_can_err_skb(__cil_tmp11, & cf);
 7765  }
 7766  {
 7767#line 345
 7768  __cil_tmp12 = (void *)0;
 7769#line 345
 7770  __cil_tmp13 = (unsigned long )__cil_tmp12;
 7771#line 345
 7772  __cil_tmp14 = (unsigned long )skb;
 7773#line 345
 7774  if (__cil_tmp14 == __cil_tmp13) {
 7775#line 346
 7776    return;
 7777  } else {
 7778
 7779  }
 7780  }
 7781  {
 7782#line 348
 7783  __cil_tmp15 = msg->type;
 7784#line 348
 7785  __cil_tmp16 = (int )__cil_tmp15;
 7786#line 348
 7787  if (__cil_tmp16 == 14) {
 7788#line 349
 7789    state = msg->msg.can_state;
 7790    {
 7791#line 351
 7792    __cil_tmp17 = (int )state;
 7793#line 351
 7794    if (__cil_tmp17 & 128) {
 7795      {
 7796#line 352
 7797      dev->can.state = (enum can_state )3;
 7798#line 353
 7799      __cil_tmp18 = cf->can_id;
 7800#line 353
 7801      cf->can_id = __cil_tmp18 | 64U;
 7802#line 355
 7803      __cil_tmp19 = dev->netdev;
 7804#line 355
 7805      can_bus_off(__cil_tmp19);
 7806      }
 7807    } else {
 7808      {
 7809#line 356
 7810      __cil_tmp20 = (int )state;
 7811#line 356
 7812      if (__cil_tmp20 & 64) {
 7813#line 357
 7814        dev->can.state = (enum can_state )1;
 7815#line 358
 7816        __cil_tmp21 = dev->can.can_stats.error_warning;
 7817#line 358
 7818        dev->can.can_stats.error_warning = __cil_tmp21 + 1U;
 7819      } else {
 7820#line 360
 7821        dev->can.state = (enum can_state )0;
 7822#line 361
 7823        __cil_tmp22 = dev->can.can_stats.error_passive;
 7824#line 361
 7825        dev->can.can_stats.error_passive = __cil_tmp22 + 1U;
 7826      }
 7827      }
 7828    }
 7829    }
 7830  } else {
 7831    {
 7832#line 363
 7833    __cil_tmp23 = msg->type;
 7834#line 363
 7835    __cil_tmp24 = (int )__cil_tmp23;
 7836#line 363
 7837    if (__cil_tmp24 == 23) {
 7838#line 364
 7839      ecc = msg->msg.error.cc.regs.sja1000.ecc;
 7840#line 365
 7841      txerr = msg->msg.error.cc.regs.sja1000.txerr;
 7842#line 366
 7843      rxerr = msg->msg.error.cc.regs.sja1000.rxerr;
 7844#line 369
 7845      __cil_tmp25 = dev->can.can_stats.bus_error;
 7846#line 369
 7847      dev->can.can_stats.bus_error = __cil_tmp25 + 1U;
 7848#line 370
 7849      __cil_tmp26 = stats->rx_errors;
 7850#line 370
 7851      stats->rx_errors = __cil_tmp26 + 1UL;
 7852#line 372
 7853      __cil_tmp27 = cf->can_id;
 7854#line 372
 7855      cf->can_id = __cil_tmp27 | 136U;
 7856      {
 7857#line 375
 7858      __cil_tmp28 = (int )ecc;
 7859#line 375
 7860      __cil_tmp29 = __cil_tmp28 & 192;
 7861#line 375
 7862      if (__cil_tmp29 == 0) {
 7863#line 375
 7864        goto case_0;
 7865      } else {
 7866        {
 7867#line 378
 7868        __cil_tmp30 = (int )ecc;
 7869#line 378
 7870        __cil_tmp31 = __cil_tmp30 & 192;
 7871#line 378
 7872        if (__cil_tmp31 == 64) {
 7873#line 378
 7874          goto case_64;
 7875        } else {
 7876          {
 7877#line 381
 7878          __cil_tmp32 = (int )ecc;
 7879#line 381
 7880          __cil_tmp33 = __cil_tmp32 & 192;
 7881#line 381
 7882          if (__cil_tmp33 == 128) {
 7883#line 381
 7884            goto case_128;
 7885          } else {
 7886#line 384
 7887            goto switch_default;
 7888#line 374
 7889            if (0) {
 7890              case_0: 
 7891#line 376
 7892              __cil_tmp34 = cf->data[2];
 7893#line 376
 7894              __cil_tmp35 = (int )__cil_tmp34;
 7895#line 376
 7896              __cil_tmp36 = __cil_tmp35 | 1;
 7897#line 376
 7898              cf->data[2] = (__u8 )__cil_tmp36;
 7899#line 377
 7900              goto switch_break;
 7901              case_64: 
 7902#line 379
 7903              __cil_tmp37 = cf->data[2];
 7904#line 379
 7905              __cil_tmp38 = (int )__cil_tmp37;
 7906#line 379
 7907              __cil_tmp39 = __cil_tmp38 | 2;
 7908#line 379
 7909              cf->data[2] = (__u8 )__cil_tmp39;
 7910#line 380
 7911              goto switch_break;
 7912              case_128: 
 7913#line 382
 7914              __cil_tmp40 = cf->data[2];
 7915#line 382
 7916              __cil_tmp41 = (int )__cil_tmp40;
 7917#line 382
 7918              __cil_tmp42 = __cil_tmp41 | 4;
 7919#line 382
 7920              cf->data[2] = (__u8 )__cil_tmp42;
 7921#line 383
 7922              goto switch_break;
 7923              switch_default: 
 7924#line 385
 7925              __cil_tmp43 = cf->data[2];
 7926#line 385
 7927              __cil_tmp44 = (int )__cil_tmp43;
 7928#line 385
 7929              cf->data[2] = (__u8 )__cil_tmp44;
 7930#line 386
 7931              __cil_tmp45 = (int )ecc;
 7932#line 386
 7933              __cil_tmp46 = __cil_tmp45 & 31;
 7934#line 386
 7935              cf->data[3] = (__u8 )__cil_tmp46;
 7936#line 387
 7937              goto switch_break;
 7938            } else {
 7939              switch_break: ;
 7940            }
 7941          }
 7942          }
 7943        }
 7944        }
 7945      }
 7946      }
 7947      {
 7948#line 391
 7949      __cil_tmp47 = (int )ecc;
 7950#line 391
 7951      __cil_tmp48 = __cil_tmp47 & 32;
 7952#line 391
 7953      if (__cil_tmp48 == 0) {
 7954#line 392
 7955        __cil_tmp49 = cf->data[2];
 7956#line 392
 7957        __cil_tmp50 = (int )__cil_tmp49;
 7958#line 392
 7959        __cil_tmp51 = __cil_tmp50 | 128;
 7960#line 392
 7961        cf->data[2] = (__u8 )__cil_tmp51;
 7962      } else {
 7963
 7964      }
 7965      }
 7966      {
 7967#line 394
 7968      __cil_tmp52 = dev->can.state;
 7969#line 394
 7970      __cil_tmp53 = (unsigned int )__cil_tmp52;
 7971#line 394
 7972      if (__cil_tmp53 == 1U) {
 7973#line 394
 7974        goto _L;
 7975      } else {
 7976        {
 7977#line 394
 7978        __cil_tmp54 = dev->can.state;
 7979#line 394
 7980        __cil_tmp55 = (unsigned int )__cil_tmp54;
 7981#line 394
 7982        if (__cil_tmp55 == 2U) {
 7983          _L: 
 7984          {
 7985#line 396
 7986          __cil_tmp56 = (int )rxerr;
 7987#line 396
 7988          __cil_tmp57 = (int )txerr;
 7989#line 396
 7990          if (__cil_tmp57 > __cil_tmp56) {
 7991#line 396
 7992            cf->data[1] = (__u8 )32;
 7993          } else {
 7994#line 396
 7995            cf->data[1] = (__u8 )16;
 7996          }
 7997          }
 7998        } else {
 7999
 8000        }
 8001        }
 8002      }
 8003      }
 8004    } else {
 8005      {
 8006#line 399
 8007      __cil_tmp58 = msg->type;
 8008#line 399
 8009      __cil_tmp59 = (int )__cil_tmp58;
 8010#line 399
 8011      if (__cil_tmp59 == 21) {
 8012#line 400
 8013        __cil_tmp60 = cf->can_id;
 8014#line 400
 8015        cf->can_id = __cil_tmp60 | 4U;
 8016#line 401
 8017        cf->data[1] = (__u8 )1;
 8018#line 403
 8019        __cil_tmp61 = stats->rx_over_errors;
 8020#line 403
 8021        stats->rx_over_errors = __cil_tmp61 + 1UL;
 8022#line 404
 8023        __cil_tmp62 = stats->rx_errors;
 8024#line 404
 8025        stats->rx_errors = __cil_tmp62 + 1UL;
 8026      } else {
 8027
 8028      }
 8029      }
 8030    }
 8031    }
 8032  }
 8033  }
 8034  {
 8035#line 407
 8036  netif_rx(skb);
 8037#line 409
 8038  __cil_tmp63 = stats->rx_packets;
 8039#line 409
 8040  stats->rx_packets = __cil_tmp63 + 1UL;
 8041#line 410
 8042  __cil_tmp64 = cf->can_dlc;
 8043#line 410
 8044  __cil_tmp65 = (unsigned long )__cil_tmp64;
 8045#line 410
 8046  __cil_tmp66 = stats->rx_bytes;
 8047#line 410
 8048  stats->rx_bytes = __cil_tmp66 + __cil_tmp65;
 8049  }
 8050#line 411
 8051  return;
 8052}
 8053}
 8054#line 416 "/anthill/stuff/tacas-comp/work/current--X--drivers/net/can/usb/ems_usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/net/can/usb/ems_usb.c.common.c"
 8055static void ems_usb_read_bulk_callback(struct urb *urb ) 
 8056{ struct ems_usb *dev ;
 8057  struct net_device *netdev ;
 8058  int retval ;
 8059  int tmp___7 ;
 8060  struct ems_cpc_msg *msg ;
 8061  u8 *ibuf ;
 8062  u8 msg_count ;
 8063  u8 again ;
 8064  u8 start ;
 8065  unsigned int tmp___8 ;
 8066  void *__cil_tmp12 ;
 8067  int __cil_tmp13 ;
 8068  int __cil_tmp14 ;
 8069  struct device *__cil_tmp15 ;
 8070  struct device  const  *__cil_tmp16 ;
 8071  int __cil_tmp17 ;
 8072  u32 __cil_tmp18 ;
 8073  void *__cil_tmp19 ;
 8074  u8 *__cil_tmp20 ;
 8075  u8 __cil_tmp21 ;
 8076  int __cil_tmp22 ;
 8077  int __cil_tmp23 ;
 8078  u8 *__cil_tmp24 ;
 8079  u8 __cil_tmp25 ;
 8080  int __cil_tmp26 ;
 8081  int __cil_tmp27 ;
 8082  int __cil_tmp28 ;
 8083  u8 *__cil_tmp29 ;
 8084  u8 __cil_tmp30 ;
 8085  int __cil_tmp31 ;
 8086  u8 __cil_tmp32 ;
 8087  int __cil_tmp33 ;
 8088  u8 __cil_tmp34 ;
 8089  int __cil_tmp35 ;
 8090  u8 __cil_tmp36 ;
 8091  int __cil_tmp37 ;
 8092  u8 __cil_tmp38 ;
 8093  int __cil_tmp39 ;
 8094  u8 __cil_tmp40 ;
 8095  int __cil_tmp41 ;
 8096  u8 __cil_tmp42 ;
 8097  int __cil_tmp43 ;
 8098  u8 __cil_tmp44 ;
 8099  int __cil_tmp45 ;
 8100  int __cil_tmp46 ;
 8101  int __cil_tmp47 ;
 8102  int __cil_tmp48 ;
 8103  int __cil_tmp49 ;
 8104  int __cil_tmp50 ;
 8105  u32 __cil_tmp51 ;
 8106  u32 __cil_tmp52 ;
 8107  struct device *__cil_tmp53 ;
 8108  struct device  const  *__cil_tmp54 ;
 8109  struct usb_device *__cil_tmp55 ;
 8110  struct usb_device *__cil_tmp56 ;
 8111  int __cil_tmp57 ;
 8112  unsigned int __cil_tmp58 ;
 8113  unsigned int __cil_tmp59 ;
 8114  unsigned int __cil_tmp60 ;
 8115  void *__cil_tmp61 ;
 8116  void *__cil_tmp62 ;
 8117  struct device *__cil_tmp63 ;
 8118  struct device  const  *__cil_tmp64 ;
 8119
 8120  {
 8121  {
 8122#line 418
 8123  __cil_tmp12 = urb->context;
 8124#line 418
 8125  dev = (struct ems_usb *)__cil_tmp12;
 8126#line 422
 8127  netdev = dev->netdev;
 8128#line 424
 8129  tmp___7 = netif_device_present(netdev);
 8130  }
 8131#line 424
 8132  if (tmp___7) {
 8133
 8134  } else {
 8135#line 425
 8136    return;
 8137  }
 8138  {
 8139#line 428
 8140  __cil_tmp13 = urb->status;
 8141#line 428
 8142  if (__cil_tmp13 == 0) {
 8143#line 428
 8144    goto case_0;
 8145  } else {
 8146    {
 8147#line 431
 8148    __cil_tmp14 = urb->status;
 8149#line 431
 8150    if (__cil_tmp14 == -2) {
 8151#line 431
 8152      goto case_neg_2;
 8153    } else {
 8154#line 434
 8155      goto switch_default;
 8156#line 427
 8157      if (0) {
 8158        case_0: 
 8159#line 429
 8160        goto switch_break;
 8161        case_neg_2: 
 8162#line 432
 8163        return;
 8164        switch_default: 
 8165        {
 8166#line 435
 8167        __cil_tmp15 = netdev->dev.parent;
 8168#line 435
 8169        __cil_tmp16 = (struct device  const  *)__cil_tmp15;
 8170#line 435
 8171        __cil_tmp17 = urb->status;
 8172#line 435
 8173        _dev_info(__cil_tmp16, "Rx URB aborted (%d)\n", __cil_tmp17);
 8174        }
 8175#line 437
 8176        goto resubmit_urb;
 8177      } else {
 8178        switch_break: ;
 8179      }
 8180    }
 8181    }
 8182  }
 8183  }
 8184  {
 8185#line 440
 8186  __cil_tmp18 = urb->actual_length;
 8187#line 440
 8188  if (__cil_tmp18 > 4U) {
 8189#line 442
 8190    __cil_tmp19 = urb->transfer_buffer;
 8191#line 442
 8192    ibuf = (u8 *)__cil_tmp19;
 8193#line 445
 8194    __cil_tmp20 = ibuf + 0;
 8195#line 445
 8196    __cil_tmp21 = *__cil_tmp20;
 8197#line 445
 8198    __cil_tmp22 = (int )__cil_tmp21;
 8199#line 445
 8200    __cil_tmp23 = __cil_tmp22 & -129;
 8201#line 445
 8202    msg_count = (u8 )__cil_tmp23;
 8203#line 446
 8204    __cil_tmp24 = ibuf + 0;
 8205#line 446
 8206    __cil_tmp25 = *__cil_tmp24;
 8207#line 446
 8208    __cil_tmp26 = (int )__cil_tmp25;
 8209#line 446
 8210    __cil_tmp27 = __cil_tmp26 & 128;
 8211#line 446
 8212    again = (u8 )__cil_tmp27;
 8213#line 448
 8214    start = (u8 )4;
 8215    {
 8216#line 450
 8217    while (1) {
 8218      while_continue: /* CIL Label */ ;
 8219
 8220#line 450
 8221      if (msg_count) {
 8222
 8223      } else {
 8224#line 450
 8225        goto while_break;
 8226      }
 8227#line 451
 8228      __cil_tmp28 = (int )start;
 8229#line 451
 8230      __cil_tmp29 = ibuf + __cil_tmp28;
 8231#line 451
 8232      msg = (struct ems_cpc_msg *)__cil_tmp29;
 8233      {
 8234#line 454
 8235      __cil_tmp30 = msg->type;
 8236#line 454
 8237      __cil_tmp31 = (int )__cil_tmp30;
 8238#line 454
 8239      if (__cil_tmp31 == 14) {
 8240#line 454
 8241        goto case_14;
 8242      } else {
 8243        {
 8244#line 459
 8245        __cil_tmp32 = msg->type;
 8246#line 459
 8247        __cil_tmp33 = (int )__cil_tmp32;
 8248#line 459
 8249        if (__cil_tmp33 == 1) {
 8250#line 459
 8251          goto case_1;
 8252        } else {
 8253          {
 8254#line 460
 8255          __cil_tmp34 = msg->type;
 8256#line 460
 8257          __cil_tmp35 = (int )__cil_tmp34;
 8258#line 460
 8259          if (__cil_tmp35 == 16) {
 8260#line 460
 8261            goto case_1;
 8262          } else {
 8263            {
 8264#line 461
 8265            __cil_tmp36 = msg->type;
 8266#line 461
 8267            __cil_tmp37 = (int )__cil_tmp36;
 8268#line 461
 8269            if (__cil_tmp37 == 8) {
 8270#line 461
 8271              goto case_1;
 8272            } else {
 8273              {
 8274#line 462
 8275              __cil_tmp38 = msg->type;
 8276#line 462
 8277              __cil_tmp39 = (int )__cil_tmp38;
 8278#line 462
 8279              if (__cil_tmp39 == 17) {
 8280#line 462
 8281                goto case_1;
 8282              } else {
 8283                {
 8284#line 466
 8285                __cil_tmp40 = msg->type;
 8286#line 466
 8287                __cil_tmp41 = (int )__cil_tmp40;
 8288#line 466
 8289                if (__cil_tmp41 == 23) {
 8290#line 466
 8291                  goto case_23;
 8292                } else {
 8293                  {
 8294#line 471
 8295                  __cil_tmp42 = msg->type;
 8296#line 471
 8297                  __cil_tmp43 = (int )__cil_tmp42;
 8298#line 471
 8299                  if (__cil_tmp43 == 21) {
 8300#line 471
 8301                    goto case_21;
 8302                  } else
 8303#line 453
 8304                  if (0) {
 8305                    case_14: 
 8306                    {
 8307#line 456
 8308                    ems_usb_rx_err(dev, msg);
 8309                    }
 8310#line 457
 8311                    goto switch_break___0;
 8312                    case_1: 
 8313                    {
 8314#line 463
 8315                    ems_usb_rx_can_msg(dev, msg);
 8316                    }
 8317#line 464
 8318                    goto switch_break___0;
 8319                    case_23: 
 8320                    {
 8321#line 468
 8322                    ems_usb_rx_err(dev, msg);
 8323                    }
 8324#line 469
 8325                    goto switch_break___0;
 8326                    case_21: 
 8327                    {
 8328#line 473
 8329                    ems_usb_rx_err(dev, msg);
 8330                    }
 8331#line 474
 8332                    goto switch_break___0;
 8333                  } else {
 8334                    switch_break___0: ;
 8335                  }
 8336                  }
 8337                }
 8338                }
 8339              }
 8340              }
 8341            }
 8342            }
 8343          }
 8344          }
 8345        }
 8346        }
 8347      }
 8348      }
 8349#line 477
 8350      __cil_tmp44 = msg->length;
 8351#line 477
 8352      __cil_tmp45 = (int )__cil_tmp44;
 8353#line 477
 8354      __cil_tmp46 = 11 + __cil_tmp45;
 8355#line 477
 8356      __cil_tmp47 = (int )start;
 8357#line 477
 8358      __cil_tmp48 = __cil_tmp47 + __cil_tmp46;
 8359#line 477
 8360      start = (u8 )__cil_tmp48;
 8361#line 478
 8362      __cil_tmp49 = (int )msg_count;
 8363#line 478
 8364      __cil_tmp50 = __cil_tmp49 - 1;
 8365#line 478
 8366      msg_count = (u8 )__cil_tmp50;
 8367      {
 8368#line 480
 8369      __cil_tmp51 = urb->transfer_buffer_length;
 8370#line 480
 8371      __cil_tmp52 = (u32 )start;
 8372#line 480
 8373      if (__cil_tmp52 > __cil_tmp51) {
 8374        {
 8375#line 481
 8376        __cil_tmp53 = netdev->dev.parent;
 8377#line 481
 8378        __cil_tmp54 = (struct device  const  *)__cil_tmp53;
 8379#line 481
 8380        dev_err(__cil_tmp54, "format error\n");
 8381        }
 8382#line 482
 8383        goto while_break;
 8384      } else {
 8385
 8386      }
 8387      }
 8388    }
 8389    while_break___0: /* CIL Label */ ;
 8390    }
 8391
 8392    while_break: ;
 8393  } else {
 8394
 8395  }
 8396  }
 8397  resubmit_urb: 
 8398  {
 8399#line 488
 8400  __cil_tmp55 = dev->udev;
 8401#line 488
 8402  tmp___8 = __create_pipe(__cil_tmp55, 2U);
 8403#line 488
 8404  __cil_tmp56 = dev->udev;
 8405#line 488
 8406  __cil_tmp57 = 3 << 30;
 8407#line 488
 8408  __cil_tmp58 = (unsigned int )__cil_tmp57;
 8409#line 488
 8410  __cil_tmp59 = __cil_tmp58 | tmp___8;
 8411#line 488
 8412  __cil_tmp60 = __cil_tmp59 | 128U;
 8413#line 488
 8414  __cil_tmp61 = urb->transfer_buffer;
 8415#line 488
 8416  __cil_tmp62 = (void *)dev;
 8417#line 488
 8418  usb_fill_bulk_urb(urb, __cil_tmp56, __cil_tmp60, __cil_tmp61, 64, & ems_usb_read_bulk_callback,
 8419                    __cil_tmp62);
 8420#line 492
 8421  retval = usb_submit_urb(urb, 32U);
 8422  }
 8423#line 494
 8424  if (retval == -19) {
 8425    {
 8426#line 495
 8427    netif_device_detach(netdev);
 8428    }
 8429  } else
 8430#line 496
 8431  if (retval) {
 8432    {
 8433#line 497
 8434    __cil_tmp63 = netdev->dev.parent;
 8435#line 497
 8436    __cil_tmp64 = (struct device  const  *)__cil_tmp63;
 8437#line 497
 8438    dev_err(__cil_tmp64, "failed resubmitting read bulk urb: %d\n", retval);
 8439    }
 8440  } else {
 8441
 8442  }
 8443#line 499
 8444  return;
 8445}
 8446}
 8447#line 504 "/anthill/stuff/tacas-comp/work/current--X--drivers/net/can/usb/ems_usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/net/can/usb/ems_usb.c.common.c"
 8448static void ems_usb_write_bulk_callback(struct urb *urb ) 
 8449{ struct ems_tx_urb_context *context ;
 8450  struct ems_usb *dev ;
 8451  struct net_device *netdev ;
 8452  long tmp___7 ;
 8453  int tmp___8 ;
 8454  int tmp___9 ;
 8455  void *__cil_tmp8 ;
 8456  int __cil_tmp9 ;
 8457  int __cil_tmp10 ;
 8458  int __cil_tmp11 ;
 8459  long __cil_tmp12 ;
 8460  struct usb_device *__cil_tmp13 ;
 8461  u32 __cil_tmp14 ;
 8462  size_t __cil_tmp15 ;
 8463  void *__cil_tmp16 ;
 8464  dma_addr_t __cil_tmp17 ;
 8465  atomic_t *__cil_tmp18 ;
 8466  struct device *__cil_tmp19 ;
 8467  struct device  const  *__cil_tmp20 ;
 8468  int __cil_tmp21 ;
 8469  unsigned long __cil_tmp22 ;
 8470  u8 __cil_tmp23 ;
 8471  unsigned long __cil_tmp24 ;
 8472  unsigned long __cil_tmp25 ;
 8473  u32 __cil_tmp26 ;
 8474  struct net_device  const  *__cil_tmp27 ;
 8475
 8476  {
 8477#line 506
 8478  __cil_tmp8 = urb->context;
 8479#line 506
 8480  context = (struct ems_tx_urb_context *)__cil_tmp8;
 8481  {
 8482#line 510
 8483  while (1) {
 8484    while_continue: /* CIL Label */ ;
 8485    {
 8486#line 510
 8487    __cil_tmp9 = ! context;
 8488#line 510
 8489    __cil_tmp10 = ! __cil_tmp9;
 8490#line 510
 8491    __cil_tmp11 = ! __cil_tmp10;
 8492#line 510
 8493    __cil_tmp12 = (long )__cil_tmp11;
 8494#line 510
 8495    tmp___7 = __builtin_expect(__cil_tmp12, 0L);
 8496    }
 8497#line 510
 8498    if (tmp___7) {
 8499      {
 8500#line 510
 8501      while (1) {
 8502        while_continue___0: /* CIL Label */ ;
 8503#line 510
 8504        __asm__  volatile   ("1:\tud2\n"
 8505                             ".pushsection __bug_table,\"a\"\n"
 8506                             "2:\t.long 1b - 2b, %c0 - 2b\n"
 8507                             "\t.word %c1, 0\n"
 8508                             "\t.org 2b+%c2\n"
 8509                             ".popsection": : "i" ("/anthill/stuff/tacas-comp/work/current--X--drivers/net/can/usb/ems_usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/net/can/usb/ems_usb.c.common.c"),
 8510                             "i" (510), "i" (12UL));
 8511        {
 8512#line 510
 8513        while (1) {
 8514          while_continue___1: /* CIL Label */ ;
 8515
 8516        }
 8517        while_break___3: /* CIL Label */ ;
 8518        }
 8519
 8520#line 510
 8521        goto while_break___0;
 8522      }
 8523      while_break___2: /* CIL Label */ ;
 8524      }
 8525
 8526      while_break___0: ;
 8527    } else {
 8528
 8529    }
 8530#line 510
 8531    goto while_break;
 8532  }
 8533  while_break___1: /* CIL Label */ ;
 8534  }
 8535
 8536  while_break: 
 8537  {
 8538#line 512
 8539  dev = context->dev;
 8540#line 513
 8541  netdev = dev->netdev;
 8542#line 516
 8543  __cil_tmp13 = urb->dev;
 8544#line 516
 8545  __cil_tmp14 = urb->transfer_buffer_length;
 8546#line 516
 8547  __cil_tmp15 = (size_t )__cil_tmp14;
 8548#line 516
 8549  __cil_tmp16 = urb->transfer_buffer;
 8550#line 516
 8551  __cil_tmp17 = urb->transfer_dma;
 8552#line 516
 8553  usb_free_coherent(__cil_tmp13, __cil_tmp15, __cil_tmp16, __cil_tmp17);
 8554#line 519
 8555  __cil_tmp18 = & dev->active_tx_urbs;
 8556#line 519
 8557  atomic_dec(__cil_tmp18);
 8558#line 521
 8559  tmp___8 = netif_device_present(netdev);
 8560  }
 8561#line 521
 8562  if (tmp___8) {
 8563
 8564  } else {
 8565#line 522
 8566    return;
 8567  }
 8568#line 524
 8569  if (urb->status) {
 8570    {
 8571#line 525
 8572    __cil_tmp19 = netdev->dev.parent;
 8573#line 525
 8574    __cil_tmp20 = (struct device  const  *)__cil_tmp19;
 8575#line 525
 8576    __cil_tmp21 = urb->status;
 8577#line 525
 8578    _dev_info(__cil_tmp20, "Tx URB aborted (%d)\n", __cil_tmp21);
 8579    }
 8580  } else {
 8581
 8582  }
 8583  {
 8584#line 528
 8585  netdev->trans_start = (unsigned long )jiffies;
 8586#line 531
 8587  __cil_tmp22 = netdev->stats.tx_packets;
 8588#line 531
 8589  netdev->stats.tx_packets = __cil_tmp22 + 1UL;
 8590#line 532
 8591  __cil_tmp23 = context->dlc;
 8592#line 532
 8593  __cil_tmp24 = (unsigned long )__cil_tmp23;
 8594#line 532
 8595  __cil_tmp25 = netdev->stats.tx_bytes;
 8596#line 532
 8597  netdev->stats.tx_bytes = __cil_tmp25 + __cil_tmp24;
 8598#line 534
 8599  __cil_tmp26 = context->echo_index;
 8600#line 534
 8601  can_get_echo_skb(netdev, __cil_tmp26);
 8602#line 537
 8603  context->echo_index = (u32 )10;
 8604#line 539
 8605  __cil_tmp27 = (struct net_device  const  *)netdev;
 8606#line 539
 8607  tmp___9 = netif_queue_stopped(__cil_tmp27);
 8608  }
 8609#line 539
 8610  if (tmp___9) {
 8611    {
 8612#line 540
 8613    netif_wake_queue(netdev);
 8614    }
 8615  } else {
 8616
 8617  }
 8618#line 541
 8619  return;
 8620}
 8621}
 8622#line 546 "/anthill/stuff/tacas-comp/work/current--X--drivers/net/can/usb/ems_usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/net/can/usb/ems_usb.c.common.c"
 8623static int ems_usb_command_msg(struct ems_usb *dev , struct ems_cpc_msg *msg ) 
 8624{ int actual_length ;
 8625  size_t __len ;
 8626  void *__ret ;
 8627  unsigned int tmp___7 ;
 8628  int tmp___8 ;
 8629  u8 __cil_tmp8 ;
 8630  int __cil_tmp9 ;
 8631  int __cil_tmp10 ;
 8632  u8 *__cil_tmp11 ;
 8633  u8 *__cil_tmp12 ;
 8634  void *__cil_tmp13 ;
 8635  void const   *__cil_tmp14 ;
 8636  u8 *__cil_tmp15 ;
 8637  u8 *__cil_tmp16 ;
 8638  void *__cil_tmp17 ;
 8639  size_t __cil_tmp18 ;
 8640  struct usb_device *__cil_tmp19 ;
 8641  struct usb_device *__cil_tmp20 ;
 8642  int __cil_tmp21 ;
 8643  unsigned int __cil_tmp22 ;
 8644  unsigned int __cil_tmp23 ;
 8645  u8 *__cil_tmp24 ;
 8646  u8 *__cil_tmp25 ;
 8647  void *__cil_tmp26 ;
 8648  u8 __cil_tmp27 ;
 8649  int __cil_tmp28 ;
 8650  int __cil_tmp29 ;
 8651  int __cil_tmp30 ;
 8652
 8653  {
 8654  {
 8655#line 551
 8656  __cil_tmp8 = msg->length;
 8657#line 551
 8658  __cil_tmp9 = (int )__cil_tmp8;
 8659#line 551
 8660  __cil_tmp10 = __cil_tmp9 + 11;
 8661#line 551
 8662  __len = (size_t )__cil_tmp10;
 8663#line 551
 8664  __cil_tmp11 = dev->tx_msg_buffer;
 8665#line 551
 8666  __cil_tmp12 = __cil_tmp11 + 4;
 8667#line 551
 8668  __cil_tmp13 = (void *)__cil_tmp12;
 8669#line 551
 8670  __cil_tmp14 = (void const   *)msg;
 8671#line 551
 8672  __ret = __builtin_memcpy(__cil_tmp13, __cil_tmp14, __len);
 8673#line 555
 8674  __cil_tmp15 = dev->tx_msg_buffer;
 8675#line 555
 8676  __cil_tmp16 = __cil_tmp15 + 0;
 8677#line 555
 8678  __cil_tmp17 = (void *)__cil_tmp16;
 8679#line 555
 8680  __cil_tmp18 = (size_t )4;
 8681#line 555
 8682  memset(__cil_tmp17, 0, __cil_tmp18);
 8683#line 557
 8684  __cil_tmp19 = dev->udev;
 8685#line 557
 8686  tmp___7 = __create_pipe(__cil_tmp19, 2U);
 8687#line 557
 8688  __cil_tmp20 = dev->udev;
 8689#line 557
 8690  __cil_tmp21 = 3 << 30;
 8691#line 557
 8692  __cil_tmp22 = (unsigned int )__cil_tmp21;
 8693#line 557
 8694  __cil_tmp23 = __cil_tmp22 | tmp___7;
 8695#line 557
 8696  __cil_tmp24 = dev->tx_msg_buffer;
 8697#line 557
 8698  __cil_tmp25 = __cil_tmp24 + 0;
 8699#line 557
 8700  __cil_tmp26 = (void *)__cil_tmp25;
 8701#line 557
 8702  __cil_tmp27 = msg->length;
 8703#line 557
 8704  __cil_tmp28 = (int )__cil_tmp27;
 8705#line 557
 8706  __cil_tmp29 = __cil_tmp28 + 11;
 8707#line 557
 8708  __cil_tmp30 = __cil_tmp29 + 4;
 8709#line 557
 8710  tmp___8 = usb_bulk_msg(__cil_tmp20, __cil_tmp23, __cil_tmp26, __cil_tmp30, & actual_length,
 8711                         1000);
 8712  }
 8713#line 557
 8714  return (tmp___8);
 8715}
 8716}
 8717#line 566 "/anthill/stuff/tacas-comp/work/current--X--drivers/net/can/usb/ems_usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/net/can/usb/ems_usb.c.common.c"
 8718static int ems_usb_write_mode(struct ems_usb *dev , u8 mode ) 
 8719{ int tmp___7 ;
 8720  struct ems_cpc_msg *__cil_tmp4 ;
 8721
 8722  {
 8723  {
 8724#line 568
 8725  dev->active_params.msg.can_params.cc_params.sja1000.mode = mode;
 8726#line 570
 8727  __cil_tmp4 = & dev->active_params;
 8728#line 570
 8729  tmp___7 = ems_usb_command_msg(dev, __cil_tmp4);
 8730  }
 8731#line 570
 8732  return (tmp___7);
 8733}
 8734}
 8735#line 577 "/anthill/stuff/tacas-comp/work/current--X--drivers/net/can/usb/ems_usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/net/can/usb/ems_usb.c.common.c"
 8736static int ems_usb_control_cmd(struct ems_usb *dev , u8 val ) 
 8737{ struct ems_cpc_msg cmd ;
 8738  int tmp___7 ;
 8739
 8740  {
 8741  {
 8742#line 581
 8743  cmd.type = (u8 )3;
 8744#line 582
 8745  cmd.length = (u8 )12;
 8746#line 584
 8747  cmd.msgid = (u8 )0;
 8748#line 586
 8749  cmd.msg.generic[0] = val;
 8750#line 588
 8751  tmp___7 = ems_usb_command_msg(dev, & cmd);
 8752  }
 8753#line 588
 8754  return (tmp___7);
 8755}
 8756}
 8757#line 594 "/anthill/stuff/tacas-comp/work/current--X--drivers/net/can/usb/ems_usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/net/can/usb/ems_usb.c.common.c"
 8758static int ems_usb_start(struct ems_usb *dev ) 
 8759{ struct net_device *netdev ;
 8760  int err ;
 8761  int i ;
 8762  struct urb *urb ;
 8763  u8 *buf ;
 8764  void *tmp___7 ;
 8765  unsigned int tmp___8 ;
 8766  unsigned int tmp___9 ;
 8767  u8 *__cil_tmp10 ;
 8768  u8 *__cil_tmp11 ;
 8769  void *__cil_tmp12 ;
 8770  void *__cil_tmp13 ;
 8771  struct device *__cil_tmp14 ;
 8772  struct device  const  *__cil_tmp15 ;
 8773  struct usb_device *__cil_tmp16 ;
 8774  size_t __cil_tmp17 ;
 8775  dma_addr_t *__cil_tmp18 ;
 8776  struct device *__cil_tmp19 ;
 8777  struct device  const  *__cil_tmp20 ;
 8778  struct usb_device *__cil_tmp21 ;
 8779  struct usb_device *__cil_tmp22 ;
 8780  int __cil_tmp23 ;
 8781  unsigned int __cil_tmp24 ;
 8782  unsigned int __cil_tmp25 ;
 8783  unsigned int __cil_tmp26 ;
 8784  void *__cil_tmp27 ;
 8785  void *__cil_tmp28 ;
 8786  unsigned int __cil_tmp29 ;
 8787  struct usb_anchor *__cil_tmp30 ;
 8788  struct net_device *__cil_tmp31 ;
 8789  struct usb_device *__cil_tmp32 ;
 8790  size_t __cil_tmp33 ;
 8791  void *__cil_tmp34 ;
 8792  dma_addr_t __cil_tmp35 ;
 8793  struct device *__cil_tmp36 ;
 8794  struct device  const  *__cil_tmp37 ;
 8795  struct device *__cil_tmp38 ;
 8796  struct device  const  *__cil_tmp39 ;
 8797  struct usb_device *__cil_tmp40 ;
 8798  struct urb *__cil_tmp41 ;
 8799  struct usb_device *__cil_tmp42 ;
 8800  int __cil_tmp43 ;
 8801  unsigned int __cil_tmp44 ;
 8802  unsigned int __cil_tmp45 ;
 8803  unsigned int __cil_tmp46 ;
 8804  u8 *__cil_tmp47 ;
 8805  void *__cil_tmp48 ;
 8806  void *__cil_tmp49 ;
 8807  struct urb *__cil_tmp50 ;
 8808  struct net_device *__cil_tmp51 ;
 8809  struct device *__cil_tmp52 ;
 8810  struct device  const  *__cil_tmp53 ;
 8811  u8 __cil_tmp54 ;
 8812  u8 __cil_tmp55 ;
 8813  u8 __cil_tmp56 ;
 8814  u8 __cil_tmp57 ;
 8815  struct net_device *__cil_tmp58 ;
 8816  struct device *__cil_tmp59 ;
 8817  struct device  const  *__cil_tmp60 ;
 8818
 8819  {
 8820#line 596
 8821  netdev = dev->netdev;
 8822#line 599
 8823  __cil_tmp10 = dev->intr_in_buffer;
 8824#line 599
 8825  __cil_tmp11 = __cil_tmp10 + 0;
 8826#line 599
 8827  *__cil_tmp11 = (u8 )0;
 8828#line 600
 8829  dev->free_slots = 15U;
 8830#line 602
 8831  i = 0;
 8832  {
 8833#line 602
 8834  while (1) {
 8835    while_continue: /* CIL Label */ ;
 8836
 8837#line 602
 8838    if (i < 10) {
 8839
 8840    } else {
 8841#line 602
 8842      goto while_break;
 8843    }
 8844    {
 8845#line 603
 8846    __cil_tmp12 = (void *)0;
 8847#line 603
 8848    urb = (struct urb *)__cil_tmp12;
 8849#line 604
 8850    __cil_tmp13 = (void *)0;
 8851#line 604
 8852    buf = (u8 *)__cil_tmp13;
 8853#line 607
 8854    urb = usb_alloc_urb(0, 208U);
 8855    }
 8856#line 608
 8857    if (! urb) {
 8858      {
 8859#line 609
 8860      __cil_tmp14 = netdev->dev.parent;
 8861#line 609
 8862      __cil_tmp15 = (struct device  const  *)__cil_tmp14;
 8863#line 609
 8864      dev_err(__cil_tmp15, "No memory left for URBs\n");
 8865      }
 8866#line 611
 8867      return (-12);
 8868    } else {
 8869
 8870    }
 8871    {
 8872#line 614
 8873    __cil_tmp16 = dev->udev;
 8874#line 614
 8875    __cil_tmp17 = (size_t )64;
 8876#line 614
 8877    __cil_tmp18 = & urb->transfer_dma;
 8878#line 614
 8879    tmp___7 = usb_alloc_coherent(__cil_tmp16, __cil_tmp17, 208U, __cil_tmp18);
 8880#line 614
 8881    buf = (u8 *)tmp___7;
 8882    }
 8883#line 616
 8884    if (! buf) {
 8885      {
 8886#line 617
 8887      __cil_tmp19 = netdev->dev.parent;
 8888#line 617
 8889      __cil_tmp20 = (struct device  const  *)__cil_tmp19;
 8890#line 617
 8891      dev_err(__cil_tmp20, "No memory left for USB buffer\n");
 8892#line 619
 8893      usb_free_urb(urb);
 8894      }
 8895#line 620
 8896      return (-12);
 8897    } else {
 8898
 8899    }
 8900    {
 8901#line 623
 8902    __cil_tmp21 = dev->udev;
 8903#line 623
 8904    tmp___8 = __create_pipe(__cil_tmp21, 2U);
 8905#line 623
 8906    __cil_tmp22 = dev->udev;
 8907#line 623
 8908    __cil_tmp23 = 3 << 30;
 8909#line 623
 8910    __cil_tmp24 = (unsigned int )__cil_tmp23;
 8911#line 623
 8912    __cil_tmp25 = __cil_tmp24 | tmp___8;
 8913#line 623
 8914    __cil_tmp26 = __cil_tmp25 | 128U;
 8915#line 623
 8916    __cil_tmp27 = (void *)buf;
 8917#line 623
 8918    __cil_tmp28 = (void *)dev;
 8919#line 623
 8920    usb_fill_bulk_urb(urb, __cil_tmp22, __cil_tmp26, __cil_tmp27, 64, & ems_usb_read_bulk_callback,
 8921                      __cil_tmp28);
 8922#line 626
 8923    __cil_tmp29 = urb->transfer_flags;
 8924#line 626
 8925    urb->transfer_flags = __cil_tmp29 | 4U;
 8926#line 627
 8927    __cil_tmp30 = & dev->rx_submitted;
 8928#line 627
 8929    usb_anchor_urb(urb, __cil_tmp30);
 8930#line 629
 8931    err = usb_submit_urb(urb, 208U);
 8932    }
 8933#line 630
 8934    if (err) {
 8935#line 631
 8936      if (err == -19) {
 8937        {
 8938#line 632
 8939        __cil_tmp31 = dev->netdev;
 8940#line 632
 8941        netif_device_detach(__cil_tmp31);
 8942        }
 8943      } else {
 8944
 8945      }
 8946      {
 8947#line 634
 8948      usb_unanchor_urb(urb);
 8949#line 635
 8950      __cil_tmp32 = dev->udev;
 8951#line 635
 8952      __cil_tmp33 = (size_t )64;
 8953#line 635
 8954      __cil_tmp34 = (void *)buf;
 8955#line 635
 8956      __cil_tmp35 = urb->transfer_dma;
 8957#line 635
 8958      usb_free_coherent(__cil_tmp32, __cil_tmp33, __cil_tmp34, __cil_tmp35);
 8959      }
 8960#line 637
 8961      goto while_break;
 8962    } else {
 8963
 8964    }
 8965    {
 8966#line 641
 8967    usb_free_urb(urb);
 8968#line 602
 8969    i = i + 1;
 8970    }
 8971  }
 8972  while_break___0: /* CIL Label */ ;
 8973  }
 8974
 8975  while_break: ;
 8976#line 645
 8977  if (i == 0) {
 8978    {
 8979#line 646
 8980    __cil_tmp36 = netdev->dev.parent;
 8981#line 646
 8982    __cil_tmp37 = (struct device  const  *)__cil_tmp36;
 8983#line 646
 8984    dev_warn(__cil_tmp37, "couldn\'t setup read URBs\n");
 8985    }
 8986#line 647
 8987    return (err);
 8988  } else {
 8989
 8990  }
 8991#line 651
 8992  if (i < 10) {
 8993    {
 8994#line 652
 8995    __cil_tmp38 = netdev->dev.parent;
 8996#line 652
 8997    __cil_tmp39 = (struct device  const  *)__cil_tmp38;
 8998#line 652
 8999    dev_warn(__cil_tmp39, "rx performance may be slow\n");
 9000    }
 9001  } else {
 9002
 9003  }
 9004  {
 9005#line 655
 9006  __cil_tmp40 = dev->udev;
 9007#line 655
 9008  tmp___9 = __create_pipe(__cil_tmp40, 1U);
 9009#line 655
 9010  __cil_tmp41 = dev->intr_urb;
 9011#line 655
 9012  __cil_tmp42 = dev->udev;
 9013#line 655
 9014  __cil_tmp43 = 1 << 30;
 9015#line 655
 9016  __cil_tmp44 = (unsigned int )__cil_tmp43;
 9017#line 655
 9018  __cil_tmp45 = __cil_tmp44 | tmp___9;
 9019#line 655
 9020  __cil_tmp46 = __cil_tmp45 | 128U;
 9021#line 655
 9022  __cil_tmp47 = dev->intr_in_buffer;
 9023#line 655
 9024  __cil_tmp48 = (void *)__cil_tmp47;
 9025#line 655
 9026  __cil_tmp49 = (void *)dev;
 9027#line 655
 9028  usb_fill_int_urb(__cil_tmp41, __cil_tmp42, __cil_tmp46, __cil_tmp48, 4, & ems_usb_read_interrupt_callback,
 9029                   __cil_tmp49, 1);
 9030#line 661
 9031  __cil_tmp50 = dev->intr_urb;
 9032#line 661
 9033  err = usb_submit_urb(__cil_tmp50, 208U);
 9034  }
 9035#line 662
 9036  if (err) {
 9037#line 663
 9038    if (err == -19) {
 9039      {
 9040#line 664
 9041      __cil_tmp51 = dev->netdev;
 9042#line 664
 9043      netif_device_detach(__cil_tmp51);
 9044      }
 9045    } else {
 9046
 9047    }
 9048    {
 9049#line 666
 9050    __cil_tmp52 = netdev->dev.parent;
 9051#line 666
 9052    __cil_tmp53 = (struct device  const  *)__cil_tmp52;
 9053#line 666
 9054    dev_warn(__cil_tmp53, "intr URB submit failed: %d\n", err);
 9055    }
 9056#line 669
 9057    return (err);
 9058  } else {
 9059
 9060  }
 9061  {
 9062#line 673
 9063  __cil_tmp54 = (u8 )5;
 9064#line 673
 9065  err = ems_usb_control_cmd(dev, __cil_tmp54);
 9066  }
 9067#line 674
 9068  if (err) {
 9069#line 675
 9070    goto failed;
 9071  } else {
 9072
 9073  }
 9074  {
 9075#line 678
 9076  __cil_tmp55 = (u8 )13;
 9077#line 678
 9078  err = ems_usb_control_cmd(dev, __cil_tmp55);
 9079  }
 9080#line 679
 9081  if (err) {
 9082#line 680
 9083    goto failed;
 9084  } else {
 9085
 9086  }
 9087  {
 9088#line 683
 9089  __cil_tmp56 = (u8 )29;
 9090#line 683
 9091  err = ems_usb_control_cmd(dev, __cil_tmp56);
 9092  }
 9093#line 684
 9094  if (err) {
 9095#line 685
 9096    goto failed;
 9097  } else {
 9098
 9099  }
 9100  {
 9101#line 687
 9102  __cil_tmp57 = (u8 )0;
 9103#line 687
 9104  err = ems_usb_write_mode(dev, __cil_tmp57);
 9105  }
 9106#line 688
 9107  if (err) {
 9108#line 689
 9109    goto failed;
 9110  } else {
 9111
 9112  }
 9113#line 691
 9114  dev->can.state = (enum can_state )0;
 9115#line 693
 9116  return (0);
 9117  failed: 
 9118#line 696
 9119  if (err == -19) {
 9120    {
 9121#line 697
 9122    __cil_tmp58 = dev->netdev;
 9123#line 697
 9124    netif_device_detach(__cil_tmp58);
 9125    }
 9126  } else {
 9127
 9128  }
 9129  {
 9130#line 699
 9131  __cil_tmp59 = netdev->dev.parent;
 9132#line 699
 9133  __cil_tmp60 = (struct device  const  *)__cil_tmp59;
 9134#line 699
 9135  dev_warn(__cil_tmp60, "couldn\'t submit control: %d\n", err);
 9136  }
 9137#line 701
 9138  return (err);
 9139}
 9140}
 9141#line 704 "/anthill/stuff/tacas-comp/work/current--X--drivers/net/can/usb/ems_usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/net/can/usb/ems_usb.c.common.c"
 9142static void unlink_all_urbs(struct ems_usb *dev ) 
 9143{ int i ;
 9144  struct urb *__cil_tmp3 ;
 9145  struct usb_anchor *__cil_tmp4 ;
 9146  struct usb_anchor *__cil_tmp5 ;
 9147  atomic_t *__cil_tmp6 ;
 9148
 9149  {
 9150  {
 9151#line 708
 9152  __cil_tmp3 = dev->intr_urb;
 9153#line 708
 9154  usb_unlink_urb(__cil_tmp3);
 9155#line 710
 9156  __cil_tmp4 = & dev->rx_submitted;
 9157#line 710
 9158  usb_kill_anchored_urbs(__cil_tmp4);
 9159#line 712
 9160  __cil_tmp5 = & dev->tx_submitted;
 9161#line 712
 9162  usb_kill_anchored_urbs(__cil_tmp5);
 9163#line 713
 9164  __cil_tmp6 = & dev->active_tx_urbs;
 9165#line 713
 9166  atomic_set(__cil_tmp6, 0);
 9167#line 715
 9168  i = 0;
 9169  }
 9170  {
 9171#line 715
 9172  while (1) {
 9173    while_continue: /* CIL Label */ ;
 9174
 9175#line 715
 9176    if (i < 10) {
 9177
 9178    } else {
 9179#line 715
 9180      goto while_break;
 9181    }
 9182#line 716
 9183    dev->tx_contexts[i].echo_index = (u32 )10;
 9184#line 715
 9185    i = i + 1;
 9186  }
 9187  while_break___0: /* CIL Label */ ;
 9188  }
 9189
 9190  while_break: ;
 9191#line 717
 9192  return;
 9193}
 9194}
 9195#line 719 "/anthill/stuff/tacas-comp/work/current--X--drivers/net/can/usb/ems_usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/net/can/usb/ems_usb.c.common.c"
 9196static int ems_usb_open(struct net_device *netdev ) 
 9197{ struct ems_usb *dev ;
 9198  void *tmp___7 ;
 9199  int err ;
 9200  struct net_device  const  *__cil_tmp5 ;
 9201  u8 __cil_tmp6 ;
 9202  struct net_device *__cil_tmp7 ;
 9203  struct device *__cil_tmp8 ;
 9204  struct device  const  *__cil_tmp9 ;
 9205
 9206  {
 9207  {
 9208#line 721
 9209  __cil_tmp5 = (struct net_device  const  *)netdev;
 9210#line 721
 9211  tmp___7 = netdev_priv(__cil_tmp5);
 9212#line 721
 9213  dev = (struct ems_usb *)tmp___7;
 9214#line 724
 9215  __cil_tmp6 = (u8 )1;
 9216#line 724
 9217  err = ems_usb_write_mode(dev, __cil_tmp6);
 9218  }
 9219#line 725
 9220  if (err) {
 9221#line 726
 9222    return (err);
 9223  } else {
 9224
 9225  }
 9226  {
 9227#line 729
 9228  err = open_candev(netdev);
 9229  }
 9230#line 730
 9231  if (err) {
 9232#line 731
 9233    return (err);
 9234  } else {
 9235
 9236  }
 9237  {
 9238#line 734
 9239  err = ems_usb_start(dev);
 9240  }
 9241#line 735
 9242  if (err) {
 9243#line 736
 9244    if (err == -19) {
 9245      {
 9246#line 737
 9247      __cil_tmp7 = dev->netdev;
 9248#line 737
 9249      netif_device_detach(__cil_tmp7);
 9250      }
 9251    } else {
 9252
 9253    }
 9254    {
 9255#line 739
 9256    __cil_tmp8 = netdev->dev.parent;
 9257#line 739
 9258    __cil_tmp9 = (struct device  const  *)__cil_tmp8;
 9259#line 739
 9260    dev_warn(__cil_tmp9, "couldn\'t start device: %d\n", err);
 9261#line 742
 9262    close_candev(netdev);
 9263    }
 9264#line 744
 9265    return (err);
 9266  } else {
 9267
 9268  }
 9269  {
 9270#line 747
 9271  dev->open_time = (int )jiffies;
 9272#line 749
 9273  netif_start_queue(netdev);
 9274  }
 9275#line 751
 9276  return (0);
 9277}
 9278}
 9279#line 754 "/anthill/stuff/tacas-comp/work/current--X--drivers/net/can/usb/ems_usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/net/can/usb/ems_usb.c.common.c"
 9280static netdev_tx_t ems_usb_start_xmit(struct sk_buff *skb , struct net_device *netdev ) 
 9281{ struct ems_usb *dev ;
 9282  void *tmp___7 ;
 9283  struct ems_tx_urb_context *context ;
 9284  struct net_device_stats *stats ;
 9285  struct can_frame *cf ;
 9286  struct ems_cpc_msg *msg ;
 9287  struct urb *urb ;
 9288  u8 *buf ;
 9289  int i ;
 9290  int err ;
 9291  size_t size ;
 9292  int tmp___8 ;
 9293  void *tmp___9 ;
 9294  unsigned int tmp___10 ;
 9295  int tmp___11 ;
 9296  long tmp___12 ;
 9297  struct net_device  const  *__cil_tmp19 ;
 9298  void *__cil_tmp20 ;
 9299  unsigned char *__cil_tmp21 ;
 9300  struct device *__cil_tmp22 ;
 9301  struct device  const  *__cil_tmp23 ;
 9302  struct usb_device *__cil_tmp24 ;
 9303  dma_addr_t *__cil_tmp25 ;
 9304  struct device *__cil_tmp26 ;
 9305  struct device  const  *__cil_tmp27 ;
 9306  u8 *__cil_tmp28 ;
 9307  canid_t __cil_tmp29 ;
 9308  canid_t __cil_tmp30 ;
 9309  canid_t __cil_tmp31 ;
 9310  canid_t __cil_tmp32 ;
 9311  __u8 __cil_tmp33 ;
 9312  int __cil_tmp34 ;
 9313  __u8 __cil_tmp35 ;
 9314  int __cil_tmp36 ;
 9315  int __cil_tmp37 ;
 9316  u32 __cil_tmp38 ;
 9317  struct usb_device *__cil_tmp39 ;
 9318  void *__cil_tmp40 ;
 9319  dma_addr_t __cil_tmp41 ;
 9320  struct device *__cil_tmp42 ;
 9321  struct device  const  *__cil_tmp43 ;
 9322  struct usb_device *__cil_tmp44 ;
 9323  struct usb_device *__cil_tmp45 ;
 9324  int __cil_tmp46 ;
 9325  unsigned int __cil_tmp47 ;
 9326  unsigned int __cil_tmp48 ;
 9327  void *__cil_tmp49 ;
 9328  int __cil_tmp50 ;
 9329  void *__cil_tmp51 ;
 9330  unsigned int __cil_tmp52 ;
 9331  struct usb_anchor *__cil_tmp53 ;
 9332  u32 __cil_tmp54 ;
 9333  atomic_t *__cil_tmp55 ;
 9334  int __cil_tmp56 ;
 9335  int __cil_tmp57 ;
 9336  long __cil_tmp58 ;
 9337  u32 __cil_tmp59 ;
 9338  struct usb_device *__cil_tmp60 ;
 9339  void *__cil_tmp61 ;
 9340  dma_addr_t __cil_tmp62 ;
 9341  atomic_t *__cil_tmp63 ;
 9342  struct device *__cil_tmp64 ;
 9343  struct device  const  *__cil_tmp65 ;
 9344  unsigned long __cil_tmp66 ;
 9345  atomic_t *__cil_tmp67 ;
 9346  atomic_t const   *__cil_tmp68 ;
 9347  unsigned int __cil_tmp69 ;
 9348  unsigned long __cil_tmp70 ;
 9349
 9350  {
 9351  {
 9352#line 756
 9353  __cil_tmp19 = (struct net_device  const  *)netdev;
 9354#line 756
 9355  tmp___7 = netdev_priv(__cil_tmp19);
 9356#line 756
 9357  dev = (struct ems_usb *)tmp___7;
 9358#line 757
 9359  __cil_tmp20 = (void *)0;
 9360#line 757
 9361  context = (struct ems_tx_urb_context *)__cil_tmp20;
 9362#line 758
 9363  stats = & netdev->stats;
 9364#line 759
 9365  __cil_tmp21 = skb->data;
 9366#line 759
 9367  cf = (struct can_frame *)__cil_tmp21;
 9368#line 764
 9369  size = 15UL + 16UL;
 9370#line 767
 9371  tmp___8 = can_dropped_invalid_skb(netdev, skb);
 9372  }
 9373#line 767
 9374  if (tmp___8) {
 9375#line 768
 9376    return ((netdev_tx_t )0);
 9377  } else {
 9378
 9379  }
 9380  {
 9381#line 771
 9382  urb = usb_alloc_urb(0, 32U);
 9383  }
 9384#line 772
 9385  if (! urb) {
 9386    {
 9387#line 773
 9388    __cil_tmp22 = netdev->dev.parent;
 9389#line 773
 9390    __cil_tmp23 = (struct device  const  *)__cil_tmp22;
 9391#line 773
 9392    dev_err(__cil_tmp23, "No memory left for URBs\n");
 9393    }
 9394#line 774
 9395    goto nomem;
 9396  } else {
 9397
 9398  }
 9399  {
 9400#line 777
 9401  __cil_tmp24 = dev->udev;
 9402#line 777
 9403  __cil_tmp25 = & urb->transfer_dma;
 9404#line 777
 9405  tmp___9 = usb_alloc_coherent(__cil_tmp24, size, 32U, __cil_tmp25);
 9406#line 777
 9407  buf = (u8 *)tmp___9;
 9408  }
 9409#line 778
 9410  if (! buf) {
 9411    {
 9412#line 779
 9413    __cil_tmp26 = netdev->dev.parent;
 9414#line 779
 9415    __cil_tmp27 = (struct device  const  *)__cil_tmp26;
 9416#line 779
 9417    dev_err(__cil_tmp27, "No memory left for USB buffer\n");
 9418#line 780
 9419    usb_free_urb(urb);
 9420    }
 9421#line 781
 9422    goto nomem;
 9423  } else {
 9424
 9425  }
 9426#line 784
 9427  __cil_tmp28 = buf + 4;
 9428#line 784
 9429  msg = (struct ems_cpc_msg *)__cil_tmp28;
 9430#line 786
 9431  __cil_tmp29 = cf->can_id;
 9432#line 786
 9433  msg->msg.can_msg.id = __cil_tmp29 & 536870911U;
 9434#line 787
 9435  msg->msg.can_msg.length = cf->can_dlc;
 9436  {
 9437#line 789
 9438  __cil_tmp30 = cf->can_id;
 9439#line 789
 9440  if (__cil_tmp30 & 1073741824U) {
 9441    {
 9442#line 790
 9443    __cil_tmp31 = cf->can_id;
 9444#line 790
 9445    if (__cil_tmp31 & 2147483648U) {
 9446#line 790
 9447      msg->type = (u8 )16;
 9448    } else {
 9449#line 790
 9450      msg->type = (u8 )13;
 9451    }
 9452    }
 9453#line 793
 9454    msg->length = (u8 )5;
 9455  } else {
 9456    {
 9457#line 795
 9458    __cil_tmp32 = cf->can_id;
 9459#line 795
 9460    if (__cil_tmp32 & 2147483648U) {
 9461#line 795
 9462      msg->type = (u8 )15;
 9463    } else {
 9464#line 795
 9465      msg->type = (u8 )1;
 9466    }
 9467    }
 9468#line 798
 9469    i = 0;
 9470    {
 9471#line 798
 9472    while (1) {
 9473      while_continue: /* CIL Label */ ;
 9474
 9475      {
 9476#line 798
 9477      __cil_tmp33 = cf->can_dlc;
 9478#line 798
 9479      __cil_tmp34 = (int )__cil_tmp33;
 9480#line 798
 9481      if (i < __cil_tmp34) {
 9482
 9483      } else {
 9484#line 798
 9485        goto while_break;
 9486      }
 9487      }
 9488#line 799
 9489      msg->msg.can_msg.msg[i] = cf->data[i];
 9490#line 798
 9491      i = i + 1;
 9492    }
 9493    while_break___1: /* CIL Label */ ;
 9494    }
 9495
 9496    while_break: 
 9497#line 801
 9498    __cil_tmp35 = cf->can_dlc;
 9499#line 801
 9500    __cil_tmp36 = (int )__cil_tmp35;
 9501#line 801
 9502    __cil_tmp37 = 5 + __cil_tmp36;
 9503#line 801
 9504    msg->length = (u8 )__cil_tmp37;
 9505  }
 9506  }
 9507#line 805
 9508  msg->msg.can_msg.id = msg->msg.can_msg.id;
 9509#line 807
 9510  i = 0;
 9511  {
 9512#line 807
 9513  while (1) {
 9514    while_continue___0: /* CIL Label */ ;
 9515
 9516#line 807
 9517    if (i < 10) {
 9518
 9519    } else {
 9520#line 807
 9521      goto while_break___0;
 9522    }
 9523    {
 9524#line 808
 9525    __cil_tmp38 = dev->tx_contexts[i].echo_index;
 9526#line 808
 9527    if (__cil_tmp38 == 10U) {
 9528#line 809
 9529      context = & dev->tx_contexts[i];
 9530#line 810
 9531      goto while_break___0;
 9532    } else {
 9533
 9534    }
 9535    }
 9536#line 807
 9537    i = i + 1;
 9538  }
 9539  while_break___2: /* CIL Label */ ;
 9540  }
 9541
 9542  while_break___0: ;
 9543#line 818
 9544  if (! context) {
 9545    {
 9546#line 819
 9547    usb_unanchor_urb(urb);
 9548#line 820
 9549    __cil_tmp39 = dev->udev;
 9550#line 820
 9551    __cil_tmp40 = (void *)buf;
 9552#line 820
 9553    __cil_tmp41 = urb->transfer_dma;
 9554#line 820
 9555    usb_free_coherent(__cil_tmp39, size, __cil_tmp40, __cil_tmp41);
 9556#line 822
 9557    __cil_tmp42 = netdev->dev.parent;
 9558#line 822
 9559    __cil_tmp43 = (struct device  const  *)__cil_tmp42;
 9560#line 822
 9561    dev_warn(__cil_tmp43, "couldn\'t find free context\n");
 9562    }
 9563#line 824
 9564    return ((netdev_tx_t )16);
 9565  } else {
 9566
 9567  }
 9568  {
 9569#line 827
 9570  context->dev = dev;
 9571#line 828
 9572  context->echo_index = (u32 )i;
 9573#line 829
 9574  context->dlc = cf->can_dlc;
 9575#line 831
 9576  __cil_tmp44 = dev->udev;
 9577#line 831
 9578  tmp___10 = __create_pipe(__cil_tmp44, 2U);
 9579#line 831
 9580  __cil_tmp45 = dev->udev;
 9581#line 831
 9582  __cil_tmp46 = 3 << 30;
 9583#line 831
 9584  __cil_tmp47 = (unsigned int )__cil_tmp46;
 9585#line 831
 9586  __cil_tmp48 = __cil_tmp47 | tmp___10;
 9587#line 831
 9588  __cil_tmp49 = (void *)buf;
 9589#line 831
 9590  __cil_tmp50 = (int )size;
 9591#line 831
 9592  __cil_tmp51 = (void *)context;
 9593#line 831
 9594  usb_fill_bulk_urb(urb, __cil_tmp45, __cil_tmp48, __cil_tmp49, __cil_tmp50, & ems_usb_write_bulk_callback,
 9595                    __cil_tmp51);
 9596#line 833
 9597  __cil_tmp52 = urb->transfer_flags;
 9598#line 833
 9599  urb->transfer_flags = __cil_tmp52 | 4U;
 9600#line 834
 9601  __cil_tmp53 = & dev->tx_submitted;
 9602#line 834
 9603  usb_anchor_urb(urb, __cil_tmp53);
 9604#line 836
 9605  __cil_tmp54 = context->echo_index;
 9606#line 836
 9607  can_put_echo_skb(skb, netdev, __cil_tmp54);
 9608#line 838
 9609  __cil_tmp55 = & dev->active_tx_urbs;
 9610#line 838
 9611  atomic_inc(__cil_tmp55);
 9612#line 840
 9613  err = usb_submit_urb(urb, 32U);
 9614#line 841
 9615  __cil_tmp56 = ! err;
 9616#line 841
 9617  __cil_tmp57 = ! __cil_tmp56;
 9618#line 841
 9619  __cil_tmp58 = (long )__cil_tmp57;
 9620#line 841
 9621  tmp___12 = __builtin_expect(__cil_tmp58, 0L);
 9622  }
 9623#line 841
 9624  if (tmp___12) {
 9625    {
 9626#line 842
 9627    __cil_tmp59 = context->echo_index;
 9628#line 842
 9629    can_free_echo_skb(netdev, __cil_tmp59);
 9630#line 844
 9631    usb_unanchor_urb(urb);
 9632#line 845
 9633    __cil_tmp60 = dev->udev;
 9634#line 845
 9635    __cil_tmp61 = (void *)buf;
 9636#line 845
 9637    __cil_tmp62 = urb->transfer_dma;
 9638#line 845
 9639    usb_free_coherent(__cil_tmp60, size, __cil_tmp61, __cil_tmp62);
 9640#line 846
 9641    consume_skb(skb);
 9642#line 848
 9643    __cil_tmp63 = & dev->active_tx_urbs;
 9644#line 848
 9645    atomic_dec(__cil_tmp63);
 9646    }
 9647#line 850
 9648    if (err == -19) {
 9649      {
 9650#line 851
 9651      netif_device_detach(netdev);
 9652      }
 9653    } else {
 9654      {
 9655#line 853
 9656      __cil_tmp64 = netdev->dev.parent;
 9657#line 853
 9658      __cil_tmp65 = (struct device  const  *)__cil_tmp64;
 9659#line 853
 9660      dev_warn(__cil_tmp65, "failed tx_urb %d\n", err);
 9661#line 855
 9662      __cil_tmp66 = stats->tx_dropped;
 9663#line 855
 9664      stats->tx_dropped = __cil_tmp66 + 1UL;
 9665      }
 9666    }
 9667  } else {
 9668    {
 9669#line 858
 9670    netdev->trans_start = (unsigned long )jiffies;
 9671#line 861
 9672    __cil_tmp67 = & dev->active_tx_urbs;
 9673#line 861
 9674    __cil_tmp68 = (atomic_t const   *)__cil_tmp67;
 9675#line 861
 9676    tmp___11 = atomic_read(__cil_tmp68);
 9677    }
 9678#line 861
 9679    if (tmp___11 >= 10) {
 9680      {
 9681#line 863
 9682      netif_stop_queue(netdev);
 9683      }
 9684    } else {
 9685      {
 9686#line 861
 9687      __cil_tmp69 = dev->free_slots;
 9688#line 861
 9689      if (__cil_tmp69 < 5U) {
 9690        {
 9691#line 863
 9692        netif_stop_queue(netdev);
 9693        }
 9694      } else {
 9695
 9696      }
 9697      }
 9698    }
 9699  }
 9700  {
 9701#line 871
 9702  usb_free_urb(urb);
 9703  }
 9704#line 873
 9705  return ((netdev_tx_t )0);
 9706  nomem: 
 9707  {
 9708#line 876
 9709  consume_skb(skb);
 9710#line 877
 9711  __cil_tmp70 = stats->tx_dropped;
 9712#line 877
 9713  stats->tx_dropped = __cil_tmp70 + 1UL;
 9714  }
 9715#line 879
 9716  return ((netdev_tx_t )0);
 9717}
 9718}
 9719#line 882 "/anthill/stuff/tacas-comp/work/current--X--drivers/net/can/usb/ems_usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/net/can/usb/ems_usb.c.common.c"
 9720static int ems_usb_close(struct net_device *netdev ) 
 9721{ struct ems_usb *dev ;
 9722  void *tmp___7 ;
 9723  int tmp___8 ;
 9724  struct net_device  const  *__cil_tmp5 ;
 9725  u8 __cil_tmp6 ;
 9726  struct device *__cil_tmp7 ;
 9727  struct device  const  *__cil_tmp8 ;
 9728
 9729  {
 9730  {
 9731#line 884
 9732  __cil_tmp5 = (struct net_device  const  *)netdev;
 9733#line 884
 9734  tmp___7 = netdev_priv(__cil_tmp5);
 9735#line 884
 9736  dev = (struct ems_usb *)tmp___7;
 9737#line 887
 9738  unlink_all_urbs(dev);
 9739#line 889
 9740  netif_stop_queue(netdev);
 9741#line 892
 9742  __cil_tmp6 = (u8 )1;
 9743#line 892
 9744  tmp___8 = ems_usb_write_mode(dev, __cil_tmp6);
 9745  }
 9746#line 892
 9747  if (tmp___8) {
 9748    {
 9749#line 893
 9750    __cil_tmp7 = netdev->dev.parent;
 9751#line 893
 9752    __cil_tmp8 = (struct device  const  *)__cil_tmp7;
 9753#line 893
 9754    dev_warn(__cil_tmp8, "couldn\'t stop device");
 9755    }
 9756  } else {
 9757
 9758  }
 9759  {
 9760#line 895
 9761  close_candev(netdev);
 9762#line 897
 9763  dev->open_time = 0;
 9764  }
 9765#line 899
 9766  return (0);
 9767}
 9768}
 9769#line 902 "/anthill/stuff/tacas-comp/work/current--X--drivers/net/can/usb/ems_usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/net/can/usb/ems_usb.c.common.c"
 9770static struct net_device_ops  const  ems_usb_netdev_ops  = 
 9771#line 902
 9772     {(int (*)(struct net_device *dev ))0, (void (*)(struct net_device *dev ))0, & ems_usb_open,
 9773    & ems_usb_close, & ems_usb_start_xmit, (u16 (*)(struct net_device *dev , struct sk_buff *skb ))0,
 9774    (void (*)(struct net_device *dev , int flags ))0, (void (*)(struct net_device *dev ))0,
 9775    (void (*)(struct net_device *dev ))0, (int (*)(struct net_device *dev , void *addr ))0,
 9776    (int (*)(struct net_device *dev ))0, (int (*)(struct net_device *dev , struct ifreq *ifr ,
 9777                                                  int cmd ))0, (int (*)(struct net_device *dev ,
 9778                                                                        struct ifmap *map ))0,
 9779    (int (*)(struct net_device *dev , int new_mtu ))0, (int (*)(struct net_device *dev ,
 9780                                                                struct neigh_parms * ))0,
 9781    (void (*)(struct net_device *dev ))0, (struct rtnl_link_stats64 *(*)(struct net_device *dev ,
 9782                                                                         struct rtnl_link_stats64 *storage ))0,
 9783    (struct net_device_stats *(*)(struct net_device *dev ))0, (void (*)(struct net_device *dev ,
 9784                                                                        struct vlan_group *grp ))0,
 9785    (void (*)(struct net_device *dev , unsigned short vid ))0, (void (*)(struct net_device *dev ,
 9786                                                                         unsigned short vid ))0,
 9787    (void (*)(struct net_device *dev ))0, (int (*)(struct net_device *dev , struct netpoll_info *info ))0,
 9788    (void (*)(struct net_device *dev ))0, (int (*)(struct net_device *dev , int queue ,
 9789                                                   u8 *mac ))0, (int (*)(struct net_device *dev ,
 9790                                                                         int queue ,
 9791                                                                         u16 vlan ,
 9792                                                                         u8 qos ))0,
 9793    (int (*)(struct net_device *dev , int vf , int rate ))0, (int (*)(struct net_device *dev ,
 9794                                                                      int vf , struct ifla_vf_info *ivf ))0,
 9795    (int (*)(struct net_device *dev , int vf , struct nlattr **port ))0, (int (*)(struct net_device *dev ,
 9796                                                                                  int vf ,
 9797                                                                                  struct sk_buff *skb ))0,
 9798    (int (*)(struct net_device *dev , u8 tc ))0, (int (*)(struct net_device *dev ))0,
 9799    (int (*)(struct net_device *dev ))0, (int (*)(struct net_device *dev , u16 xid ,
 9800                                                  struct scatterlist *sgl , unsigned int sgc ))0,
 9801    (int (*)(struct net_device *dev , u16 xid ))0, (int (*)(struct net_device *dev ,
 9802                                                            u16 xid , struct scatterlist *sgl ,
 9803                                                            unsigned int sgc ))0,
 9804    (int (*)(struct net_device *dev , u64 *wwn , int type ))0, (int (*)(struct net_device *dev ,
 9805                                                                        struct sk_buff  const  *skb ,
 9806                                                                        u16 rxq_index ,
 9807                                                                        u32 flow_id ))0,
 9808    (int (*)(struct net_device *dev , struct net_device *slave_dev ))0, (int (*)(struct net_device *dev ,
 9809                                                                                 struct net_device *slave_dev ))0,
 9810    (u32 (*)(struct net_device *dev , u32 features ))0, (int (*)(struct net_device *dev ,
 9811                                                                 u32 features ))0};
 9812#line 908 "/anthill/stuff/tacas-comp/work/current--X--drivers/net/can/usb/ems_usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/net/can/usb/ems_usb.c.common.c"
 9813static struct can_bittiming_const ems_usb_bittiming_const  = 
 9814#line 908
 9815     {{(char )'e', (char )'m', (char )'s', (char )'_', (char )'u', (char )'s', (char )'b',
 9816     (char )'\000', (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0,
 9817     (char)0}, (__u32 )1, (__u32 )16, (__u32 )1, (__u32 )8, (__u32 )4, (__u32 )1,
 9818    (__u32 )64, (__u32 )1};
 9819#line 920 "/anthill/stuff/tacas-comp/work/current--X--drivers/net/can/usb/ems_usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/net/can/usb/ems_usb.c.common.c"
 9820static int ems_usb_set_mode(struct net_device *netdev , enum can_mode mode ) 
 9821{ struct ems_usb *dev ;
 9822  void *tmp___7 ;
 9823  int tmp___8 ;
 9824  int tmp___9 ;
 9825  struct net_device  const  *__cil_tmp7 ;
 9826  int __cil_tmp8 ;
 9827  int __cil_tmp9 ;
 9828  u8 __cil_tmp10 ;
 9829  struct device *__cil_tmp11 ;
 9830  struct device  const  *__cil_tmp12 ;
 9831  struct net_device  const  *__cil_tmp13 ;
 9832
 9833  {
 9834  {
 9835#line 922
 9836  __cil_tmp7 = (struct net_device  const  *)netdev;
 9837#line 922
 9838  tmp___7 = netdev_priv(__cil_tmp7);
 9839#line 922
 9840  dev = (struct ems_usb *)tmp___7;
 9841  }
 9842  {
 9843#line 924
 9844  __cil_tmp8 = dev->open_time;
 9845#line 924
 9846  if (! __cil_tmp8) {
 9847#line 925
 9848    return (-22);
 9849  } else {
 9850
 9851  }
 9852  }
 9853  {
 9854#line 928
 9855  __cil_tmp9 = (int )mode;
 9856#line 928
 9857  if (__cil_tmp9 == 1) {
 9858#line 928
 9859    goto case_1;
 9860  } else {
 9861#line 936
 9862    goto switch_default;
 9863#line 927
 9864    if (0) {
 9865      case_1: 
 9866      {
 9867#line 929
 9868      __cil_tmp10 = (u8 )0;
 9869#line 929
 9870      tmp___8 = ems_usb_write_mode(dev, __cil_tmp10);
 9871      }
 9872#line 929
 9873      if (tmp___8) {
 9874        {
 9875#line 930
 9876        __cil_tmp11 = netdev->dev.parent;
 9877#line 930
 9878        __cil_tmp12 = (struct device  const  *)__cil_tmp11;
 9879#line 930
 9880        dev_warn(__cil_tmp12, "couldn\'t start device");
 9881        }
 9882      } else {
 9883
 9884      }
 9885      {
 9886#line 932
 9887      __cil_tmp13 = (struct net_device  const  *)netdev;
 9888#line 932
 9889      tmp___9 = netif_queue_stopped(__cil_tmp13);
 9890      }
 9891#line 932
 9892      if (tmp___9) {
 9893        {
 9894#line 933
 9895        netif_wake_queue(netdev);
 9896        }
 9897      } else {
 9898
 9899      }
 9900#line 934
 9901      goto switch_break;
 9902      switch_default: 
 9903#line 937
 9904      return (-95);
 9905    } else {
 9906      switch_break: ;
 9907    }
 9908  }
 9909  }
 9910#line 940
 9911  return (0);
 9912}
 9913}
 9914#line 943 "/anthill/stuff/tacas-comp/work/current--X--drivers/net/can/usb/ems_usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/net/can/usb/ems_usb.c.common.c"
 9915static int ems_usb_set_bittiming(struct net_device *netdev ) 
 9916{ struct ems_usb *dev ;
 9917  void *tmp___7 ;
 9918  struct can_bittiming *bt ;
 9919  u8 btr0 ;
 9920  u8 btr1 ;
 9921  int tmp___8 ;
 9922  struct net_device  const  *__cil_tmp8 ;
 9923  __u32 __cil_tmp9 ;
 9924  __u32 __cil_tmp10 ;
 9925  unsigned int __cil_tmp11 ;
 9926  unsigned int __cil_tmp12 ;
 9927  __u32 __cil_tmp13 ;
 9928  __u32 __cil_tmp14 ;
 9929  unsigned int __cil_tmp15 ;
 9930  unsigned int __cil_tmp16 ;
 9931  __u32 __cil_tmp17 ;
 9932  __u32 __cil_tmp18 ;
 9933  unsigned int __cil_tmp19 ;
 9934  unsigned int __cil_tmp20 ;
 9935  __u32 __cil_tmp21 ;
 9936  __u32 __cil_tmp22 ;
 9937  __u32 __cil_tmp23 ;
 9938  __u32 __cil_tmp24 ;
 9939  unsigned int __cil_tmp25 ;
 9940  unsigned int __cil_tmp26 ;
 9941  u32 __cil_tmp27 ;
 9942  int __cil_tmp28 ;
 9943  int __cil_tmp29 ;
 9944  struct device *__cil_tmp30 ;
 9945  struct device  const  *__cil_tmp31 ;
 9946  int __cil_tmp32 ;
 9947  int __cil_tmp33 ;
 9948  struct ems_cpc_msg *__cil_tmp34 ;
 9949
 9950  {
 9951  {
 9952#line 945
 9953  __cil_tmp8 = (struct net_device  const  *)netdev;
 9954#line 945
 9955  tmp___7 = netdev_priv(__cil_tmp8);
 9956#line 945
 9957  dev = (struct ems_usb *)tmp___7;
 9958#line 946
 9959  bt = & dev->can.bittiming;
 9960#line 949
 9961  __cil_tmp9 = bt->sjw;
 9962#line 949
 9963  __cil_tmp10 = __cil_tmp9 - 1U;
 9964#line 949
 9965  __cil_tmp11 = __cil_tmp10 & 3U;
 9966#line 949
 9967  __cil_tmp12 = __cil_tmp11 << 6;
 9968#line 949
 9969  __cil_tmp13 = bt->brp;
 9970#line 949
 9971  __cil_tmp14 = __cil_tmp13 - 1U;
 9972#line 949
 9973  __cil_tmp15 = __cil_tmp14 & 63U;
 9974#line 949
 9975  __cil_tmp16 = __cil_tmp15 | __cil_tmp12;
 9976#line 949
 9977  btr0 = (u8 )__cil_tmp16;
 9978#line 950
 9979  __cil_tmp17 = bt->phase_seg2;
 9980#line 950
 9981  __cil_tmp18 = __cil_tmp17 - 1U;
 9982#line 950
 9983  __cil_tmp19 = __cil_tmp18 & 7U;
 9984#line 950
 9985  __cil_tmp20 = __cil_tmp19 << 4;
 9986#line 950
 9987  __cil_tmp21 = bt->phase_seg1;
 9988#line 950
 9989  __cil_tmp22 = bt->prop_seg;
 9990#line 950
 9991  __cil_tmp23 = __cil_tmp22 + __cil_tmp21;
 9992#line 950
 9993  __cil_tmp24 = __cil_tmp23 - 1U;
 9994#line 950
 9995  __cil_tmp25 = __cil_tmp24 & 15U;
 9996#line 950
 9997  __cil_tmp26 = __cil_tmp25 | __cil_tmp20;
 9998#line 950
 9999  btr1 = (u8 )__cil_tmp26;
10000  }
10001  {
10002#line 952
10003  __cil_tmp27 = dev->can.ctrlmode;
10004#line 952
10005  if (__cil_tmp27 & 4U) {
10006#line 953
10007    __cil_tmp28 = (int )btr1;
10008#line 953
10009    __cil_tmp29 = __cil_tmp28 | 128;
10010#line 953
10011    btr1 = (u8 )__cil_tmp29;
10012  } else {
10013
10014  }
10015  }
10016  {
10017#line 955
10018  __cil_tmp30 = netdev->dev.parent;
10019#line 955
10020  __cil_tmp31 = (struct device  const  *)__cil_tmp30;
10021#line 955
10022  __cil_tmp32 = (int )btr0;
10023#line 955
10024  __cil_tmp33 = (int )btr1;
10025#line 955
10026  _dev_info(__cil_tmp31, "setting BTR0=0x%02x BTR1=0x%02x\n", __cil_tmp32, __cil_tmp33);
10027#line 958
10028  dev->active_params.msg.can_params.cc_params.sja1000.btr0 = btr0;
10029#line 959
10030  dev->active_params.msg.can_params.cc_params.sja1000.btr1 = btr1;
10031#line 961
10032  __cil_tmp34 = & dev->active_params;
10033#line 961
10034  tmp___8 = ems_usb_command_msg(dev, __cil_tmp34);
10035  }
10036#line 961
10037  return (tmp___8);
10038}
10039}
10040#line 964 "/anthill/stuff/tacas-comp/work/current--X--drivers/net/can/usb/ems_usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/net/can/usb/ems_usb.c.common.c"
10041static void init_params_sja1000(struct ems_cpc_msg *msg ) 
10042{ struct cpc_sja1000_params *sja1000 ;
10043
10044  {
10045#line 966
10046  sja1000 = & msg->msg.can_params.cc_params.sja1000;
10047#line 969
10048  msg->type = (u8 )6;
10049#line 970
10050  msg->length = (u8 )13UL;
10051#line 971
10052  msg->msgid = (u8 )0;
10053#line 973
10054  msg->msg.can_params.cc_type = (u8 )2;
10055#line 976
10056  sja1000->acc_code0 = (u8 )0;
10057#line 977
10058  sja1000->acc_code1 = (u8 )0;
10059#line 978
10060  sja1000->acc_code2 = (u8 )0;
10061#line 979
10062  sja1000->acc_code3 = (u8 )0;
10063#line 982
10064  sja1000->acc_mask0 = (u8 )255;
10065#line 983
10066  sja1000->acc_mask1 = (u8 )255;
10067#line 984
10068  sja1000->acc_mask2 = (u8 )255;
10069#line 985
10070  sja1000->acc_mask3 = (u8 )255;
10071#line 987
10072  sja1000->btr0 = (u8 )0;
10073#line 988
10074  sja1000->btr1 = (u8 )0;
10075#line 990
10076  sja1000->outp_contr = (u8 )218;
10077#line 991
10078  sja1000->mode = (u8 )1;
10079#line 992
10080  return;
10081}
10082}
10083#line 997 "/anthill/stuff/tacas-comp/work/current--X--drivers/net/can/usb/ems_usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/net/can/usb/ems_usb.c.common.c"
10084static int ems_usb_probe(struct usb_interface *intf , struct usb_device_id  const  *id ) 
10085{ struct net_device *netdev ;
10086  struct ems_usb *dev ;
10087  int i ;
10088  int err ;
10089  void *tmp___7 ;
10090  void *tmp___8 ;
10091  void *tmp___9 ;
10092  int __cil_tmp10 ;
10093  struct device *__cil_tmp11 ;
10094  struct device  const  *__cil_tmp12 ;
10095  struct net_device  const  *__cil_tmp13 ;
10096  unsigned int __cil_tmp14 ;
10097  struct usb_anchor *__cil_tmp15 ;
10098  struct usb_anchor *__cil_tmp16 ;
10099  atomic_t *__cil_tmp17 ;
10100  struct urb *__cil_tmp18 ;
10101  struct device *__cil_tmp19 ;
10102  struct device  const  *__cil_tmp20 ;
10103  size_t __cil_tmp21 ;
10104  u8 *__cil_tmp22 ;
10105  struct device *__cil_tmp23 ;
10106  struct device  const  *__cil_tmp24 ;
10107  unsigned long __cil_tmp25 ;
10108  u8 *__cil_tmp26 ;
10109  struct device *__cil_tmp27 ;
10110  struct device  const  *__cil_tmp28 ;
10111  void *__cil_tmp29 ;
10112  struct ems_cpc_msg *__cil_tmp30 ;
10113  struct ems_cpc_msg *__cil_tmp31 ;
10114  struct device *__cil_tmp32 ;
10115  struct device  const  *__cil_tmp33 ;
10116  struct device *__cil_tmp34 ;
10117  struct device  const  *__cil_tmp35 ;
10118  u8 *__cil_tmp36 ;
10119  void const   *__cil_tmp37 ;
10120  u8 *__cil_tmp38 ;
10121  void const   *__cil_tmp39 ;
10122  struct urb *__cil_tmp40 ;
10123
10124  {
10125  {
10126#line 1002
10127  err = -12;
10128#line 1004
10129  __cil_tmp10 = (int )1008UL;
10130#line 1004
10131  netdev = alloc_candev(__cil_tmp10, 10U);
10132  }
10133#line 1005
10134  if (! netdev) {
10135    {
10136#line 1006
10137    __cil_tmp11 = & intf->dev;
10138#line 1006
10139    __cil_tmp12 = (struct device  const  *)__cil_tmp11;
10140#line 1006
10141    dev_err(__cil_tmp12, "ems_usb: Couldn\'t alloc candev\n");
10142    }
10143#line 1007
10144    return (-12);
10145  } else {
10146
10147  }
10148  {
10149#line 1010
10150  __cil_tmp13 = (struct net_device  const  *)netdev;
10151#line 1010
10152  tmp___7 = netdev_priv(__cil_tmp13);
10153#line 1010
10154  dev = (struct ems_usb *)tmp___7;
10155#line 1012
10156  dev->udev = interface_to_usbdev(intf);
10157#line 1013
10158  dev->netdev = netdev;
10159#line 1015
10160  dev->can.state = (enum can_state )4;
10161#line 1016
10162  dev->can.clock.freq = (__u32 )8000000;
10163#line 1017
10164  dev->can.bittiming_const = & ems_usb_bittiming_const;
10165#line 1018
10166  dev->can.do_set_bittiming = & ems_usb_set_bittiming;
10167#line 1019
10168  dev->can.do_set_mode = & ems_usb_set_mode;
10169#line 1020
10170  dev->can.ctrlmode_supported = (u32 )4;
10171#line 1022
10172  netdev->netdev_ops = & ems_usb_netdev_ops;
10173#line 1024
10174  __cil_tmp14 = netdev->flags;
10175#line 1024
10176  netdev->flags = __cil_tmp14 | 262144U;
10177#line 1026
10178  __cil_tmp15 = & dev->rx_submitted;
10179#line 1026
10180  init_usb_anchor(__cil_tmp15);
10181#line 1028
10182  __cil_tmp16 = & dev->tx_submitted;
10183#line 1028
10184  init_usb_anchor(__cil_tmp16);
10185#line 1029
10186  __cil_tmp17 = & dev->active_tx_urbs;
10187#line 1029
10188  atomic_set(__cil_tmp17, 0);
10189#line 1031
10190  i = 0;
10191  }
10192  {
10193#line 1031
10194  while (1) {
10195    while_continue: /* CIL Label */ ;
10196
10197#line 1031
10198    if (i < 10) {
10199
10200    } else {
10201#line 1031
10202      goto while_break;
10203    }
10204#line 1032
10205    dev->tx_contexts[i].echo_index = (u32 )10;
10206#line 1031
10207    i = i + 1;
10208  }
10209  while_break___0: /* CIL Label */ ;
10210  }
10211
10212  while_break: 
10213  {
10214#line 1034
10215  dev->intr_urb = usb_alloc_urb(0, 208U);
10216  }
10217  {
10218#line 1035
10219  __cil_tmp18 = dev->intr_urb;
10220#line 1035
10221  if (! __cil_tmp18) {
10222    {
10223#line 1036
10224    __cil_tmp19 = & intf->dev;
10225#line 1036
10226    __cil_tmp20 = (struct device  const  *)__cil_tmp19;
10227#line 1036
10228    dev_err(__cil_tmp20, "Couldn\'t alloc intr URB\n");
10229    }
10230#line 1037
10231    goto cleanup_candev;
10232  } else {
10233
10234  }
10235  }
10236  {
10237#line 1040
10238  __cil_tmp21 = (size_t )4;
10239#line 1040
10240  tmp___8 = kzalloc(__cil_tmp21, 208U);
10241#line 1040
10242  dev->intr_in_buffer = (u8 *)tmp___8;
10243  }
10244  {
10245#line 1041
10246  __cil_tmp22 = dev->intr_in_buffer;
10247#line 1041
10248  if (! __cil_tmp22) {
10249    {
10250#line 1042
10251    __cil_tmp23 = & intf->dev;
10252#line 1042
10253    __cil_tmp24 = (struct device  const  *)__cil_tmp23;
10254#line 1042
10255    dev_err(__cil_tmp24, "Couldn\'t alloc Intr buffer\n");
10256    }
10257#line 1043
10258    goto cleanup_intr_urb;
10259  } else {
10260
10261  }
10262  }
10263  {
10264#line 1046
10265  __cil_tmp25 = 4UL + 75UL;
10266#line 1046
10267  tmp___9 = kzalloc(__cil_tmp25, 208U);
10268#line 1046
10269  dev->tx_msg_buffer = (u8 *)tmp___9;
10270  }
10271  {
10272#line 1048
10273  __cil_tmp26 = dev->tx_msg_buffer;
10274#line 1048
10275  if (! __cil_tmp26) {
10276    {
10277#line 1049
10278    __cil_tmp27 = & intf->dev;
10279#line 1049
10280    __cil_tmp28 = (struct device  const  *)__cil_tmp27;
10281#line 1049
10282    dev_err(__cil_tmp28, "Couldn\'t alloc Tx buffer\n");
10283    }
10284#line 1050
10285    goto cleanup_intr_in_buffer;
10286  } else {
10287
10288  }
10289  }
10290  {
10291#line 1053
10292  __cil_tmp29 = (void *)dev;
10293#line 1053
10294  usb_set_intfdata(intf, __cil_tmp29);
10295#line 1055
10296  netdev->dev.parent = & intf->dev;
10297#line 1057
10298  __cil_tmp30 = & dev->active_params;
10299#line 1057
10300  init_params_sja1000(__cil_tmp30);
10301#line 1059
10302  __cil_tmp31 = & dev->active_params;
10303#line 1059
10304  err = ems_usb_command_msg(dev, __cil_tmp31);
10305  }
10306#line 1060
10307  if (err) {
10308    {
10309#line 1061
10310    __cil_tmp32 = netdev->dev.parent;
10311#line 1061
10312    __cil_tmp33 = (struct device  const  *)__cil_tmp32;
10313#line 1061
10314    dev_err(__cil_tmp33, "couldn\'t initialize controller: %d\n", err);
10315    }
10316#line 1063
10317    goto cleanup_tx_msg_buffer;
10318  } else {
10319
10320  }
10321  {
10322#line 1066
10323  err = register_candev(netdev);
10324  }
10325#line 1067
10326  if (err) {
10327    {
10328#line 1068
10329    __cil_tmp34 = netdev->dev.parent;
10330#line 1068
10331    __cil_tmp35 = (struct device  const  *)__cil_tmp34;
10332#line 1068
10333    dev_err(__cil_tmp35, "couldn\'t register CAN device: %d\n", err);
10334    }
10335#line 1070
10336    goto cleanup_tx_msg_buffer;
10337  } else {
10338
10339  }
10340#line 1073
10341  return (0);
10342  cleanup_tx_msg_buffer: 
10343  {
10344#line 1076
10345  __cil_tmp36 = dev->tx_msg_buffer;
10346#line 1076
10347  __cil_tmp37 = (void const   *)__cil_tmp36;
10348#line 1076
10349  kfree(__cil_tmp37);
10350  }
10351  cleanup_intr_in_buffer: 
10352  {
10353#line 1079
10354  __cil_tmp38 = dev->intr_in_buffer;
10355#line 1079
10356  __cil_tmp39 = (void const   *)__cil_tmp38;
10357#line 1079
10358  kfree(__cil_tmp39);
10359  }
10360  cleanup_intr_urb: 
10361  {
10362#line 1082
10363  __cil_tmp40 = dev->intr_urb;
10364#line 1082
10365  usb_free_urb(__cil_tmp40);
10366  }
10367  cleanup_candev: 
10368  {
10369#line 1085
10370  free_candev(netdev);
10371  }
10372#line 1087
10373  return (err);
10374}
10375}
10376#line 1093 "/anthill/stuff/tacas-comp/work/current--X--drivers/net/can/usb/ems_usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/net/can/usb/ems_usb.c.common.c"
10377static void ems_usb_disconnect(struct usb_interface *intf ) 
10378{ struct ems_usb *dev ;
10379  void *tmp___7 ;
10380  void *__cil_tmp4 ;
10381  struct net_device *__cil_tmp5 ;
10382  struct net_device *__cil_tmp6 ;
10383  struct urb *__cil_tmp7 ;
10384  u8 *__cil_tmp8 ;
10385  void const   *__cil_tmp9 ;
10386
10387  {
10388  {
10389#line 1095
10390  tmp___7 = usb_get_intfdata(intf);
10391#line 1095
10392  dev = (struct ems_usb *)tmp___7;
10393#line 1097
10394  __cil_tmp4 = (void *)0;
10395#line 1097
10396  usb_set_intfdata(intf, __cil_tmp4);
10397  }
10398#line 1099
10399  if (dev) {
10400    {
10401#line 1100
10402    __cil_tmp5 = dev->netdev;
10403#line 1100
10404    unregister_netdev(__cil_tmp5);
10405#line 1101
10406    __cil_tmp6 = dev->netdev;
10407#line 1101
10408    free_candev(__cil_tmp6);
10409#line 1103
10410    unlink_all_urbs(dev);
10411#line 1105
10412    __cil_tmp7 = dev->intr_urb;
10413#line 1105
10414    usb_free_urb(__cil_tmp7);
10415#line 1107
10416    __cil_tmp8 = dev->intr_in_buffer;
10417#line 1107
10418    __cil_tmp9 = (void const   *)__cil_tmp8;
10419#line 1107
10420    kfree(__cil_tmp9);
10421    }
10422  } else {
10423
10424  }
10425#line 1109
10426  return;
10427}
10428}
10429#line 1112 "/anthill/stuff/tacas-comp/work/current--X--drivers/net/can/usb/ems_usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/net/can/usb/ems_usb.c.common.c"
10430static struct usb_driver ems_usb_driver  = 
10431#line 1112
10432     {"ems_usb", & ems_usb_probe, & ems_usb_disconnect, (int (*)(struct usb_interface *intf ,
10433                                                               unsigned int code ,
10434                                                               void *buf ))0, (int (*)(struct usb_interface *intf ,
10435                                                                                       pm_message_t message ))0,
10436    (int (*)(struct usb_interface *intf ))0, (int (*)(struct usb_interface *intf ))0,
10437    (int (*)(struct usb_interface *intf ))0, (int (*)(struct usb_interface *intf ))0,
10438    (struct usb_device_id  const  *)(ems_usb_table), {{{{{0U}, 0U, 0U, (void *)0,
10439                                                         {(struct lock_class_key *)0,
10440                                                          {(struct lock_class *)0,
10441                                                           (struct lock_class *)0},
10442                                                          (char const   *)0, 0, 0UL}}}},
10443                                                      {(struct list_head *)0, (struct list_head *)0}},
10444    {{(char const   *)0, (struct bus_type *)0, (struct module *)0, (char const   *)0,
10445      (_Bool)0, (struct of_device_id  const  *)0, (int (*)(struct device *dev ))0,
10446      (int (*)(struct device *dev ))0, (void (*)(struct device *dev ))0, (int (*)(struct device *dev ,
10447                                                                                  pm_message_t state ))0,
10448      (int (*)(struct device *dev ))0, (struct attribute_group  const  **)0, (struct dev_pm_ops  const  *)0,
10449      (struct driver_private *)0}, 0}, 0U, 0U, 0U};
10450#line 1119
10451static int ems_usb_init(void)  __attribute__((__section__(".init.text"), __no_instrument_function__)) ;
10452#line 1119
10453static int ems_usb_init(void)  __attribute__((__section__(".init.text"), __no_instrument_function__)) ;
10454#line 1119 "/anthill/stuff/tacas-comp/work/current--X--drivers/net/can/usb/ems_usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/net/can/usb/ems_usb.c.common.c"
10455static int ems_usb_init(void) 
10456{ int err ;
10457
10458  {
10459  {
10460#line 1123
10461  printk("<6>CPC-USB kernel driver loaded\n");
10462#line 1126
10463  err = usb_register(& ems_usb_driver);
10464  }
10465#line 1128
10466  if (err) {
10467    {
10468#line 1129
10469    printk("<3>ems_usb: usb_register failed. Error number %d\n\n", err);
10470    }
10471#line 1130
10472    return (err);
10473  } else {
10474
10475  }
10476#line 1133
10477  return (0);
10478}
10479}
10480#line 1136
10481static void ems_usb_exit(void)  __attribute__((__section__(".exit.text"), __no_instrument_function__)) ;
10482#line 1136
10483static void ems_usb_exit(void)  __attribute__((__section__(".exit.text"), __no_instrument_function__)) ;
10484#line 1136 "/anthill/stuff/tacas-comp/work/current--X--drivers/net/can/usb/ems_usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/net/can/usb/ems_usb.c.common.c"
10485static void ems_usb_exit(void) 
10486{ 
10487
10488  {
10489  {
10490#line 1139
10491  usb_deregister(& ems_usb_driver);
10492  }
10493#line 1140
10494  return;
10495}
10496}
10497#line 1142 "/anthill/stuff/tacas-comp/work/current--X--drivers/net/can/usb/ems_usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/net/can/usb/ems_usb.c.common.c"
10498int init_module(void) 
10499{ int tmp___7 ;
10500
10501  {
10502  {
10503#line 1142
10504  tmp___7 = ems_usb_init();
10505  }
10506#line 1142
10507  return (tmp___7);
10508}
10509}
10510#line 1143 "/anthill/stuff/tacas-comp/work/current--X--drivers/net/can/usb/ems_usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/net/can/usb/ems_usb.c.common.c"
10511void cleanup_module(void) 
10512{ 
10513
10514  {
10515  {
10516#line 1143
10517  ems_usb_exit();
10518  }
10519#line 1143
10520  return;
10521}
10522}
10523#line 1161
10524void ldv_check_final_state(void)  __attribute__((__ldv_model__)) ;
10525#line 1164
10526extern void ldv_check_return_value(int res ) ;
10527#line 1167
10528extern void ldv_initialize(void) ;
10529#line 1170
10530extern int nondet_int(void) ;
10531#line 1173 "/anthill/stuff/tacas-comp/work/current--X--drivers/net/can/usb/ems_usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/net/can/usb/ems_usb.c.common.c"
10532int LDV_IN_INTERRUPT  ;
10533#line 1245 "/anthill/stuff/tacas-comp/work/current--X--drivers/net/can/usb/ems_usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/net/can/usb/ems_usb.c.common.c"
10534static int res_ems_usb_open_10  ;
10535#line 1306 "/anthill/stuff/tacas-comp/work/current--X--drivers/net/can/usb/ems_usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/net/can/usb/ems_usb.c.common.c"
10536static int res_ems_usb_close_12  ;
10537#line 1434 "/anthill/stuff/tacas-comp/work/current--X--drivers/net/can/usb/ems_usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/net/can/usb/ems_usb.c.common.c"
10538static int res_ems_usb_probe_16  ;
10539#line 1176 "/anthill/stuff/tacas-comp/work/current--X--drivers/net/can/usb/ems_usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/drivers/net/can/usb/ems_usb.c.common.c"
10540void main(void) 
10541{ struct net_device *var_group1 ;
10542  struct sk_buff *var_group2 ;
10543  struct usb_interface *var_group3 ;
10544  struct usb_device_id  const  *var_ems_usb_probe_16_p1 ;
10545  int tmp___7 ;
10546  int ldv_s_ems_usb_netdev_ops_net_device_ops ;
10547  int ldv_s_ems_usb_driver_usb_driver ;
10548  int tmp___8 ;
10549  int tmp___9 ;
10550  int __cil_tmp10 ;
10551  int __cil_tmp11 ;
10552
10553  {
10554  {
10555#line 1501
10556  LDV_IN_INTERRUPT = 1;
10557#line 1510
10558  ldv_initialize();
10559#line 1573
10560  tmp___7 = ems_usb_init();
10561  }
10562#line 1573
10563  if (tmp___7) {
10564#line 1574
10565    goto ldv_final;
10566  } else {
10567
10568  }
10569#line 1575
10570  ldv_s_ems_usb_netdev_ops_net_device_ops = 0;
10571#line 1578
10572  ldv_s_ems_usb_driver_usb_driver = 0;
10573  {
10574#line 1581
10575  while (1) {
10576    while_continue: /* CIL Label */ ;
10577    {
10578#line 1581
10579    tmp___9 = nondet_int();
10580    }
10581#line 1581
10582    if (tmp___9) {
10583
10584    } else {
10585      {
10586#line 1581
10587      __cil_tmp10 = ldv_s_ems_usb_netdev_ops_net_device_ops == 0;
10588#line 1581
10589      if (! __cil_tmp10) {
10590
10591      } else {
10592        {
10593#line 1581
10594        __cil_tmp11 = ldv_s_ems_usb_driver_usb_driver == 0;
10595#line 1581
10596        if (! __cil_tmp11) {
10597
10598        } else {
10599#line 1581
10600          goto while_break;
10601        }
10602        }
10603      }
10604      }
10605    }
10606    {
10607#line 1586
10608    tmp___8 = nondet_int();
10609    }
10610#line 1588
10611    if (tmp___8 == 0) {
10612#line 1588
10613      goto case_0;
10614    } else
10615#line 1664
10616    if (tmp___8 == 1) {
10617#line 1664
10618      goto case_1;
10619    } else
10620#line 1740
10621    if (tmp___8 == 2) {
10622#line 1740
10623      goto case_2;
10624    } else
10625#line 1813
10626    if (tmp___8 == 3) {
10627#line 1813
10628      goto case_3;
10629    } else
10630#line 1889
10631    if (tmp___8 == 4) {
10632#line 1889
10633      goto case_4;
10634    } else {
10635#line 1962
10636      goto switch_default;
10637#line 1586
10638      if (0) {
10639        case_0: 
10640#line 1591
10641        if (ldv_s_ems_usb_netdev_ops_net_device_ops == 0) {
10642          {
10643#line 1653
10644          res_ems_usb_open_10 = ems_usb_open(var_group1);
10645#line 1654
10646          ldv_check_return_value(res_ems_usb_open_10);
10647          }
10648#line 1655
10649          if (res_ems_usb_open_10 < 0) {
10650#line 1656
10651            goto ldv_module_exit;
10652          } else {
10653
10654          }
10655#line 1657
10656          ldv_s_ems_usb_netdev_ops_net_device_ops = ldv_s_ems_usb_netdev_ops_net_device_ops + 1;
10657        } else {
10658
10659        }
10660#line 1663
10661        goto switch_break;
10662        case_1: 
10663#line 1667
10664        if (ldv_s_ems_usb_netdev_ops_net_device_ops == 1) {
10665          {
10666#line 1729
10667          res_ems_usb_close_12 = ems_usb_close(var_group1);
10668#line 1730
10669          ldv_check_return_value(res_ems_usb_close_12);
10670          }
10671#line 1731
10672          if (res_ems_usb_close_12) {
10673#line 1732
10674            goto ldv_module_exit;
10675          } else {
10676
10677          }
10678#line 1733
10679          ldv_s_ems_usb_netdev_ops_net_device_ops = 0;
10680        } else {
10681
10682        }
10683#line 1739
10684        goto switch_break;
10685        case_2: 
10686        {
10687#line 1805
10688        ems_usb_start_xmit(var_group2, var_group1);
10689        }
10690#line 1812
10691        goto switch_break;
10692        case_3: 
10693#line 1816
10694        if (ldv_s_ems_usb_driver_usb_driver == 0) {
10695          {
10696#line 1878
10697          res_ems_usb_probe_16 = ems_usb_probe(var_group3, var_ems_usb_probe_16_p1);
10698#line 1879
10699          ldv_check_return_value(res_ems_usb_probe_16);
10700          }
10701#line 1880
10702          if (res_ems_usb_probe_16) {
10703#line 1881
10704            goto ldv_module_exit;
10705          } else {
10706
10707          }
10708#line 1882
10709          ldv_s_ems_usb_driver_usb_driver = ldv_s_ems_usb_driver_usb_driver + 1;
10710        } else {
10711
10712        }
10713#line 1888
10714        goto switch_break;
10715        case_4: 
10716#line 1892
10717        if (ldv_s_ems_usb_driver_usb_driver == 1) {
10718          {
10719#line 1954
10720          ems_usb_disconnect(var_group3);
10721#line 1955
10722          ldv_s_ems_usb_driver_usb_driver = 0;
10723          }
10724        } else {
10725
10726        }
10727#line 1961
10728        goto switch_break;
10729        switch_default: 
10730#line 1962
10731        goto switch_break;
10732      } else {
10733        switch_break: ;
10734      }
10735    }
10736  }
10737  while_break___0: /* CIL Label */ ;
10738  }
10739
10740  while_break: ;
10741  ldv_module_exit: 
10742  {
10743#line 2031
10744  ems_usb_exit();
10745  }
10746  ldv_final: 
10747  {
10748#line 2034
10749  ldv_check_final_state();
10750  }
10751#line 2037
10752  return;
10753}
10754}
10755#line 5 "/anthill/stuff/tacas-comp/work/current--X--drivers/net/can/usb/ems_usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/kernel-rules/files/engine-blast-assert.h"
10756void ldv_blast_assert(void) 
10757{ 
10758
10759  {
10760  ERROR: 
10761#line 6
10762  goto ERROR;
10763}
10764}
10765#line 7 "/anthill/stuff/tacas-comp/work/current--X--drivers/net/can/usb/ems_usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/kernel-rules/files/engine-blast.h"
10766extern void *ldv_undefined_pointer(void) ;
10767#line 10 "/anthill/stuff/tacas-comp/work/current--X--drivers/net/can/usb/ems_usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/kernel-rules/files/model0068.c"
10768void ldv_assume_stop(void)  __attribute__((__ldv_model_inline__)) ;
10769#line 22
10770void ldv_assume_stop(void)  __attribute__((__ldv_model_inline__)) ;
10771#line 22 "/anthill/stuff/tacas-comp/work/current--X--drivers/net/can/usb/ems_usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/kernel-rules/files/model0068.c"
10772void ldv_assume_stop(void) 
10773{ 
10774
10775  {
10776  LDV_STOP: 
10777#line 23
10778  goto LDV_STOP;
10779}
10780}
10781#line 29 "/anthill/stuff/tacas-comp/work/current--X--drivers/net/can/usb/ems_usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/kernel-rules/files/model0068.c"
10782int ldv_urb_state  =    0;
10783#line 31 "/anthill/stuff/tacas-comp/work/current--X--drivers/net/can/usb/ems_usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/kernel-rules/files/model0068.c"
10784int ldv_coherent_state  =    0;
10785#line 62
10786void *usb_alloc_coherent(struct usb_device *dev , size_t size , gfp_t mem_flags ,
10787                         dma_addr_t *dma )  __attribute__((__ldv_model__)) ;
10788#line 62 "/anthill/stuff/tacas-comp/work/current--X--drivers/net/can/usb/ems_usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/kernel-rules/files/model0068.c"
10789void *usb_alloc_coherent(struct usb_device *dev , size_t size , gfp_t mem_flags ,
10790                         dma_addr_t *dma ) 
10791{ void *arbitrary_memory ;
10792  void *tmp___7 ;
10793
10794  {
10795  {
10796#line 64
10797  while (1) {
10798    while_continue: /* CIL Label */ ;
10799    {
10800#line 64
10801    tmp___7 = ldv_undefined_pointer();
10802#line 64
10803    arbitrary_memory = tmp___7;
10804    }
10805#line 64
10806    if (! arbitrary_memory) {
10807#line 64
10808      return ((void *)0);
10809    } else {
10810
10811    }
10812#line 64
10813    ldv_coherent_state = ldv_coherent_state + 1;
10814#line 64
10815    return (arbitrary_memory);
10816#line 64
10817    goto while_break;
10818  }
10819  while_break___0: /* CIL Label */ ;
10820  }
10821
10822  while_break: ;
10823#line 65
10824  return ((void *)0);
10825}
10826}
10827#line 68
10828void usb_free_coherent(struct usb_device *dev , size_t size , void *addr , dma_addr_t dma )  __attribute__((__ldv_model__)) ;
10829#line 68 "/anthill/stuff/tacas-comp/work/current--X--drivers/net/can/usb/ems_usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/kernel-rules/files/model0068.c"
10830void usb_free_coherent(struct usb_device *dev , size_t size , void *addr , dma_addr_t dma ) 
10831{ void *__cil_tmp5 ;
10832  unsigned long __cil_tmp6 ;
10833  unsigned long __cil_tmp7 ;
10834  int __cil_tmp8 ;
10835
10836  {
10837  {
10838#line 70
10839  while (1) {
10840    while_continue: /* CIL Label */ ;
10841
10842    {
10843#line 70
10844    __cil_tmp5 = (void *)0;
10845#line 70
10846    __cil_tmp6 = (unsigned long )__cil_tmp5;
10847#line 70
10848    __cil_tmp7 = (unsigned long )addr;
10849#line 70
10850    __cil_tmp8 = __cil_tmp7 != __cil_tmp6;
10851#line 70
10852    if (! __cil_tmp8) {
10853      {
10854#line 70
10855      ldv_assume_stop();
10856      }
10857    } else {
10858
10859    }
10860    }
10861#line 70
10862    if (addr) {
10863#line 70
10864      if (ldv_coherent_state >= 1) {
10865
10866      } else {
10867        {
10868#line 70
10869        ldv_blast_assert();
10870        }
10871      }
10872#line 70
10873      ldv_coherent_state = ldv_coherent_state - 1;
10874    } else {
10875
10876    }
10877#line 70
10878    goto while_break;
10879  }
10880  while_break___0: /* CIL Label */ ;
10881  }
10882
10883  while_break: ;
10884#line 71
10885  return;
10886}
10887}
10888#line 74
10889struct urb *usb_alloc_urb(int iso_packets , gfp_t mem_flags )  __attribute__((__ldv_model__)) ;
10890#line 74 "/anthill/stuff/tacas-comp/work/current--X--drivers/net/can/usb/ems_usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/kernel-rules/files/model0068.c"
10891struct urb *usb_alloc_urb(int iso_packets , gfp_t mem_flags ) 
10892{ void *arbitrary_memory ;
10893  void *tmp___7 ;
10894  void *__cil_tmp5 ;
10895
10896  {
10897  {
10898#line 75
10899  while (1) {
10900    while_continue: /* CIL Label */ ;
10901    {
10902#line 75
10903    tmp___7 = ldv_undefined_pointer();
10904#line 75
10905    arbitrary_memory = tmp___7;
10906    }
10907#line 75
10908    if (! arbitrary_memory) {
10909      {
10910#line 75
10911      __cil_tmp5 = (void *)0;
10912#line 75
10913      return ((struct urb *)__cil_tmp5);
10914      }
10915    } else {
10916
10917    }
10918#line 75
10919    ldv_urb_state = ldv_urb_state + 1;
10920#line 75
10921    return ((struct urb *)arbitrary_memory);
10922#line 75
10923    goto while_break;
10924  }
10925  while_break___0: /* CIL Label */ ;
10926  }
10927
10928  while_break: ;
10929#line 76
10930  return ((struct urb *)0);
10931}
10932}
10933#line 79
10934void usb_free_urb(struct urb *urb )  __attribute__((__ldv_model__)) ;
10935#line 79 "/anthill/stuff/tacas-comp/work/current--X--drivers/net/can/usb/ems_usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/kernel-rules/files/model0068.c"
10936void usb_free_urb(struct urb *urb ) 
10937{ struct urb *__cil_tmp2 ;
10938  unsigned long __cil_tmp3 ;
10939  unsigned long __cil_tmp4 ;
10940  int __cil_tmp5 ;
10941
10942  {
10943  {
10944#line 80
10945  while (1) {
10946    while_continue: /* CIL Label */ ;
10947
10948    {
10949#line 80
10950    __cil_tmp2 = (struct urb *)0;
10951#line 80
10952    __cil_tmp3 = (unsigned long )__cil_tmp2;
10953#line 80
10954    __cil_tmp4 = (unsigned long )urb;
10955#line 80
10956    __cil_tmp5 = __cil_tmp4 != __cil_tmp3;
10957#line 80
10958    if (! __cil_tmp5) {
10959      {
10960#line 80
10961      ldv_assume_stop();
10962      }
10963    } else {
10964
10965    }
10966    }
10967#line 80
10968    if (urb) {
10969#line 80
10970      if (ldv_urb_state >= 1) {
10971
10972      } else {
10973        {
10974#line 80
10975        ldv_blast_assert();
10976        }
10977      }
10978#line 80
10979      ldv_urb_state = ldv_urb_state - 1;
10980    } else {
10981
10982    }
10983#line 80
10984    goto while_break;
10985  }
10986  while_break___0: /* CIL Label */ ;
10987  }
10988
10989  while_break: ;
10990#line 81
10991  return;
10992}
10993}
10994#line 84
10995void ldv_check_final_state(void)  __attribute__((__ldv_model__)) ;
10996#line 84 "/anthill/stuff/tacas-comp/work/current--X--drivers/net/can/usb/ems_usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/68_1/kernel-rules/files/model0068.c"
10997void ldv_check_final_state(void) 
10998{ 
10999
11000  {
11001#line 86
11002  if (ldv_urb_state == 0) {
11003
11004  } else {
11005    {
11006#line 86
11007    ldv_blast_assert();
11008    }
11009  }
11010#line 88
11011  if (ldv_coherent_state == 0) {
11012
11013  } else {
11014    {
11015#line 88
11016    ldv_blast_assert();
11017    }
11018  }
11019#line 89
11020  return;
11021}
11022}