scripts/cpa.sh -heap 50000M -noout -disable-java-assertions -predicateAnalysis-PredAbsRefiner-ABEl -setprop cpa.predicate.handlePointerAliasing=false -64 -timelimit 900s -stats -spec test/programs/benchmarks/ldv-linux-3.0/ALL.prp test/programs/benchmarks/ldv-linux-3.0/module_get_put-drivers-atm-eni.ko_true-unreach-call.cil.out.i.pp.i -------------------------------------------------------------------------------- Running CPAchecker with Java heap of size 50000M. Using the following resource limits: CPU-time limit of 900s (ResourceLimitChecker.fromConfiguration, INFO) CPAchecker 1.4-svn (OpenJDK 64-Bit Server VM 1.7.0_65) started (CPAchecker.run, INFO) line 6327: Dead code detected: __asm__ ("movb %%gs:%P1,%0": "=q" (pfo_ret__): "p" (& current_task)); (CFACreationUtils.addEdgeToCFA, INFO) line 6331: Dead code detected: __asm__ ("movw %%gs:%P1,%0": "=r" (pfo_ret__): "p" (& current_task)); (CFACreationUtils.addEdgeToCFA, INFO) line 6335: Dead code detected: __asm__ ("movl %%gs:%P1,%0": "=r" (pfo_ret__): "p" (& current_task)); (CFACreationUtils.addEdgeToCFA, INFO) line 6323: Dead code detected: Goto: switch_default (CFACreationUtils.addEdgeToCFA, INFO) Dead code detected: Label switch_default is not reachable. (CFAFunctionBuilder.leave, INFO) line 9422: Dead code detected: tmp___2 = get_current(); (CFACreationUtils.addEdgeToCFA, INFO) line 9432: Dead code detected: tmp___3 = get_current(); (CFACreationUtils.addEdgeToCFA, INFO) line 9442: Dead code detected: tmp___4 = get_current(); (CFACreationUtils.addEdgeToCFA, INFO) line 9417: Dead code detected: Goto: switch_default (CFACreationUtils.addEdgeToCFA, INFO) line 9509: Dead code detected: tmp___6 = get_current(); (CFACreationUtils.addEdgeToCFA, INFO) line 9519: Dead code detected: tmp___7 = get_current(); (CFACreationUtils.addEdgeToCFA, INFO) line 9529: Dead code detected: tmp___8 = get_current(); (CFACreationUtils.addEdgeToCFA, INFO) line 9504: Dead code detected: Goto: switch_default___0 (CFACreationUtils.addEdgeToCFA, INFO) line 9602: Dead code detected: tmp___12 = get_current(); (CFACreationUtils.addEdgeToCFA, INFO) line 9612: Dead code detected: tmp___13 = get_current(); (CFACreationUtils.addEdgeToCFA, INFO) line 9622: Dead code detected: tmp___14 = get_current(); (CFACreationUtils.addEdgeToCFA, INFO) line 9597: Dead code detected: Goto: switch_default___1 (CFACreationUtils.addEdgeToCFA, INFO) line 9667: Dead code detected: tmp___16 = get_current(); (CFACreationUtils.addEdgeToCFA, INFO) line 9677: Dead code detected: tmp___17 = get_current(); (CFACreationUtils.addEdgeToCFA, INFO) line 9687: Dead code detected: tmp___18 = get_current(); (CFACreationUtils.addEdgeToCFA, INFO) line 9662: Dead code detected: Goto: switch_default___2 (CFACreationUtils.addEdgeToCFA, INFO) Dead code detected: Label switch_default is not reachable. (CFAFunctionBuilder.leave, INFO) line 11206: Dead code detected: tmp___0 = get_current(); (CFACreationUtils.addEdgeToCFA, INFO) line 11216: Dead code detected: tmp___1 = get_current(); (CFACreationUtils.addEdgeToCFA, INFO) line 11226: Dead code detected: tmp___2 = get_current(); (CFACreationUtils.addEdgeToCFA, INFO) line 11201: Dead code detected: Goto: switch_default (CFACreationUtils.addEdgeToCFA, INFO) line 11305: Dead code detected: tmp___6 = get_current(); (CFACreationUtils.addEdgeToCFA, INFO) line 11315: Dead code detected: tmp___7 = get_current(); (CFACreationUtils.addEdgeToCFA, INFO) line 11325: Dead code detected: tmp___8 = get_current(); (CFACreationUtils.addEdgeToCFA, INFO) line 11300: Dead code detected: Goto: switch_default___0 (CFACreationUtils.addEdgeToCFA, INFO) line 11370: Dead code detected: tmp___10 = get_current(); (CFACreationUtils.addEdgeToCFA, INFO) line 11380: Dead code detected: tmp___11 = get_current(); (CFACreationUtils.addEdgeToCFA, INFO) line 11390: Dead code detected: tmp___12 = get_current(); (CFACreationUtils.addEdgeToCFA, INFO) line 11365: Dead code detected: Goto: switch_default___1 (CFACreationUtils.addEdgeToCFA, INFO) Dead code detected: Label switch_default is not reachable. (CFAFunctionBuilder.leave, INFO) line 11649: Dead code detected: __ptr = (u8 volatile *)(& eni_dev->events); (CFACreationUtils.addEdgeToCFA, INFO) line 11655: Dead code detected: __ptr___0 = (u16 volatile *)(& eni_dev->events); (CFACreationUtils.addEdgeToCFA, INFO) line 11668: Dead code detected: __ptr___2 = (u64 volatile *)(& eni_dev->events); (CFACreationUtils.addEdgeToCFA, INFO) line 11645: Dead code detected: Goto: switch_default (CFACreationUtils.addEdgeToCFA, INFO) Dead code detected: Label switch_default is not reachable. (CFAFunctionBuilder.leave, INFO) Inline assembler ignored, analysis is probably unsound! (CFABuilder.createCFA, WARNING) line 6962: Function pointer *(ops__1->alloc_coherent) with type void * (*)(struct device *, size_t , dma_addr_t *, gfp_t ) is called, but no possible target functions were found. (CFunctionPointerResolver.replaceFunctionPointerCall, WARNING) line 7017: Function pointer *(ops__1->free_coherent) with type void (*)(struct device *, size_t , void *, dma_addr_t ) is called, but no possible target functions were found. (CFunctionPointerResolver.replaceFunctionPointerCall, WARNING) lines 6788-6789: Function pointer *(ops__1->map_page) with type dma_addr_t (*)(struct device *, struct page *, unsigned long int, size_t , enum dma_data_direction , struct dma_attrs *) is called, but no possible target functions were found. (CFunctionPointerResolver.replaceFunctionPointerCall, WARNING) line 6838: Function pointer *(ops__1->unmap_page) with type void (*)(struct device *, dma_addr_t , size_t , enum dma_data_direction , struct dma_attrs *) is called, but no possible target functions were found. (CFunctionPointerResolver.replaceFunctionPointerCall, WARNING) Handling of pointer aliasing is disabled, analysis is unsound if aliased pointers exist. (PredicateCPA:PathFormulaManagerImpl., WARNING) Using predicate analysis with SMTInterpol 2.1-174-ga199d47-comp and JFactory 1.21. (PredicateCPA:PredicateCPA., INFO) Using refinement for predicate analysis with PredicateAbstractionRefinementStrategy strategy. (PredicateCPA:PredicateCPARefiner., INFO) The following configuration options were specified but are not used: cpa.predicate.memoryAllocationsAlwaysSucceed cpa.predicate.maxPreFilledAllocationSize (CPAchecker.printConfigurationWarnings, WARNING) Starting analysis ... (CPAchecker.runAlgorithm, INFO) Program contains array, or pointer (multiple level of indirection), or field (enable handleFieldAccess and handleFieldAliasing) access; analysis is imprecise in case of aliasing. (PredicateCPA:CtoFormulaConverter.makeVariableUnsafe, WARNING) Assuming external function ldv_initialize to be a constant function. (PredicateCPA:ExpressionToFormulaVisitor.visit, INFO) Assuming external function __pci_register_driver to be a pure function. (PredicateCPA:ExpressionToFormulaVisitor.visit, INFO) line 11594: Ignoring function call through function pointer *(dev->phy->interrupt): (*(dev->phy->interrupt))(dev); (PredicateCPA:ExpressionToFormulaVisitor.visit, WARNING) Assuming external function __const_udelay to be a pure function. (PredicateCPA:ExpressionToFormulaVisitor.visit, INFO) Assuming external function add_wait_queue to be a pure function. (PredicateCPA:ExpressionToFormulaVisitor.visit, INFO) Assuming external function schedule to be a constant function. (PredicateCPA:ExpressionToFormulaVisitor.visit, INFO) Assuming external function remove_wait_queue to be a pure function. (PredicateCPA:ExpressionToFormulaVisitor.visit, INFO) Assuming external function _raw_spin_lock_irqsave to be a pure function. (PredicateCPA:ExpressionToFormulaVisitor.visit, INFO) Assuming external function _raw_spin_unlock_irqrestore to be a pure function. (PredicateCPA:ExpressionToFormulaVisitor.visit, INFO) Assuming external function skb_dequeue to be a pure function. (PredicateCPA:ExpressionToFormulaVisitor.visit, INFO) Assuming external function skb_queue_head to be a pure function. (PredicateCPA:ExpressionToFormulaVisitor.visit, INFO) line 6838: Ignoring function call through function pointer *(ops__1->unmap_page): (*(ops__1->unmap_page))(dev, addr, size, dir, attrs); (PredicateCPA:ExpressionToFormulaVisitor.visit, WARNING) Assuming external function debug_dma_unmap_page to be a pure function. (PredicateCPA:ExpressionToFormulaVisitor.visit, INFO) Assuming external function memset to be a pure function. (PredicateCPA:ExpressionToFormulaVisitor.visit, INFO) line 9143: Ignoring function call through function pointer *(vcc->push): (*(vcc->push))(vcc, skb); (PredicateCPA:ExpressionToFormulaVisitor.visit, WARNING) Assuming external function dev_kfree_skb_irq to be a pure function. (PredicateCPA:ExpressionToFormulaVisitor.visit, INFO) Assuming external function __wake_up to be a pure function. (PredicateCPA:ExpressionToFormulaVisitor.visit, INFO) line 8768: Ignoring function call through function pointer *(__CPAchecker_TMP_3->rx): tmp___3 = (*(__CPAchecker_TMP_3->rx))(vcc); (PredicateCPA:ExpressionToFormulaVisitor.visit, WARNING) Assuming external function atm_alloc_charge to be a pure function. (PredicateCPA:ExpressionToFormulaVisitor.visit, INFO) Assuming external function skb_put to be a pure function. (PredicateCPA:ExpressionToFormulaVisitor.visit, INFO) Assuming external function __phys_addr to be a pure function. (PredicateCPA:ExpressionToFormulaVisitor.visit, INFO) lines 6788-6789: Ignoring function call through function pointer *(ops__1->map_page): addr = (*(ops__1->map_page))(dev, (struct page *)(1152897315351035904UL + (tmp___2 >> 12)), ((unsigned long)ptr) & 4095UL, size, dir, attrs); (PredicateCPA:ExpressionToFormulaVisitor.visit, WARNING) Assuming external function debug_dma_map_page to be a pure function. (PredicateCPA:ExpressionToFormulaVisitor.visit, INFO) Assuming external function skb_queue_tail to be a pure function. (PredicateCPA:ExpressionToFormulaVisitor.visit, INFO) Assuming external function __raw_spin_lock_init to be a pure function. (PredicateCPA:ExpressionToFormulaVisitor.visit, INFO) Assuming external function atm_pcr_goal to be a pure function. (PredicateCPA:ExpressionToFormulaVisitor.visit, INFO) line 8728: Ignoring function call through function pointer *(__CPAchecker_TMP_2->rx): tmp___0 = (*(__CPAchecker_TMP_2->rx))(vcc); (PredicateCPA:ExpressionToFormulaVisitor.visit, WARNING) Warning: Analysis stopped (The CPU-time limit of 900s has elapsed.) (ShutdownNotifier.shutdownIfNecessary, WARNING) Shutdown requested (The CPU-time limit of 900s has elapsed.), waiting for termination. (ForceTerminationOnShutdown$1.shutdownRequested, WARNING) PredicateCPA statistics ----------------------- Number of abstractions: 459685 (6% of all post computations) Times abstraction was reused: 0 Because of function entry/exit: 0 (0%) Because of loop head: 459685 (100%) Because of join nodes: 0 (0%) Because of threshold: 0 (0%) Times precision was empty: 459685 (100%) Times precision was {false}: 0 (0%) Times result was cached: 0 (0%) Times cartesian abs was used: 0 (0%) Times boolean abs was used: 0 (0%) Times result was 'false': 0 (0%) Number of strengthen sat checks: 0 Number of coverage checks: 795636 BDD entailment checks: 296210 Number of SMT sat checks: 0 trivial: 0 cached: 0 Max ABE block size: 162 Number of predicates discovered: 0 Number of path formula cache hits: 893465 (12%) Time for post operator: 88.840s Time for path formula creation: 76.382s Actual computation: 51.823s Time for strengthen operator: 7.323s Time for prec operator: 41.043s Time for abstraction: 33.120s (Max: 5.042s, Count: 459685) Solving time: 0.000s (Max: 0.000s) Model enumeration time: 0.000s Time for BDD construction: 0.000s (Max: 0.000s) Time for merge operator: 13.670s Time for coverage check: 1.715s Time for BDD entailment checks: 0.812s Total time for SMT solver (w/o itp): 0.000s Number of BDD nodes: 202 Size of BDD node table: 10007 Size of BDD node cleanup queue: 0 (count: 755896, min: 0, max: 0, avg: 0,00) Time for BDD node cleanup: 0.630s Time for BDD garbage collection: 0.000s (in 0 runs) PrecisionBootstrap statistics ----------------------------- Init. function predicates: 0 Init. global predicates: 0 Init. location predicates: 0 AutomatonAnalysis (SVCOMP) statistics ------------------------------------- Number of states: 1 Total time for successor computation: 74.222s Time for transition matches: 21.669s Time for transition assertions: 0.000s Time for transition actions: 0.000s Automaton transfers with branching: 0 Automaton transfer successors: 13796709 (count: 13796709, min: 1, max: 1, avg: 1,00) [1 x 13796709] CPA algorithm statistics ------------------------ Number of iterations: 6525513 Max size of waitlist: 71135 Average size of waitlist: 36849 Number of computed successors: 7141100 Max successors for one state: 2 Number of times merged: 249713 Number of times stopped: 545923 Number of times breaked: 0 Total time for CPA algorithm: 359.014s (Max: 359.014s) Time for choose from waitlist: 6.375s Time for precision adjustment: 56.466s Time for transfer relation: 215.873s Time for merge operator: 17.859s Time for stop operator: 10.693s Time for adding to reached set: 15.892s Predicate-Abstraction Refiner statistics ---------------------------------------- Predicate creation: 0.000s Precision update: 0.000s ARG update: 0.000s Length of refined path (in blocks): 0 (count: 0, min: 0, max: 0, avg: 0,00) Number of affected states: 0 (count: 0, min: 0, max: 0, avg: 0,00) Length (states) of path with itp 'true': 0 (count: 0, min: 0, max: 0, avg: 0,00) Length (states) of path with itp non-trivial itp: 0 (count: 0, min: 0, max: 0, avg: 0,00) Length (states) of path with itp 'false': 0 (count: 0, min: 0, max: 0, avg: 0,00) Different non-trivial interpolants along paths: 0 (count: 0, min: 0, max: 0, avg: 0,00) Equal non-trivial interpolants along paths: 0 (count: 0, min: 0, max: 0, avg: 0,00) Different precisions along paths: 0 (count: 0, min: 0, max: 0, avg: 0,00) Equal precisions along paths: 0 (count: 0, min: 0, max: 0, avg: 0,00) Number of refs with location-based cutoff: 0 CEGAR algorithm statistics -------------------------- Number of refinements: 0 Counterexample-Check Algorithm statistics ----------------------------------------- Number of counterexample checks: 0 CPAchecker general statistics ----------------------------- Number of program locations: 2668 Number of functions: 111 Number of loops: 46 Size of reached set: 6595178 Size of final wait list 69665 Time for analysis setup: 3.708s Time for loading CPAs: 0.667s Time for loading parser: 0.338s Time for CFA construction: 2.611s Time for parsing file(s): 0.783s Time for AST to CFA: 1.130s Time for CFA sanity check: 0.000s Time for post-processing: 0.496s Time for var class.: 0.000s Time for Analysis: 359.014s CPU time for analysis: 892.990s Total time for CPAchecker: 362.724s Total CPU time for CPAchecker: 900.180s Time for Garbage Collector: 39.584s (in 23 runs) Garbage Collector(s) used: PS MarkSweep, PS Scavenge Used heap memory: 21385MB ( 20394 MiB) max; 9845MB ( 9389 MiB) avg; 23613MB ( 22519 MiB) peak Used non-heap memory: 26MB ( 25 MiB) max; 23MB ( 22 MiB) avg; 26MB ( 25 MiB) peak Used in PS Old Gen pool: 7201MB ( 6868 MiB) max; 3815MB ( 3638 MiB) avg; 7201MB ( 6868 MiB) peak Allocated heap memory: 25743MB ( 24551 MiB) max; 16999MB ( 16212 MiB) avg Allocated non-heap memory: 49MB ( 47 MiB) max; 43MB ( 41 MiB) avg Total process virtual memory: 57056MB ( 54412 MiB) max; 57054MB ( 54411 MiB) avg Verification result: UNKNOWN, incomplete analysis. More details about the verification run can be found in the directory "./output".