./Ultimate.py --spec ../sv-benchmarks/c/properties/unreach-call.prp --file ../sv-benchmarks/c/ldv-validator-v0.8/linux-stable-39a1d13-1-101_1a-drivers--block--virtio_blk.ko-entry_point_ldv-val-v0.8.cil.out.i --full-output -ea --architecture 64bit -------------------------------------------------------------------------------- Checking for ERROR reachability Using default analysis Version 03d7b7b3 Calling Ultimate with: /usr/bin/java -Dosgi.configuration.area=/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/config -Xmx15G -Xms4m -ea -jar /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/org.eclipse.equinox.launcher_1.5.800.v20200727-1323.jar -data @noDefault -ultimatedata /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data -tc /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/AutomizerReach.xml -i ../sv-benchmarks/c/ldv-validator-v0.8/linux-stable-39a1d13-1-101_1a-drivers--block--virtio_blk.ko-entry_point_ldv-val-v0.8.cil.out.i -s /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-64bit-Automizer_Default.epf --cacsl2boogietranslator.entry.function main --witnessprinter.witness.directory /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux --witnessprinter.witness.filename witness.graphml --witnessprinter.write.witness.besides.input.file false --witnessprinter.graph.data.specification CHECK( init(main()), LTL(G ! call(reach_error())) ) --witnessprinter.graph.data.producer Automizer --witnessprinter.graph.data.architecture 64bit --witnessprinter.graph.data.programhash 8946ad2f029076f7c4f90de60a8c48e069f80fec06a0c6d7a5dc3a1fc4182879 --- Real Ultimate output --- This is Ultimate 0.2.2-dev-03d7b7b [2022-02-20 22:05:46,537 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-02-20 22:05:46,539 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-02-20 22:05:46,559 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-02-20 22:05:46,559 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-02-20 22:05:46,560 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-02-20 22:05:46,561 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-02-20 22:05:46,563 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-02-20 22:05:46,564 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-02-20 22:05:46,565 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-02-20 22:05:46,565 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-02-20 22:05:46,566 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-02-20 22:05:46,567 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-02-20 22:05:46,567 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-02-20 22:05:46,568 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-02-20 22:05:46,569 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-02-20 22:05:46,569 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-02-20 22:05:46,570 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-02-20 22:05:46,571 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-02-20 22:05:46,573 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-02-20 22:05:46,574 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-02-20 22:05:46,587 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-02-20 22:05:46,589 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-02-20 22:05:46,591 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-02-20 22:05:46,600 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-02-20 22:05:46,601 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-02-20 22:05:46,601 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-02-20 22:05:46,602 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-02-20 22:05:46,603 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-02-20 22:05:46,604 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-02-20 22:05:46,604 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-02-20 22:05:46,605 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-02-20 22:05:46,606 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-02-20 22:05:46,607 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-02-20 22:05:46,608 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-02-20 22:05:46,608 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-02-20 22:05:46,609 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-02-20 22:05:46,609 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-02-20 22:05:46,609 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-02-20 22:05:46,609 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-02-20 22:05:46,610 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-02-20 22:05:46,611 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-64bit-Automizer_Default.epf [2022-02-20 22:05:46,637 INFO L113 SettingsManager]: Loading preferences was successful [2022-02-20 22:05:46,638 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-02-20 22:05:46,638 INFO L136 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2022-02-20 22:05:46,638 INFO L138 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2022-02-20 22:05:46,639 INFO L136 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2022-02-20 22:05:46,639 INFO L138 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2022-02-20 22:05:46,640 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-02-20 22:05:46,640 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-02-20 22:05:46,640 INFO L138 SettingsManager]: * Use SBE=true [2022-02-20 22:05:46,640 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-02-20 22:05:46,641 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-02-20 22:05:46,641 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-02-20 22:05:46,641 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-02-20 22:05:46,641 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-02-20 22:05:46,641 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-02-20 22:05:46,641 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-02-20 22:05:46,642 INFO L138 SettingsManager]: * Use constant arrays=true [2022-02-20 22:05:46,642 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-02-20 22:05:46,642 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-02-20 22:05:46,642 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-02-20 22:05:46,642 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-02-20 22:05:46,642 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-02-20 22:05:46,642 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-02-20 22:05:46,643 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2022-02-20 22:05:46,643 INFO L138 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2022-02-20 22:05:46,643 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-02-20 22:05:46,643 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2022-02-20 22:05:46,643 INFO L138 SettingsManager]: * Large block encoding in concurrent analysis=OFF [2022-02-20 22:05:46,643 INFO L138 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2022-02-20 22:05:46,644 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-02-20 22:05:46,644 INFO L138 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 (file:/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/com.sun.xml.bind_2.2.0.v201505121915.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int) WARNING: Please consider reporting this to the maintainers of com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release Applying setting for plugin de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator: Entry function -> main Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Witness directory -> /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Witness filename -> witness.graphml Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Write witness besides input file -> false Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data specification -> CHECK( init(main()), LTL(G ! call(reach_error())) ) Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data producer -> Automizer Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data architecture -> 64bit Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data programhash -> 8946ad2f029076f7c4f90de60a8c48e069f80fec06a0c6d7a5dc3a1fc4182879 [2022-02-20 22:05:46,858 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-02-20 22:05:46,876 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-02-20 22:05:46,877 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-02-20 22:05:46,879 INFO L271 PluginConnector]: Initializing CDTParser... [2022-02-20 22:05:46,879 INFO L275 PluginConnector]: CDTParser initialized [2022-02-20 22:05:46,880 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/ldv-validator-v0.8/linux-stable-39a1d13-1-101_1a-drivers--block--virtio_blk.ko-entry_point_ldv-val-v0.8.cil.out.i [2022-02-20 22:05:46,941 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/46bdae3df/49a400d336cc42c1a3641366b4c38052/FLAGc91353563 [2022-02-20 22:05:47,451 INFO L306 CDTParser]: Found 1 translation units. [2022-02-20 22:05:47,452 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/ldv-validator-v0.8/linux-stable-39a1d13-1-101_1a-drivers--block--virtio_blk.ko-entry_point_ldv-val-v0.8.cil.out.i [2022-02-20 22:05:47,477 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/46bdae3df/49a400d336cc42c1a3641366b4c38052/FLAGc91353563 [2022-02-20 22:05:47,957 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/46bdae3df/49a400d336cc42c1a3641366b4c38052 [2022-02-20 22:05:47,959 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-02-20 22:05:47,960 INFO L131 ToolchainWalker]: Walking toolchain with 6 elements. [2022-02-20 22:05:47,972 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-02-20 22:05:47,972 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-02-20 22:05:47,974 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-02-20 22:05:47,975 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.02 10:05:47" (1/1) ... [2022-02-20 22:05:47,976 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@6b2ab280 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 10:05:47, skipping insertion in model container [2022-02-20 22:05:47,976 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.02 10:05:47" (1/1) ... [2022-02-20 22:05:47,981 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-02-20 22:05:48,039 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-02-20 22:05:48,612 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/ldv-validator-v0.8/linux-stable-39a1d13-1-101_1a-drivers--block--virtio_blk.ko-entry_point_ldv-val-v0.8.cil.out.i[121503,121516] [2022-02-20 22:05:48,630 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-20 22:05:48,641 INFO L203 MainTranslator]: Completed pre-run [2022-02-20 22:05:48,806 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/ldv-validator-v0.8/linux-stable-39a1d13-1-101_1a-drivers--block--virtio_blk.ko-entry_point_ldv-val-v0.8.cil.out.i[121503,121516] [2022-02-20 22:05:48,814 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-20 22:05:48,865 INFO L208 MainTranslator]: Completed translation [2022-02-20 22:05:48,865 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 10:05:48 WrapperNode [2022-02-20 22:05:48,866 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-02-20 22:05:48,867 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2022-02-20 22:05:48,868 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2022-02-20 22:05:48,868 INFO L275 PluginConnector]: Boogie Procedure Inliner initialized [2022-02-20 22:05:48,873 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 10:05:48" (1/1) ... [2022-02-20 22:05:48,922 INFO L185 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 10:05:48" (1/1) ... [2022-02-20 22:05:49,010 INFO L137 Inliner]: procedures = 142, calls = 521, calls flagged for inlining = 83, calls inlined = 83, statements flattened = 1668 [2022-02-20 22:05:49,011 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2022-02-20 22:05:49,012 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-02-20 22:05:49,012 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-02-20 22:05:49,012 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-02-20 22:05:49,018 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 10:05:48" (1/1) ... [2022-02-20 22:05:49,018 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 10:05:48" (1/1) ... [2022-02-20 22:05:49,034 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 10:05:48" (1/1) ... [2022-02-20 22:05:49,035 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 10:05:48" (1/1) ... [2022-02-20 22:05:49,092 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 10:05:48" (1/1) ... [2022-02-20 22:05:49,097 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 10:05:48" (1/1) ... [2022-02-20 22:05:49,102 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 10:05:48" (1/1) ... [2022-02-20 22:05:49,114 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-02-20 22:05:49,115 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-02-20 22:05:49,115 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-02-20 22:05:49,115 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-02-20 22:05:49,122 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 10:05:48" (1/1) ... [2022-02-20 22:05:49,132 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-02-20 22:05:49,140 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 22:05:49,149 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (exit command is (exit), workingDir is null) [2022-02-20 22:05:49,172 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Waiting until timeout for monitored process [2022-02-20 22:05:49,209 INFO L130 BoogieDeclarations]: Found specification of procedure blk_queue_max_segment_size [2022-02-20 22:05:49,210 INFO L138 BoogieDeclarations]: Found implementation of procedure blk_queue_max_segment_size [2022-02-20 22:05:49,210 INFO L130 BoogieDeclarations]: Found specification of procedure virtio_config_buf [2022-02-20 22:05:49,211 INFO L138 BoogieDeclarations]: Found implementation of procedure virtio_config_buf [2022-02-20 22:05:49,211 INFO L130 BoogieDeclarations]: Found specification of procedure ldv_stop [2022-02-20 22:05:49,211 INFO L138 BoogieDeclarations]: Found implementation of procedure ldv_stop [2022-02-20 22:05:49,211 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-02-20 22:05:49,211 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.meminit [2022-02-20 22:05:49,211 INFO L138 BoogieDeclarations]: Found implementation of procedure #Ultimate.meminit [2022-02-20 22:05:49,211 INFO L130 BoogieDeclarations]: Found specification of procedure req_get_ioprio [2022-02-20 22:05:49,211 INFO L138 BoogieDeclarations]: Found implementation of procedure req_get_ioprio [2022-02-20 22:05:49,211 INFO L130 BoogieDeclarations]: Found specification of procedure ##fun~$Pointer$~X~int~X~$Pointer$~X~int~TO~VOID [2022-02-20 22:05:49,212 INFO L138 BoogieDeclarations]: Found implementation of procedure ##fun~$Pointer$~X~int~X~$Pointer$~X~int~TO~VOID [2022-02-20 22:05:49,212 INFO L130 BoogieDeclarations]: Found specification of procedure ldv_malloc [2022-02-20 22:05:49,213 INFO L138 BoogieDeclarations]: Found implementation of procedure ldv_malloc [2022-02-20 22:05:49,213 INFO L130 BoogieDeclarations]: Found specification of procedure mempool_free [2022-02-20 22:05:49,213 INFO L138 BoogieDeclarations]: Found implementation of procedure mempool_free [2022-02-20 22:05:49,213 INFO L130 BoogieDeclarations]: Found specification of procedure sg_set_buf [2022-02-20 22:05:49,213 INFO L138 BoogieDeclarations]: Found implementation of procedure sg_set_buf [2022-02-20 22:05:49,213 INFO L130 BoogieDeclarations]: Found specification of procedure kfree [2022-02-20 22:05:49,213 INFO L138 BoogieDeclarations]: Found implementation of procedure kfree [2022-02-20 22:05:49,213 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-02-20 22:05:49,213 INFO L130 BoogieDeclarations]: Found specification of procedure ldv_error [2022-02-20 22:05:49,214 INFO L138 BoogieDeclarations]: Found implementation of procedure ldv_error [2022-02-20 22:05:49,214 INFO L130 BoogieDeclarations]: Found specification of procedure ldv__builtin_expect [2022-02-20 22:05:49,214 INFO L138 BoogieDeclarations]: Found implementation of procedure ldv__builtin_expect [2022-02-20 22:05:49,214 INFO L130 BoogieDeclarations]: Found specification of procedure index_to_minor [2022-02-20 22:05:49,214 INFO L138 BoogieDeclarations]: Found implementation of procedure index_to_minor [2022-02-20 22:05:49,214 INFO L130 BoogieDeclarations]: Found specification of procedure ldv_init_zalloc [2022-02-20 22:05:49,214 INFO L138 BoogieDeclarations]: Found implementation of procedure ldv_init_zalloc [2022-02-20 22:05:49,214 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-02-20 22:05:49,214 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-02-20 22:05:49,215 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnHeap [2022-02-20 22:05:49,215 INFO L130 BoogieDeclarations]: Found specification of procedure ldv_memset [2022-02-20 22:05:49,215 INFO L138 BoogieDeclarations]: Found implementation of procedure ldv_memset [2022-02-20 22:05:49,215 INFO L130 BoogieDeclarations]: Found specification of procedure spinlock_check [2022-02-20 22:05:49,215 INFO L138 BoogieDeclarations]: Found implementation of procedure spinlock_check [2022-02-20 22:05:49,215 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-02-20 22:05:49,215 INFO L130 BoogieDeclarations]: Found specification of procedure virtio_has_feature [2022-02-20 22:05:49,216 INFO L138 BoogieDeclarations]: Found implementation of procedure virtio_has_feature [2022-02-20 22:05:49,216 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnStack [2022-02-20 22:05:49,216 INFO L130 BoogieDeclarations]: Found specification of procedure write~$Pointer$ [2022-02-20 22:05:49,216 INFO L130 BoogieDeclarations]: Found specification of procedure ##fun~$Pointer$~TO~VOID [2022-02-20 22:05:49,216 INFO L138 BoogieDeclarations]: Found implementation of procedure ##fun~$Pointer$~TO~VOID [2022-02-20 22:05:49,216 INFO L130 BoogieDeclarations]: Found specification of procedure virtblk_remove [2022-02-20 22:05:49,216 INFO L138 BoogieDeclarations]: Found implementation of procedure virtblk_remove [2022-02-20 22:05:49,216 INFO L130 BoogieDeclarations]: Found specification of procedure mempool_destroy [2022-02-20 22:05:49,217 INFO L138 BoogieDeclarations]: Found implementation of procedure mempool_destroy [2022-02-20 22:05:49,217 INFO L130 BoogieDeclarations]: Found specification of procedure read~$Pointer$ [2022-02-20 22:05:49,217 INFO L130 BoogieDeclarations]: Found specification of procedure PTR_ERR [2022-02-20 22:05:49,217 INFO L138 BoogieDeclarations]: Found implementation of procedure PTR_ERR [2022-02-20 22:05:49,217 INFO L130 BoogieDeclarations]: Found specification of procedure ldv_is_err [2022-02-20 22:05:49,217 INFO L138 BoogieDeclarations]: Found implementation of procedure ldv_is_err [2022-02-20 22:05:49,217 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-02-20 22:05:49,218 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~$Pointer$ [2022-02-20 22:05:49,218 INFO L130 BoogieDeclarations]: Found specification of procedure put_disk [2022-02-20 22:05:49,218 INFO L138 BoogieDeclarations]: Found implementation of procedure put_disk [2022-02-20 22:05:49,218 INFO L130 BoogieDeclarations]: Found specification of procedure blk_queue_ordered [2022-02-20 22:05:49,219 INFO L138 BoogieDeclarations]: Found implementation of procedure blk_queue_ordered [2022-02-20 22:05:49,219 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-02-20 22:05:49,220 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-02-20 22:05:49,220 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-02-20 22:05:49,220 INFO L130 BoogieDeclarations]: Found specification of procedure IS_ERR [2022-02-20 22:05:49,220 INFO L138 BoogieDeclarations]: Found implementation of procedure IS_ERR [2022-02-20 22:05:49,554 INFO L234 CfgBuilder]: Building ICFG [2022-02-20 22:05:49,555 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-02-20 22:05:49,990 INFO L766 $ProcedureCfgBuilder]: dead code at ProgramPoint ldv_stopFINAL: assume true; [2022-02-20 22:05:50,612 INFO L275 CfgBuilder]: Performing block encoding [2022-02-20 22:05:50,622 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-02-20 22:05:50,622 INFO L299 CfgBuilder]: Removed 0 assume(true) statements. [2022-02-20 22:05:50,624 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 20.02 10:05:50 BoogieIcfgContainer [2022-02-20 22:05:50,624 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-02-20 22:05:50,625 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-02-20 22:05:50,625 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-02-20 22:05:50,627 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-02-20 22:05:50,628 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 20.02 10:05:47" (1/3) ... [2022-02-20 22:05:50,628 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@318d72d9 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 20.02 10:05:50, skipping insertion in model container [2022-02-20 22:05:50,628 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 10:05:48" (2/3) ... [2022-02-20 22:05:50,629 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@318d72d9 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 20.02 10:05:50, skipping insertion in model container [2022-02-20 22:05:50,629 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 20.02 10:05:50" (3/3) ... [2022-02-20 22:05:50,630 INFO L111 eAbstractionObserver]: Analyzing ICFG linux-stable-39a1d13-1-101_1a-drivers--block--virtio_blk.ko-entry_point_ldv-val-v0.8.cil.out.i [2022-02-20 22:05:50,633 INFO L205 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2022-02-20 22:05:50,633 INFO L164 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-02-20 22:05:50,666 INFO L338 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-02-20 22:05:50,670 INFO L339 AbstractCegarLoop]: Settings: SEPARATE_VIOLATION_CHECK=true, mInterprocedural=true, mMaxIterations=1000000, mWatchIteration=1000000, mArtifact=RCFG, mInterpolation=FPandBP, mInterpolantAutomaton=STRAIGHT_LINE, mDumpAutomata=false, mAutomataFormat=ATS_NUMERATE, mDumpPath=., mDeterminiation=PREDICATE_ABSTRACTION, mMinimize=MINIMIZE_SEVPA, mHoare=true, mAutomataTypeConcurrency=PETRI_NET, mHoareTripleChecks=INCREMENTAL, mHoareAnnotationPositions=LoopsAndPotentialCycles, mDumpOnlyReuseAutomata=false, mLimitTraceHistogram=0, mErrorLocTimeLimit=0, mLimitPathProgramCount=0, mCollectInterpolantStatistics=true, mHeuristicEmptinessCheck=false, mHeuristicEmptinessCheckAStarHeuristic=ZERO, mHeuristicEmptinessCheckAStarHeuristicRandomSeed=1337, mHeuristicEmptinessCheckSmtFeatureScoringMethod=DAGSIZE, mSMTFeatureExtraction=false, mSMTFeatureExtractionDumpPath=., mOverrideInterpolantAutomaton=false, mMcrInterpolantMethod=WP, mLoopAccelerationTechnique=FAST_UPR [2022-02-20 22:05:50,670 INFO L340 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-02-20 22:05:50,693 INFO L276 IsEmpty]: Start isEmpty. Operand has 463 states, 352 states have (on average 1.2982954545454546) internal successors, (457), 364 states have internal predecessors, (457), 84 states have call successors, (84), 26 states have call predecessors, (84), 25 states have return successors, (79), 79 states have call predecessors, (79), 79 states have call successors, (79) [2022-02-20 22:05:50,698 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 47 [2022-02-20 22:05:50,698 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 22:05:50,699 INFO L514 BasicCegarLoop]: trace histogram [2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 22:05:50,699 INFO L402 AbstractCegarLoop]: === Iteration 1 === Targeting ldv_errorErr0ASSERT_VIOLATIONERROR_FUNCTION === [ldv_errorErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 22:05:50,702 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 22:05:50,703 INFO L85 PathProgramCache]: Analyzing trace with hash 1450174539, now seen corresponding path program 1 times [2022-02-20 22:05:50,709 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 22:05:50,710 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [278629407] [2022-02-20 22:05:50,710 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 22:05:50,711 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 22:05:50,845 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 22:05:50,936 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2022-02-20 22:05:50,949 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 22:05:50,973 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 1 [2022-02-20 22:05:50,975 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 22:05:50,987 INFO L290 TraceCheckUtils]: 0: Hoare triple {500#(= |#memory_int| |old(#memory_int)|)} #memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, #ptr.base); {466#true} is VALID [2022-02-20 22:05:50,987 INFO L290 TraceCheckUtils]: 1: Hoare triple {466#true} assume true; {466#true} is VALID [2022-02-20 22:05:50,988 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {466#true} {466#true} #1074#return; {466#true} is VALID [2022-02-20 22:05:50,989 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-02-20 22:05:50,990 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 22:05:50,997 INFO L290 TraceCheckUtils]: 0: Hoare triple {466#true} ~cond := #in~cond; {466#true} is VALID [2022-02-20 22:05:50,998 INFO L290 TraceCheckUtils]: 1: Hoare triple {466#true} assume 0 == ~cond;assume false; {467#false} is VALID [2022-02-20 22:05:50,998 INFO L290 TraceCheckUtils]: 2: Hoare triple {467#false} assume true; {467#false} is VALID [2022-02-20 22:05:50,998 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {467#false} {466#true} #1076#return; {467#false} is VALID [2022-02-20 22:05:50,999 INFO L290 TraceCheckUtils]: 0: Hoare triple {492#(and (= |old(#length)| |#length|) (= |#memory_int| |old(#memory_int)|) (= |old(#valid)| |#valid|))} ~size := #in~size;havoc ~p~2.base, ~p~2.offset;havoc ~tmp~4.base, ~tmp~4.offset;call #t~malloc109.base, #t~malloc109.offset := #Ultimate.allocOnHeap(~size); {466#true} is VALID [2022-02-20 22:05:51,000 INFO L272 TraceCheckUtils]: 1: Hoare triple {466#true} call #Ultimate.meminit(#t~malloc109.base, #t~malloc109.offset, 1, ~size, ~size); {500#(= |#memory_int| |old(#memory_int)|)} is VALID [2022-02-20 22:05:51,000 INFO L290 TraceCheckUtils]: 2: Hoare triple {500#(= |#memory_int| |old(#memory_int)|)} #memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, #ptr.base); {466#true} is VALID [2022-02-20 22:05:51,004 INFO L290 TraceCheckUtils]: 3: Hoare triple {466#true} assume true; {466#true} is VALID [2022-02-20 22:05:51,005 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {466#true} {466#true} #1074#return; {466#true} is VALID [2022-02-20 22:05:51,005 INFO L290 TraceCheckUtils]: 5: Hoare triple {466#true} ~tmp~4.base, ~tmp~4.offset := #t~malloc109.base, #t~malloc109.offset;~p~2.base, ~p~2.offset := ~tmp~4.base, ~tmp~4.offset; {466#true} is VALID [2022-02-20 22:05:51,005 INFO L272 TraceCheckUtils]: 6: Hoare triple {466#true} call assume_abort_if_not((if 0 != (~p~2.base + ~p~2.offset) % 18446744073709551616 then 1 else 0)); {466#true} is VALID [2022-02-20 22:05:51,006 INFO L290 TraceCheckUtils]: 7: Hoare triple {466#true} ~cond := #in~cond; {466#true} is VALID [2022-02-20 22:05:51,006 INFO L290 TraceCheckUtils]: 8: Hoare triple {466#true} assume 0 == ~cond;assume false; {467#false} is VALID [2022-02-20 22:05:51,006 INFO L290 TraceCheckUtils]: 9: Hoare triple {467#false} assume true; {467#false} is VALID [2022-02-20 22:05:51,006 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {467#false} {466#true} #1076#return; {467#false} is VALID [2022-02-20 22:05:51,007 INFO L290 TraceCheckUtils]: 11: Hoare triple {467#false} #res.base, #res.offset := ~p~2.base, ~p~2.offset; {467#false} is VALID [2022-02-20 22:05:51,007 INFO L290 TraceCheckUtils]: 12: Hoare triple {467#false} assume true; {467#false} is VALID [2022-02-20 22:05:51,007 INFO L284 TraceCheckUtils]: 13: Hoare quadruple {467#false} {466#true} #1084#return; {467#false} is VALID [2022-02-20 22:05:51,028 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 19 [2022-02-20 22:05:51,032 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 22:05:51,042 INFO L290 TraceCheckUtils]: 0: Hoare triple {501#(and (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~s#1.base, ~s#1.offset := #in~s#1.base, #in~s#1.offset;~c#1 := #in~c#1;~n#1 := #in~n#1;havoc ~tmp~5#1.base, ~tmp~5#1.offset;assume { :begin_inline_#Ultimate.C_memset } true;#Ultimate.C_memset_#ptr#1.base, #Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#value#1, #Ultimate.C_memset_#amount#1 := ~s#1.base, ~s#1.offset, ~c#1, ~n#1;havoc #Ultimate.C_memset_#res#1.base, #Ultimate.C_memset_#res#1.offset;havoc #Ultimate.C_memset_#t~loopctr416#1;#Ultimate.C_memset_#t~loopctr416#1 := 0; {466#true} is VALID [2022-02-20 22:05:51,044 INFO L290 TraceCheckUtils]: 1: Hoare triple {466#true} assume !(#Ultimate.C_memset_#t~loopctr416#1 % 18446744073709551616 < #Ultimate.C_memset_#amount#1 % 18446744073709551616); {466#true} is VALID [2022-02-20 22:05:51,045 INFO L290 TraceCheckUtils]: 2: Hoare triple {466#true} assume #Ultimate.C_memset_#res#1.base == #Ultimate.C_memset_#ptr#1.base && #Ultimate.C_memset_#res#1.offset == #Ultimate.C_memset_#ptr#1.offset;#t~memset~res110#1.base, #t~memset~res110#1.offset := #Ultimate.C_memset_#res#1.base, #Ultimate.C_memset_#res#1.offset;assume { :end_inline_#Ultimate.C_memset } true;~tmp~5#1.base, ~tmp~5#1.offset := ~s#1.base, ~s#1.offset;havoc #t~memset~res110#1.base, #t~memset~res110#1.offset;#res#1.base, #res#1.offset := ~tmp~5#1.base, ~tmp~5#1.offset; {466#true} is VALID [2022-02-20 22:05:51,045 INFO L290 TraceCheckUtils]: 3: Hoare triple {466#true} assume true; {466#true} is VALID [2022-02-20 22:05:51,045 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {466#true} {467#false} #1086#return; {467#false} is VALID [2022-02-20 22:05:51,046 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 26 [2022-02-20 22:05:51,050 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 22:05:51,064 INFO L290 TraceCheckUtils]: 0: Hoare triple {501#(and (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~s#1.base, ~s#1.offset := #in~s#1.base, #in~s#1.offset;~c#1 := #in~c#1;~n#1 := #in~n#1;havoc ~tmp~5#1.base, ~tmp~5#1.offset;assume { :begin_inline_#Ultimate.C_memset } true;#Ultimate.C_memset_#ptr#1.base, #Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#value#1, #Ultimate.C_memset_#amount#1 := ~s#1.base, ~s#1.offset, ~c#1, ~n#1;havoc #Ultimate.C_memset_#res#1.base, #Ultimate.C_memset_#res#1.offset;havoc #Ultimate.C_memset_#t~loopctr416#1;#Ultimate.C_memset_#t~loopctr416#1 := 0; {466#true} is VALID [2022-02-20 22:05:51,064 INFO L290 TraceCheckUtils]: 1: Hoare triple {466#true} assume !(#Ultimate.C_memset_#t~loopctr416#1 % 18446744073709551616 < #Ultimate.C_memset_#amount#1 % 18446744073709551616); {466#true} is VALID [2022-02-20 22:05:51,064 INFO L290 TraceCheckUtils]: 2: Hoare triple {466#true} assume #Ultimate.C_memset_#res#1.base == #Ultimate.C_memset_#ptr#1.base && #Ultimate.C_memset_#res#1.offset == #Ultimate.C_memset_#ptr#1.offset;#t~memset~res110#1.base, #t~memset~res110#1.offset := #Ultimate.C_memset_#res#1.base, #Ultimate.C_memset_#res#1.offset;assume { :end_inline_#Ultimate.C_memset } true;~tmp~5#1.base, ~tmp~5#1.offset := ~s#1.base, ~s#1.offset;havoc #t~memset~res110#1.base, #t~memset~res110#1.offset;#res#1.base, #res#1.offset := ~tmp~5#1.base, ~tmp~5#1.offset; {466#true} is VALID [2022-02-20 22:05:51,064 INFO L290 TraceCheckUtils]: 3: Hoare triple {466#true} assume true; {466#true} is VALID [2022-02-20 22:05:51,065 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {466#true} {467#false} #1088#return; {467#false} is VALID [2022-02-20 22:05:51,065 INFO L290 TraceCheckUtils]: 0: Hoare triple {466#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(95, 2);call #Ultimate.allocInit(22, 3);call #Ultimate.allocInit(9, 4);call #Ultimate.allocInit(5, 5);call write~init~int(118, 5, 0, 1);call write~init~int(100, 5, 1, 1);call write~init~int(37, 5, 2, 1);call write~init~int(99, 5, 3, 1);call write~init~int(0, 5, 4, 1);call #Ultimate.allocInit(7, 6);call write~init~int(118, 6, 0, 1);call write~init~int(100, 6, 1, 1);call write~init~int(37, 6, 2, 1);call write~init~int(99, 6, 3, 1);call write~init~int(37, 6, 4, 1);call write~init~int(99, 6, 5, 1);call write~init~int(0, 6, 6, 1);call #Ultimate.allocInit(9, 7);call #Ultimate.allocInit(11, 8);call #Ultimate.allocInit(8, 9);call #Ultimate.allocInit(8, 10);~LDV_IN_INTERRUPT~0 := 1;~virtblk_fops_group0~0.base, ~virtblk_fops_group0~0.offset := 0, 0;~ldv_state_variable_2~0 := 0;~ref_cnt~0 := 0;~ldv_state_variable_1~0 := 0;~virtio_blk_group0~0.base, ~virtio_blk_group0~0.offset := 0, 0;~ldv_state_variable_0~0 := 0;~major~0 := 0;~index~0 := 0;~#virtblk_fops~0.base, ~#virtblk_fops~0.offset := 11, 0;call #Ultimate.allocInit(96, 11);call write~init~$Pointer$(0, 0, ~#virtblk_fops~0.base, ~#virtblk_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtblk_fops~0.base, 8 + ~#virtblk_fops~0.offset, 8);call write~init~$Pointer$(#funAddr~virtblk_ioctl.base, #funAddr~virtblk_ioctl.offset, ~#virtblk_fops~0.base, 16 + ~#virtblk_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtblk_fops~0.base, 24 + ~#virtblk_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtblk_fops~0.base, 32 + ~#virtblk_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtblk_fops~0.base, 40 + ~#virtblk_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtblk_fops~0.base, 48 + ~#virtblk_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtblk_fops~0.base, 56 + ~#virtblk_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtblk_fops~0.base, 64 + ~#virtblk_fops~0.offset, 8);call write~init~$Pointer$(#funAddr~virtblk_getgeo.base, #funAddr~virtblk_getgeo.offset, ~#virtblk_fops~0.base, 72 + ~#virtblk_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtblk_fops~0.base, 80 + ~#virtblk_fops~0.offset, 8);call write~init~$Pointer$(~#__this_module~0.base, ~#__this_module~0.offset, ~#virtblk_fops~0.base, 88 + ~#virtblk_fops~0.offset, 8);~#id_table~0.base, ~#id_table~0.offset := 12, 0;call #Ultimate.allocInit(16, 12);call write~init~int(2, ~#id_table~0.base, ~#id_table~0.offset, 4);call write~init~int(4294967295, ~#id_table~0.base, 4 + ~#id_table~0.offset, 4);call write~init~int(0, ~#id_table~0.base, 8 + ~#id_table~0.offset, 4);call write~init~int(0, ~#id_table~0.base, 12 + ~#id_table~0.offset, 4);~#features~0.base, ~#features~0.offset := 13, 0;call #Ultimate.allocInit(36, 13);call write~init~int(0, ~#features~0.base, ~#features~0.offset, 4);call write~init~int(2, ~#features~0.base, 4 + ~#features~0.offset, 4);call write~init~int(1, ~#features~0.base, 8 + ~#features~0.offset, 4);call write~init~int(4, ~#features~0.base, 12 + ~#features~0.offset, 4);call write~init~int(5, ~#features~0.base, 16 + ~#features~0.offset, 4);call write~init~int(6, ~#features~0.base, 20 + ~#features~0.offset, 4);call write~init~int(7, ~#features~0.base, 24 + ~#features~0.offset, 4);call write~init~int(9, ~#features~0.base, 28 + ~#features~0.offset, 4);call write~init~int(10, ~#features~0.base, 32 + ~#features~0.offset, 4);~#virtio_blk~0.base, ~#virtio_blk~0.offset := 14, 0;call #Ultimate.allocInit(141, 14);call write~init~$Pointer$(8, 0, ~#virtio_blk~0.base, ~#virtio_blk~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtio_blk~0.base, 8 + ~#virtio_blk~0.offset, 8);call write~init~$Pointer$(~#__this_module~0.base, ~#__this_module~0.offset, ~#virtio_blk~0.base, 16 + ~#virtio_blk~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtio_blk~0.base, 24 + ~#virtio_blk~0.offset, 8);call write~init~int(0, ~#virtio_blk~0.base, 32 + ~#virtio_blk~0.offset, 1);call write~init~$Pointer$(0, 0, ~#virtio_blk~0.base, 33 + ~#virtio_blk~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtio_blk~0.base, 41 + ~#virtio_blk~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtio_blk~0.base, 49 + ~#virtio_blk~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtio_blk~0.base, 57 + ~#virtio_blk~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtio_blk~0.base, 65 + ~#virtio_blk~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtio_blk~0.base, 73 + ~#virtio_blk~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtio_blk~0.base, 81 + ~#virtio_blk~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtio_blk~0.base, 89 + ~#virtio_blk~0.offset, 8);call write~init~$Pointer$(~#id_table~0.base, ~#id_table~0.offset, ~#virtio_blk~0.base, 97 + ~#virtio_blk~0.offset, 8);call write~init~$Pointer$(~#features~0.base, ~#features~0.offset, ~#virtio_blk~0.base, 105 + ~#virtio_blk~0.offset, 8);call write~init~int(9, ~#virtio_blk~0.base, 113 + ~#virtio_blk~0.offset, 4);call write~init~$Pointer$(#funAddr~virtblk_probe.base, #funAddr~virtblk_probe.offset, ~#virtio_blk~0.base, 117 + ~#virtio_blk~0.offset, 8);call write~init~$Pointer$(#funAddr~virtblk_remove.base, #funAddr~virtblk_remove.offset, ~#virtio_blk~0.base, 125 + ~#virtio_blk~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtio_blk~0.base, 133 + ~#virtio_blk~0.offset, 8);~__mod_virtio_device_table~0.device := 0;~__mod_virtio_device_table~0.vendor := 0;~ldv_retval_0~0 := 0;~ldv_retval_1~0 := 0;~ldv_blk_rq~0 := 0; {466#true} is VALID [2022-02-20 22:05:51,069 INFO L290 TraceCheckUtils]: 1: Hoare triple {466#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret370#1.base, main_#t~ret370#1.offset, main_#t~ret371#1.base, main_#t~ret371#1.offset, main_#t~ret372#1.base, main_#t~ret372#1.offset, main_#t~nondet373#1, main_#t~nondet374#1, main_#t~switch375#1, main_#t~nondet376#1, main_#t~switch377#1, main_#t~ret378#1, main_#t~nondet379#1, main_#t~switch380#1, main_#t~ret381#1, main_#t~nondet382#1, main_#t~switch383#1, main_#t~mem384#1, main_#t~mem385#1, main_#t~ret386#1, main_#t~ret387#1, main_~#ldvarg1~0#1.base, main_~#ldvarg1~0#1.offset, main_~#ldvarg3~0#1.base, main_~#ldvarg3~0#1.offset, main_~ldvarg0~0#1.base, main_~ldvarg0~0#1.offset, main_~tmp~25#1.base, main_~tmp~25#1.offset, main_~ldvarg2~0#1, main_~tmp___0~12#1, main_~tmp___1~7#1, main_~tmp___2~4#1, main_~tmp___3~3#1;call main_~#ldvarg1~0#1.base, main_~#ldvarg1~0#1.offset := #Ultimate.allocOnStack(8);call main_~#ldvarg3~0#1.base, main_~#ldvarg3~0#1.offset := #Ultimate.allocOnStack(4);havoc main_~ldvarg0~0#1.base, main_~ldvarg0~0#1.offset;havoc main_~tmp~25#1.base, main_~tmp~25#1.offset;havoc main_~ldvarg2~0#1;havoc main_~tmp___0~12#1;havoc main_~tmp___1~7#1;havoc main_~tmp___2~4#1;havoc main_~tmp___3~3#1; {466#true} is VALID [2022-02-20 22:05:51,070 INFO L272 TraceCheckUtils]: 2: Hoare triple {466#true} call main_#t~ret370#1.base, main_#t~ret370#1.offset := ldv_init_zalloc(16); {492#(and (= |old(#length)| |#length|) (= |#memory_int| |old(#memory_int)|) (= |old(#valid)| |#valid|))} is VALID [2022-02-20 22:05:51,070 INFO L290 TraceCheckUtils]: 3: Hoare triple {492#(and (= |old(#length)| |#length|) (= |#memory_int| |old(#memory_int)|) (= |old(#valid)| |#valid|))} ~size := #in~size;havoc ~p~2.base, ~p~2.offset;havoc ~tmp~4.base, ~tmp~4.offset;call #t~malloc109.base, #t~malloc109.offset := #Ultimate.allocOnHeap(~size); {466#true} is VALID [2022-02-20 22:05:51,071 INFO L272 TraceCheckUtils]: 4: Hoare triple {466#true} call #Ultimate.meminit(#t~malloc109.base, #t~malloc109.offset, 1, ~size, ~size); {500#(= |#memory_int| |old(#memory_int)|)} is VALID [2022-02-20 22:05:51,071 INFO L290 TraceCheckUtils]: 5: Hoare triple {500#(= |#memory_int| |old(#memory_int)|)} #memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, #ptr.base); {466#true} is VALID [2022-02-20 22:05:51,072 INFO L290 TraceCheckUtils]: 6: Hoare triple {466#true} assume true; {466#true} is VALID [2022-02-20 22:05:51,072 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {466#true} {466#true} #1074#return; {466#true} is VALID [2022-02-20 22:05:51,072 INFO L290 TraceCheckUtils]: 8: Hoare triple {466#true} ~tmp~4.base, ~tmp~4.offset := #t~malloc109.base, #t~malloc109.offset;~p~2.base, ~p~2.offset := ~tmp~4.base, ~tmp~4.offset; {466#true} is VALID [2022-02-20 22:05:51,072 INFO L272 TraceCheckUtils]: 9: Hoare triple {466#true} call assume_abort_if_not((if 0 != (~p~2.base + ~p~2.offset) % 18446744073709551616 then 1 else 0)); {466#true} is VALID [2022-02-20 22:05:51,072 INFO L290 TraceCheckUtils]: 10: Hoare triple {466#true} ~cond := #in~cond; {466#true} is VALID [2022-02-20 22:05:51,073 INFO L290 TraceCheckUtils]: 11: Hoare triple {466#true} assume 0 == ~cond;assume false; {467#false} is VALID [2022-02-20 22:05:51,073 INFO L290 TraceCheckUtils]: 12: Hoare triple {467#false} assume true; {467#false} is VALID [2022-02-20 22:05:51,073 INFO L284 TraceCheckUtils]: 13: Hoare quadruple {467#false} {466#true} #1076#return; {467#false} is VALID [2022-02-20 22:05:51,073 INFO L290 TraceCheckUtils]: 14: Hoare triple {467#false} #res.base, #res.offset := ~p~2.base, ~p~2.offset; {467#false} is VALID [2022-02-20 22:05:51,073 INFO L290 TraceCheckUtils]: 15: Hoare triple {467#false} assume true; {467#false} is VALID [2022-02-20 22:05:51,074 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {467#false} {466#true} #1084#return; {467#false} is VALID [2022-02-20 22:05:51,076 INFO L290 TraceCheckUtils]: 17: Hoare triple {467#false} main_~tmp~25#1.base, main_~tmp~25#1.offset := main_#t~ret370#1.base, main_#t~ret370#1.offset;havoc main_#t~ret370#1.base, main_#t~ret370#1.offset;main_~ldvarg0~0#1.base, main_~ldvarg0~0#1.offset := main_~tmp~25#1.base, main_~tmp~25#1.offset;assume { :begin_inline_ldv_initialize } true; {467#false} is VALID [2022-02-20 22:05:51,076 INFO L290 TraceCheckUtils]: 18: Hoare triple {467#false} assume { :end_inline_ldv_initialize } true; {467#false} is VALID [2022-02-20 22:05:51,076 INFO L272 TraceCheckUtils]: 19: Hoare triple {467#false} call main_#t~ret371#1.base, main_#t~ret371#1.offset := ldv_memset(main_~#ldvarg1~0#1.base, main_~#ldvarg1~0#1.offset, 0, 8); {501#(and (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2022-02-20 22:05:51,076 INFO L290 TraceCheckUtils]: 20: Hoare triple {501#(and (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~s#1.base, ~s#1.offset := #in~s#1.base, #in~s#1.offset;~c#1 := #in~c#1;~n#1 := #in~n#1;havoc ~tmp~5#1.base, ~tmp~5#1.offset;assume { :begin_inline_#Ultimate.C_memset } true;#Ultimate.C_memset_#ptr#1.base, #Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#value#1, #Ultimate.C_memset_#amount#1 := ~s#1.base, ~s#1.offset, ~c#1, ~n#1;havoc #Ultimate.C_memset_#res#1.base, #Ultimate.C_memset_#res#1.offset;havoc #Ultimate.C_memset_#t~loopctr416#1;#Ultimate.C_memset_#t~loopctr416#1 := 0; {466#true} is VALID [2022-02-20 22:05:51,076 INFO L290 TraceCheckUtils]: 21: Hoare triple {466#true} assume !(#Ultimate.C_memset_#t~loopctr416#1 % 18446744073709551616 < #Ultimate.C_memset_#amount#1 % 18446744073709551616); {466#true} is VALID [2022-02-20 22:05:51,076 INFO L290 TraceCheckUtils]: 22: Hoare triple {466#true} assume #Ultimate.C_memset_#res#1.base == #Ultimate.C_memset_#ptr#1.base && #Ultimate.C_memset_#res#1.offset == #Ultimate.C_memset_#ptr#1.offset;#t~memset~res110#1.base, #t~memset~res110#1.offset := #Ultimate.C_memset_#res#1.base, #Ultimate.C_memset_#res#1.offset;assume { :end_inline_#Ultimate.C_memset } true;~tmp~5#1.base, ~tmp~5#1.offset := ~s#1.base, ~s#1.offset;havoc #t~memset~res110#1.base, #t~memset~res110#1.offset;#res#1.base, #res#1.offset := ~tmp~5#1.base, ~tmp~5#1.offset; {466#true} is VALID [2022-02-20 22:05:51,077 INFO L290 TraceCheckUtils]: 23: Hoare triple {466#true} assume true; {466#true} is VALID [2022-02-20 22:05:51,077 INFO L284 TraceCheckUtils]: 24: Hoare quadruple {466#true} {467#false} #1086#return; {467#false} is VALID [2022-02-20 22:05:51,077 INFO L290 TraceCheckUtils]: 25: Hoare triple {467#false} havoc main_#t~ret371#1.base, main_#t~ret371#1.offset; {467#false} is VALID [2022-02-20 22:05:51,077 INFO L272 TraceCheckUtils]: 26: Hoare triple {467#false} call main_#t~ret372#1.base, main_#t~ret372#1.offset := ldv_memset(main_~#ldvarg3~0#1.base, main_~#ldvarg3~0#1.offset, 0, 4); {501#(and (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2022-02-20 22:05:51,077 INFO L290 TraceCheckUtils]: 27: Hoare triple {501#(and (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~s#1.base, ~s#1.offset := #in~s#1.base, #in~s#1.offset;~c#1 := #in~c#1;~n#1 := #in~n#1;havoc ~tmp~5#1.base, ~tmp~5#1.offset;assume { :begin_inline_#Ultimate.C_memset } true;#Ultimate.C_memset_#ptr#1.base, #Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#value#1, #Ultimate.C_memset_#amount#1 := ~s#1.base, ~s#1.offset, ~c#1, ~n#1;havoc #Ultimate.C_memset_#res#1.base, #Ultimate.C_memset_#res#1.offset;havoc #Ultimate.C_memset_#t~loopctr416#1;#Ultimate.C_memset_#t~loopctr416#1 := 0; {466#true} is VALID [2022-02-20 22:05:51,077 INFO L290 TraceCheckUtils]: 28: Hoare triple {466#true} assume !(#Ultimate.C_memset_#t~loopctr416#1 % 18446744073709551616 < #Ultimate.C_memset_#amount#1 % 18446744073709551616); {466#true} is VALID [2022-02-20 22:05:51,077 INFO L290 TraceCheckUtils]: 29: Hoare triple {466#true} assume #Ultimate.C_memset_#res#1.base == #Ultimate.C_memset_#ptr#1.base && #Ultimate.C_memset_#res#1.offset == #Ultimate.C_memset_#ptr#1.offset;#t~memset~res110#1.base, #t~memset~res110#1.offset := #Ultimate.C_memset_#res#1.base, #Ultimate.C_memset_#res#1.offset;assume { :end_inline_#Ultimate.C_memset } true;~tmp~5#1.base, ~tmp~5#1.offset := ~s#1.base, ~s#1.offset;havoc #t~memset~res110#1.base, #t~memset~res110#1.offset;#res#1.base, #res#1.offset := ~tmp~5#1.base, ~tmp~5#1.offset; {466#true} is VALID [2022-02-20 22:05:51,077 INFO L290 TraceCheckUtils]: 30: Hoare triple {466#true} assume true; {466#true} is VALID [2022-02-20 22:05:51,078 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {466#true} {467#false} #1088#return; {467#false} is VALID [2022-02-20 22:05:51,078 INFO L290 TraceCheckUtils]: 32: Hoare triple {467#false} havoc main_#t~ret372#1.base, main_#t~ret372#1.offset;main_~ldvarg2~0#1 := main_#t~nondet373#1;havoc main_#t~nondet373#1;~ldv_state_variable_1~0 := 0;~ref_cnt~0 := 0;~ldv_state_variable_0~0 := 1;~ldv_state_variable_2~0 := 0; {467#false} is VALID [2022-02-20 22:05:51,078 INFO L290 TraceCheckUtils]: 33: Hoare triple {467#false} assume -2147483648 <= main_#t~nondet374#1 && main_#t~nondet374#1 <= 2147483647;main_~tmp___0~12#1 := main_#t~nondet374#1;havoc main_#t~nondet374#1;main_#t~switch375#1 := 0 == main_~tmp___0~12#1; {467#false} is VALID [2022-02-20 22:05:51,078 INFO L290 TraceCheckUtils]: 34: Hoare triple {467#false} assume !main_#t~switch375#1;main_#t~switch375#1 := main_#t~switch375#1 || 1 == main_~tmp___0~12#1; {467#false} is VALID [2022-02-20 22:05:51,078 INFO L290 TraceCheckUtils]: 35: Hoare triple {467#false} assume main_#t~switch375#1; {467#false} is VALID [2022-02-20 22:05:51,078 INFO L290 TraceCheckUtils]: 36: Hoare triple {467#false} assume 0 != ~ldv_state_variable_0~0;assume -2147483648 <= main_#t~nondet379#1 && main_#t~nondet379#1 <= 2147483647;main_~tmp___2~4#1 := main_#t~nondet379#1;havoc main_#t~nondet379#1;main_#t~switch380#1 := 0 == main_~tmp___2~4#1; {467#false} is VALID [2022-02-20 22:05:51,078 INFO L290 TraceCheckUtils]: 37: Hoare triple {467#false} assume main_#t~switch380#1; {467#false} is VALID [2022-02-20 22:05:51,078 INFO L290 TraceCheckUtils]: 38: Hoare triple {467#false} assume 3 == ~ldv_state_variable_0~0 && 0 == ~ref_cnt~0;assume { :begin_inline_fini } true;assume { :begin_inline_unregister_blkdev } true;unregister_blkdev_#in~arg0#1, unregister_blkdev_#in~arg1#1.base, unregister_blkdev_#in~arg1#1.offset := ~major~0, 10, 0;havoc unregister_blkdev_~arg0#1, unregister_blkdev_~arg1#1.base, unregister_blkdev_~arg1#1.offset;unregister_blkdev_~arg0#1 := unregister_blkdev_#in~arg0#1;unregister_blkdev_~arg1#1.base, unregister_blkdev_~arg1#1.offset := unregister_blkdev_#in~arg1#1.base, unregister_blkdev_#in~arg1#1.offset; {467#false} is VALID [2022-02-20 22:05:51,079 INFO L290 TraceCheckUtils]: 39: Hoare triple {467#false} assume { :end_inline_unregister_blkdev } true;assume { :begin_inline_unregister_virtio_driver } true;unregister_virtio_driver_#in~arg0#1.base, unregister_virtio_driver_#in~arg0#1.offset := ~#virtio_blk~0.base, ~#virtio_blk~0.offset;havoc unregister_virtio_driver_~arg0#1.base, unregister_virtio_driver_~arg0#1.offset;unregister_virtio_driver_~arg0#1.base, unregister_virtio_driver_~arg0#1.offset := unregister_virtio_driver_#in~arg0#1.base, unregister_virtio_driver_#in~arg0#1.offset; {467#false} is VALID [2022-02-20 22:05:51,079 INFO L290 TraceCheckUtils]: 40: Hoare triple {467#false} assume { :end_inline_unregister_virtio_driver } true; {467#false} is VALID [2022-02-20 22:05:51,079 INFO L290 TraceCheckUtils]: 41: Hoare triple {467#false} assume { :end_inline_fini } true;~ldv_state_variable_0~0 := 2; {467#false} is VALID [2022-02-20 22:05:51,079 INFO L290 TraceCheckUtils]: 42: Hoare triple {467#false} assume { :begin_inline_ldv_check_final_state } true; {467#false} is VALID [2022-02-20 22:05:51,079 INFO L290 TraceCheckUtils]: 43: Hoare triple {467#false} assume 0 != ~ldv_blk_rq~0; {467#false} is VALID [2022-02-20 22:05:51,079 INFO L272 TraceCheckUtils]: 44: Hoare triple {467#false} call ldv_error(); {467#false} is VALID [2022-02-20 22:05:51,079 INFO L290 TraceCheckUtils]: 45: Hoare triple {467#false} assume !false; {467#false} is VALID [2022-02-20 22:05:51,080 INFO L134 CoverageAnalysis]: Checked inductivity of 5 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 5 trivial. 0 not checked. [2022-02-20 22:05:51,080 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 22:05:51,080 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [278629407] [2022-02-20 22:05:51,081 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [278629407] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 22:05:51,081 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 22:05:51,081 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-02-20 22:05:51,082 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [228906823] [2022-02-20 22:05:51,082 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 22:05:51,096 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 6.2) internal successors, (31), 2 states have internal predecessors, (31), 2 states have call successors, (6), 5 states have call predecessors, (6), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) Word has length 46 [2022-02-20 22:05:51,097 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 22:05:51,099 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 6.2) internal successors, (31), 2 states have internal predecessors, (31), 2 states have call successors, (6), 5 states have call predecessors, (6), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-02-20 22:05:51,160 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 42 edges. 42 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 22:05:51,161 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-02-20 22:05:51,161 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 22:05:51,180 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-02-20 22:05:51,182 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=11, Unknown=0, NotChecked=0, Total=20 [2022-02-20 22:05:51,188 INFO L87 Difference]: Start difference. First operand has 463 states, 352 states have (on average 1.2982954545454546) internal successors, (457), 364 states have internal predecessors, (457), 84 states have call successors, (84), 26 states have call predecessors, (84), 25 states have return successors, (79), 79 states have call predecessors, (79), 79 states have call successors, (79) Second operand has 5 states, 5 states have (on average 6.2) internal successors, (31), 2 states have internal predecessors, (31), 2 states have call successors, (6), 5 states have call predecessors, (6), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-02-20 22:05:53,707 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 22:05:53,708 INFO L93 Difference]: Finished difference Result 1020 states and 1424 transitions. [2022-02-20 22:05:53,708 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-02-20 22:05:53,708 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 6.2) internal successors, (31), 2 states have internal predecessors, (31), 2 states have call successors, (6), 5 states have call predecessors, (6), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) Word has length 46 [2022-02-20 22:05:53,709 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 22:05:53,709 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 6.2) internal successors, (31), 2 states have internal predecessors, (31), 2 states have call successors, (6), 5 states have call predecessors, (6), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-02-20 22:05:53,743 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 1424 transitions. [2022-02-20 22:05:53,744 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 6.2) internal successors, (31), 2 states have internal predecessors, (31), 2 states have call successors, (6), 5 states have call predecessors, (6), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-02-20 22:05:53,765 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 1424 transitions. [2022-02-20 22:05:53,765 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 1424 transitions. [2022-02-20 22:05:54,864 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 1424 edges. 1424 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 22:05:54,913 INFO L225 Difference]: With dead ends: 1020 [2022-02-20 22:05:54,913 INFO L226 Difference]: Without dead ends: 542 [2022-02-20 22:05:54,918 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 16 GetRequests, 12 SyntacticMatches, 0 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=14, Invalid=16, Unknown=0, NotChecked=0, Total=30 [2022-02-20 22:05:54,921 INFO L933 BasicCegarLoop]: 580 mSDtfsCounter, 294 mSDsluCounter, 622 mSDsCounter, 0 mSdLazyCounter, 395 mSolverCounterSat, 233 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.8s Time, 0 mProtectedPredicate, 0 mProtectedAction, 309 SdHoareTripleChecker+Valid, 1202 SdHoareTripleChecker+Invalid, 628 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 233 IncrementalHoareTripleChecker+Valid, 395 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.8s IncrementalHoareTripleChecker+Time [2022-02-20 22:05:54,921 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [309 Valid, 1202 Invalid, 628 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [233 Valid, 395 Invalid, 0 Unknown, 0 Unchecked, 0.8s Time] [2022-02-20 22:05:54,933 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 542 states. [2022-02-20 22:05:54,964 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 542 to 445. [2022-02-20 22:05:54,964 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 22:05:54,966 INFO L82 GeneralOperation]: Start isEquivalent. First operand 542 states. Second operand has 445 states, 341 states have (on average 1.2609970674486803) internal successors, (430), 346 states have internal predecessors, (430), 79 states have call successors, (79), 25 states have call predecessors, (79), 24 states have return successors, (77), 77 states have call predecessors, (77), 77 states have call successors, (77) [2022-02-20 22:05:54,969 INFO L74 IsIncluded]: Start isIncluded. First operand 542 states. Second operand has 445 states, 341 states have (on average 1.2609970674486803) internal successors, (430), 346 states have internal predecessors, (430), 79 states have call successors, (79), 25 states have call predecessors, (79), 24 states have return successors, (77), 77 states have call predecessors, (77), 77 states have call successors, (77) [2022-02-20 22:05:54,971 INFO L87 Difference]: Start difference. First operand 542 states. Second operand has 445 states, 341 states have (on average 1.2609970674486803) internal successors, (430), 346 states have internal predecessors, (430), 79 states have call successors, (79), 25 states have call predecessors, (79), 24 states have return successors, (77), 77 states have call predecessors, (77), 77 states have call successors, (77) [2022-02-20 22:05:54,997 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 22:05:54,998 INFO L93 Difference]: Finished difference Result 542 states and 739 transitions. [2022-02-20 22:05:54,998 INFO L276 IsEmpty]: Start isEmpty. Operand 542 states and 739 transitions. [2022-02-20 22:05:55,004 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 22:05:55,005 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 22:05:55,006 INFO L74 IsIncluded]: Start isIncluded. First operand has 445 states, 341 states have (on average 1.2609970674486803) internal successors, (430), 346 states have internal predecessors, (430), 79 states have call successors, (79), 25 states have call predecessors, (79), 24 states have return successors, (77), 77 states have call predecessors, (77), 77 states have call successors, (77) Second operand 542 states. [2022-02-20 22:05:55,008 INFO L87 Difference]: Start difference. First operand has 445 states, 341 states have (on average 1.2609970674486803) internal successors, (430), 346 states have internal predecessors, (430), 79 states have call successors, (79), 25 states have call predecessors, (79), 24 states have return successors, (77), 77 states have call predecessors, (77), 77 states have call successors, (77) Second operand 542 states. [2022-02-20 22:05:55,030 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 22:05:55,030 INFO L93 Difference]: Finished difference Result 542 states and 739 transitions. [2022-02-20 22:05:55,030 INFO L276 IsEmpty]: Start isEmpty. Operand 542 states and 739 transitions. [2022-02-20 22:05:55,033 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 22:05:55,033 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 22:05:55,033 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 22:05:55,033 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 22:05:55,035 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 445 states, 341 states have (on average 1.2609970674486803) internal successors, (430), 346 states have internal predecessors, (430), 79 states have call successors, (79), 25 states have call predecessors, (79), 24 states have return successors, (77), 77 states have call predecessors, (77), 77 states have call successors, (77) [2022-02-20 22:05:55,083 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 445 states to 445 states and 586 transitions. [2022-02-20 22:05:55,086 INFO L78 Accepts]: Start accepts. Automaton has 445 states and 586 transitions. Word has length 46 [2022-02-20 22:05:55,087 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 22:05:55,087 INFO L470 AbstractCegarLoop]: Abstraction has 445 states and 586 transitions. [2022-02-20 22:05:55,088 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 6.2) internal successors, (31), 2 states have internal predecessors, (31), 2 states have call successors, (6), 5 states have call predecessors, (6), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-02-20 22:05:55,088 INFO L276 IsEmpty]: Start isEmpty. Operand 445 states and 586 transitions. [2022-02-20 22:05:55,089 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 47 [2022-02-20 22:05:55,089 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 22:05:55,089 INFO L514 BasicCegarLoop]: trace histogram [2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 22:05:55,089 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-02-20 22:05:55,090 INFO L402 AbstractCegarLoop]: === Iteration 2 === Targeting ldv_errorErr0ASSERT_VIOLATIONERROR_FUNCTION === [ldv_errorErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 22:05:55,090 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 22:05:55,091 INFO L85 PathProgramCache]: Analyzing trace with hash 606169037, now seen corresponding path program 1 times [2022-02-20 22:05:55,091 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 22:05:55,091 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1828037629] [2022-02-20 22:05:55,091 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 22:05:55,091 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 22:05:55,143 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 22:05:55,183 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2022-02-20 22:05:55,186 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 22:05:55,198 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 1 [2022-02-20 22:05:55,200 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 22:05:55,206 INFO L290 TraceCheckUtils]: 0: Hoare triple {3759#(= |#memory_int| |old(#memory_int)|)} #memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, #ptr.base); {3724#true} is VALID [2022-02-20 22:05:55,206 INFO L290 TraceCheckUtils]: 1: Hoare triple {3724#true} assume true; {3724#true} is VALID [2022-02-20 22:05:55,206 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {3724#true} {3724#true} #1074#return; {3724#true} is VALID [2022-02-20 22:05:55,206 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-02-20 22:05:55,209 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 22:05:55,216 INFO L290 TraceCheckUtils]: 0: Hoare triple {3724#true} ~cond := #in~cond; {3724#true} is VALID [2022-02-20 22:05:55,217 INFO L290 TraceCheckUtils]: 1: Hoare triple {3724#true} assume !(0 == ~cond); {3724#true} is VALID [2022-02-20 22:05:55,217 INFO L290 TraceCheckUtils]: 2: Hoare triple {3724#true} assume true; {3724#true} is VALID [2022-02-20 22:05:55,218 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3724#true} {3724#true} #1076#return; {3724#true} is VALID [2022-02-20 22:05:55,218 INFO L290 TraceCheckUtils]: 0: Hoare triple {3751#(and (= |old(#length)| |#length|) (= |#memory_int| |old(#memory_int)|) (= |old(#valid)| |#valid|))} ~size := #in~size;havoc ~p~2.base, ~p~2.offset;havoc ~tmp~4.base, ~tmp~4.offset;call #t~malloc109.base, #t~malloc109.offset := #Ultimate.allocOnHeap(~size); {3724#true} is VALID [2022-02-20 22:05:55,219 INFO L272 TraceCheckUtils]: 1: Hoare triple {3724#true} call #Ultimate.meminit(#t~malloc109.base, #t~malloc109.offset, 1, ~size, ~size); {3759#(= |#memory_int| |old(#memory_int)|)} is VALID [2022-02-20 22:05:55,219 INFO L290 TraceCheckUtils]: 2: Hoare triple {3759#(= |#memory_int| |old(#memory_int)|)} #memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, #ptr.base); {3724#true} is VALID [2022-02-20 22:05:55,219 INFO L290 TraceCheckUtils]: 3: Hoare triple {3724#true} assume true; {3724#true} is VALID [2022-02-20 22:05:55,219 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {3724#true} {3724#true} #1074#return; {3724#true} is VALID [2022-02-20 22:05:55,219 INFO L290 TraceCheckUtils]: 5: Hoare triple {3724#true} ~tmp~4.base, ~tmp~4.offset := #t~malloc109.base, #t~malloc109.offset;~p~2.base, ~p~2.offset := ~tmp~4.base, ~tmp~4.offset; {3724#true} is VALID [2022-02-20 22:05:55,220 INFO L272 TraceCheckUtils]: 6: Hoare triple {3724#true} call assume_abort_if_not((if 0 != (~p~2.base + ~p~2.offset) % 18446744073709551616 then 1 else 0)); {3724#true} is VALID [2022-02-20 22:05:55,220 INFO L290 TraceCheckUtils]: 7: Hoare triple {3724#true} ~cond := #in~cond; {3724#true} is VALID [2022-02-20 22:05:55,220 INFO L290 TraceCheckUtils]: 8: Hoare triple {3724#true} assume !(0 == ~cond); {3724#true} is VALID [2022-02-20 22:05:55,220 INFO L290 TraceCheckUtils]: 9: Hoare triple {3724#true} assume true; {3724#true} is VALID [2022-02-20 22:05:55,220 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3724#true} {3724#true} #1076#return; {3724#true} is VALID [2022-02-20 22:05:55,221 INFO L290 TraceCheckUtils]: 11: Hoare triple {3724#true} #res.base, #res.offset := ~p~2.base, ~p~2.offset; {3724#true} is VALID [2022-02-20 22:05:55,221 INFO L290 TraceCheckUtils]: 12: Hoare triple {3724#true} assume true; {3724#true} is VALID [2022-02-20 22:05:55,221 INFO L284 TraceCheckUtils]: 13: Hoare quadruple {3724#true} {3724#true} #1084#return; {3724#true} is VALID [2022-02-20 22:05:55,227 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 19 [2022-02-20 22:05:55,232 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 22:05:55,242 INFO L290 TraceCheckUtils]: 0: Hoare triple {3760#(and (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~s#1.base, ~s#1.offset := #in~s#1.base, #in~s#1.offset;~c#1 := #in~c#1;~n#1 := #in~n#1;havoc ~tmp~5#1.base, ~tmp~5#1.offset;assume { :begin_inline_#Ultimate.C_memset } true;#Ultimate.C_memset_#ptr#1.base, #Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#value#1, #Ultimate.C_memset_#amount#1 := ~s#1.base, ~s#1.offset, ~c#1, ~n#1;havoc #Ultimate.C_memset_#res#1.base, #Ultimate.C_memset_#res#1.offset;havoc #Ultimate.C_memset_#t~loopctr416#1;#Ultimate.C_memset_#t~loopctr416#1 := 0; {3724#true} is VALID [2022-02-20 22:05:55,242 INFO L290 TraceCheckUtils]: 1: Hoare triple {3724#true} assume !(#Ultimate.C_memset_#t~loopctr416#1 % 18446744073709551616 < #Ultimate.C_memset_#amount#1 % 18446744073709551616); {3724#true} is VALID [2022-02-20 22:05:55,244 INFO L290 TraceCheckUtils]: 2: Hoare triple {3724#true} assume #Ultimate.C_memset_#res#1.base == #Ultimate.C_memset_#ptr#1.base && #Ultimate.C_memset_#res#1.offset == #Ultimate.C_memset_#ptr#1.offset;#t~memset~res110#1.base, #t~memset~res110#1.offset := #Ultimate.C_memset_#res#1.base, #Ultimate.C_memset_#res#1.offset;assume { :end_inline_#Ultimate.C_memset } true;~tmp~5#1.base, ~tmp~5#1.offset := ~s#1.base, ~s#1.offset;havoc #t~memset~res110#1.base, #t~memset~res110#1.offset;#res#1.base, #res#1.offset := ~tmp~5#1.base, ~tmp~5#1.offset; {3724#true} is VALID [2022-02-20 22:05:55,244 INFO L290 TraceCheckUtils]: 3: Hoare triple {3724#true} assume true; {3724#true} is VALID [2022-02-20 22:05:55,245 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {3724#true} {3724#true} #1086#return; {3724#true} is VALID [2022-02-20 22:05:55,245 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 26 [2022-02-20 22:05:55,248 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 22:05:55,261 INFO L290 TraceCheckUtils]: 0: Hoare triple {3760#(and (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~s#1.base, ~s#1.offset := #in~s#1.base, #in~s#1.offset;~c#1 := #in~c#1;~n#1 := #in~n#1;havoc ~tmp~5#1.base, ~tmp~5#1.offset;assume { :begin_inline_#Ultimate.C_memset } true;#Ultimate.C_memset_#ptr#1.base, #Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#value#1, #Ultimate.C_memset_#amount#1 := ~s#1.base, ~s#1.offset, ~c#1, ~n#1;havoc #Ultimate.C_memset_#res#1.base, #Ultimate.C_memset_#res#1.offset;havoc #Ultimate.C_memset_#t~loopctr416#1;#Ultimate.C_memset_#t~loopctr416#1 := 0; {3724#true} is VALID [2022-02-20 22:05:55,262 INFO L290 TraceCheckUtils]: 1: Hoare triple {3724#true} assume !(#Ultimate.C_memset_#t~loopctr416#1 % 18446744073709551616 < #Ultimate.C_memset_#amount#1 % 18446744073709551616); {3724#true} is VALID [2022-02-20 22:05:55,263 INFO L290 TraceCheckUtils]: 2: Hoare triple {3724#true} assume #Ultimate.C_memset_#res#1.base == #Ultimate.C_memset_#ptr#1.base && #Ultimate.C_memset_#res#1.offset == #Ultimate.C_memset_#ptr#1.offset;#t~memset~res110#1.base, #t~memset~res110#1.offset := #Ultimate.C_memset_#res#1.base, #Ultimate.C_memset_#res#1.offset;assume { :end_inline_#Ultimate.C_memset } true;~tmp~5#1.base, ~tmp~5#1.offset := ~s#1.base, ~s#1.offset;havoc #t~memset~res110#1.base, #t~memset~res110#1.offset;#res#1.base, #res#1.offset := ~tmp~5#1.base, ~tmp~5#1.offset; {3724#true} is VALID [2022-02-20 22:05:55,263 INFO L290 TraceCheckUtils]: 3: Hoare triple {3724#true} assume true; {3724#true} is VALID [2022-02-20 22:05:55,263 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {3724#true} {3724#true} #1088#return; {3724#true} is VALID [2022-02-20 22:05:55,265 INFO L290 TraceCheckUtils]: 0: Hoare triple {3724#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(95, 2);call #Ultimate.allocInit(22, 3);call #Ultimate.allocInit(9, 4);call #Ultimate.allocInit(5, 5);call write~init~int(118, 5, 0, 1);call write~init~int(100, 5, 1, 1);call write~init~int(37, 5, 2, 1);call write~init~int(99, 5, 3, 1);call write~init~int(0, 5, 4, 1);call #Ultimate.allocInit(7, 6);call write~init~int(118, 6, 0, 1);call write~init~int(100, 6, 1, 1);call write~init~int(37, 6, 2, 1);call write~init~int(99, 6, 3, 1);call write~init~int(37, 6, 4, 1);call write~init~int(99, 6, 5, 1);call write~init~int(0, 6, 6, 1);call #Ultimate.allocInit(9, 7);call #Ultimate.allocInit(11, 8);call #Ultimate.allocInit(8, 9);call #Ultimate.allocInit(8, 10);~LDV_IN_INTERRUPT~0 := 1;~virtblk_fops_group0~0.base, ~virtblk_fops_group0~0.offset := 0, 0;~ldv_state_variable_2~0 := 0;~ref_cnt~0 := 0;~ldv_state_variable_1~0 := 0;~virtio_blk_group0~0.base, ~virtio_blk_group0~0.offset := 0, 0;~ldv_state_variable_0~0 := 0;~major~0 := 0;~index~0 := 0;~#virtblk_fops~0.base, ~#virtblk_fops~0.offset := 11, 0;call #Ultimate.allocInit(96, 11);call write~init~$Pointer$(0, 0, ~#virtblk_fops~0.base, ~#virtblk_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtblk_fops~0.base, 8 + ~#virtblk_fops~0.offset, 8);call write~init~$Pointer$(#funAddr~virtblk_ioctl.base, #funAddr~virtblk_ioctl.offset, ~#virtblk_fops~0.base, 16 + ~#virtblk_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtblk_fops~0.base, 24 + ~#virtblk_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtblk_fops~0.base, 32 + ~#virtblk_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtblk_fops~0.base, 40 + ~#virtblk_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtblk_fops~0.base, 48 + ~#virtblk_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtblk_fops~0.base, 56 + ~#virtblk_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtblk_fops~0.base, 64 + ~#virtblk_fops~0.offset, 8);call write~init~$Pointer$(#funAddr~virtblk_getgeo.base, #funAddr~virtblk_getgeo.offset, ~#virtblk_fops~0.base, 72 + ~#virtblk_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtblk_fops~0.base, 80 + ~#virtblk_fops~0.offset, 8);call write~init~$Pointer$(~#__this_module~0.base, ~#__this_module~0.offset, ~#virtblk_fops~0.base, 88 + ~#virtblk_fops~0.offset, 8);~#id_table~0.base, ~#id_table~0.offset := 12, 0;call #Ultimate.allocInit(16, 12);call write~init~int(2, ~#id_table~0.base, ~#id_table~0.offset, 4);call write~init~int(4294967295, ~#id_table~0.base, 4 + ~#id_table~0.offset, 4);call write~init~int(0, ~#id_table~0.base, 8 + ~#id_table~0.offset, 4);call write~init~int(0, ~#id_table~0.base, 12 + ~#id_table~0.offset, 4);~#features~0.base, ~#features~0.offset := 13, 0;call #Ultimate.allocInit(36, 13);call write~init~int(0, ~#features~0.base, ~#features~0.offset, 4);call write~init~int(2, ~#features~0.base, 4 + ~#features~0.offset, 4);call write~init~int(1, ~#features~0.base, 8 + ~#features~0.offset, 4);call write~init~int(4, ~#features~0.base, 12 + ~#features~0.offset, 4);call write~init~int(5, ~#features~0.base, 16 + ~#features~0.offset, 4);call write~init~int(6, ~#features~0.base, 20 + ~#features~0.offset, 4);call write~init~int(7, ~#features~0.base, 24 + ~#features~0.offset, 4);call write~init~int(9, ~#features~0.base, 28 + ~#features~0.offset, 4);call write~init~int(10, ~#features~0.base, 32 + ~#features~0.offset, 4);~#virtio_blk~0.base, ~#virtio_blk~0.offset := 14, 0;call #Ultimate.allocInit(141, 14);call write~init~$Pointer$(8, 0, ~#virtio_blk~0.base, ~#virtio_blk~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtio_blk~0.base, 8 + ~#virtio_blk~0.offset, 8);call write~init~$Pointer$(~#__this_module~0.base, ~#__this_module~0.offset, ~#virtio_blk~0.base, 16 + ~#virtio_blk~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtio_blk~0.base, 24 + ~#virtio_blk~0.offset, 8);call write~init~int(0, ~#virtio_blk~0.base, 32 + ~#virtio_blk~0.offset, 1);call write~init~$Pointer$(0, 0, ~#virtio_blk~0.base, 33 + ~#virtio_blk~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtio_blk~0.base, 41 + ~#virtio_blk~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtio_blk~0.base, 49 + ~#virtio_blk~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtio_blk~0.base, 57 + ~#virtio_blk~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtio_blk~0.base, 65 + ~#virtio_blk~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtio_blk~0.base, 73 + ~#virtio_blk~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtio_blk~0.base, 81 + ~#virtio_blk~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtio_blk~0.base, 89 + ~#virtio_blk~0.offset, 8);call write~init~$Pointer$(~#id_table~0.base, ~#id_table~0.offset, ~#virtio_blk~0.base, 97 + ~#virtio_blk~0.offset, 8);call write~init~$Pointer$(~#features~0.base, ~#features~0.offset, ~#virtio_blk~0.base, 105 + ~#virtio_blk~0.offset, 8);call write~init~int(9, ~#virtio_blk~0.base, 113 + ~#virtio_blk~0.offset, 4);call write~init~$Pointer$(#funAddr~virtblk_probe.base, #funAddr~virtblk_probe.offset, ~#virtio_blk~0.base, 117 + ~#virtio_blk~0.offset, 8);call write~init~$Pointer$(#funAddr~virtblk_remove.base, #funAddr~virtblk_remove.offset, ~#virtio_blk~0.base, 125 + ~#virtio_blk~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtio_blk~0.base, 133 + ~#virtio_blk~0.offset, 8);~__mod_virtio_device_table~0.device := 0;~__mod_virtio_device_table~0.vendor := 0;~ldv_retval_0~0 := 0;~ldv_retval_1~0 := 0;~ldv_blk_rq~0 := 0; {3724#true} is VALID [2022-02-20 22:05:55,265 INFO L290 TraceCheckUtils]: 1: Hoare triple {3724#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret370#1.base, main_#t~ret370#1.offset, main_#t~ret371#1.base, main_#t~ret371#1.offset, main_#t~ret372#1.base, main_#t~ret372#1.offset, main_#t~nondet373#1, main_#t~nondet374#1, main_#t~switch375#1, main_#t~nondet376#1, main_#t~switch377#1, main_#t~ret378#1, main_#t~nondet379#1, main_#t~switch380#1, main_#t~ret381#1, main_#t~nondet382#1, main_#t~switch383#1, main_#t~mem384#1, main_#t~mem385#1, main_#t~ret386#1, main_#t~ret387#1, main_~#ldvarg1~0#1.base, main_~#ldvarg1~0#1.offset, main_~#ldvarg3~0#1.base, main_~#ldvarg3~0#1.offset, main_~ldvarg0~0#1.base, main_~ldvarg0~0#1.offset, main_~tmp~25#1.base, main_~tmp~25#1.offset, main_~ldvarg2~0#1, main_~tmp___0~12#1, main_~tmp___1~7#1, main_~tmp___2~4#1, main_~tmp___3~3#1;call main_~#ldvarg1~0#1.base, main_~#ldvarg1~0#1.offset := #Ultimate.allocOnStack(8);call main_~#ldvarg3~0#1.base, main_~#ldvarg3~0#1.offset := #Ultimate.allocOnStack(4);havoc main_~ldvarg0~0#1.base, main_~ldvarg0~0#1.offset;havoc main_~tmp~25#1.base, main_~tmp~25#1.offset;havoc main_~ldvarg2~0#1;havoc main_~tmp___0~12#1;havoc main_~tmp___1~7#1;havoc main_~tmp___2~4#1;havoc main_~tmp___3~3#1; {3724#true} is VALID [2022-02-20 22:05:55,266 INFO L272 TraceCheckUtils]: 2: Hoare triple {3724#true} call main_#t~ret370#1.base, main_#t~ret370#1.offset := ldv_init_zalloc(16); {3751#(and (= |old(#length)| |#length|) (= |#memory_int| |old(#memory_int)|) (= |old(#valid)| |#valid|))} is VALID [2022-02-20 22:05:55,267 INFO L290 TraceCheckUtils]: 3: Hoare triple {3751#(and (= |old(#length)| |#length|) (= |#memory_int| |old(#memory_int)|) (= |old(#valid)| |#valid|))} ~size := #in~size;havoc ~p~2.base, ~p~2.offset;havoc ~tmp~4.base, ~tmp~4.offset;call #t~malloc109.base, #t~malloc109.offset := #Ultimate.allocOnHeap(~size); {3724#true} is VALID [2022-02-20 22:05:55,268 INFO L272 TraceCheckUtils]: 4: Hoare triple {3724#true} call #Ultimate.meminit(#t~malloc109.base, #t~malloc109.offset, 1, ~size, ~size); {3759#(= |#memory_int| |old(#memory_int)|)} is VALID [2022-02-20 22:05:55,275 INFO L290 TraceCheckUtils]: 5: Hoare triple {3759#(= |#memory_int| |old(#memory_int)|)} #memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, #ptr.base); {3724#true} is VALID [2022-02-20 22:05:55,275 INFO L290 TraceCheckUtils]: 6: Hoare triple {3724#true} assume true; {3724#true} is VALID [2022-02-20 22:05:55,277 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {3724#true} {3724#true} #1074#return; {3724#true} is VALID [2022-02-20 22:05:55,278 INFO L290 TraceCheckUtils]: 8: Hoare triple {3724#true} ~tmp~4.base, ~tmp~4.offset := #t~malloc109.base, #t~malloc109.offset;~p~2.base, ~p~2.offset := ~tmp~4.base, ~tmp~4.offset; {3724#true} is VALID [2022-02-20 22:05:55,278 INFO L272 TraceCheckUtils]: 9: Hoare triple {3724#true} call assume_abort_if_not((if 0 != (~p~2.base + ~p~2.offset) % 18446744073709551616 then 1 else 0)); {3724#true} is VALID [2022-02-20 22:05:55,278 INFO L290 TraceCheckUtils]: 10: Hoare triple {3724#true} ~cond := #in~cond; {3724#true} is VALID [2022-02-20 22:05:55,279 INFO L290 TraceCheckUtils]: 11: Hoare triple {3724#true} assume !(0 == ~cond); {3724#true} is VALID [2022-02-20 22:05:55,279 INFO L290 TraceCheckUtils]: 12: Hoare triple {3724#true} assume true; {3724#true} is VALID [2022-02-20 22:05:55,279 INFO L284 TraceCheckUtils]: 13: Hoare quadruple {3724#true} {3724#true} #1076#return; {3724#true} is VALID [2022-02-20 22:05:55,279 INFO L290 TraceCheckUtils]: 14: Hoare triple {3724#true} #res.base, #res.offset := ~p~2.base, ~p~2.offset; {3724#true} is VALID [2022-02-20 22:05:55,280 INFO L290 TraceCheckUtils]: 15: Hoare triple {3724#true} assume true; {3724#true} is VALID [2022-02-20 22:05:55,280 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {3724#true} {3724#true} #1084#return; {3724#true} is VALID [2022-02-20 22:05:55,280 INFO L290 TraceCheckUtils]: 17: Hoare triple {3724#true} main_~tmp~25#1.base, main_~tmp~25#1.offset := main_#t~ret370#1.base, main_#t~ret370#1.offset;havoc main_#t~ret370#1.base, main_#t~ret370#1.offset;main_~ldvarg0~0#1.base, main_~ldvarg0~0#1.offset := main_~tmp~25#1.base, main_~tmp~25#1.offset;assume { :begin_inline_ldv_initialize } true; {3724#true} is VALID [2022-02-20 22:05:55,280 INFO L290 TraceCheckUtils]: 18: Hoare triple {3724#true} assume { :end_inline_ldv_initialize } true; {3724#true} is VALID [2022-02-20 22:05:55,281 INFO L272 TraceCheckUtils]: 19: Hoare triple {3724#true} call main_#t~ret371#1.base, main_#t~ret371#1.offset := ldv_memset(main_~#ldvarg1~0#1.base, main_~#ldvarg1~0#1.offset, 0, 8); {3760#(and (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2022-02-20 22:05:55,281 INFO L290 TraceCheckUtils]: 20: Hoare triple {3760#(and (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~s#1.base, ~s#1.offset := #in~s#1.base, #in~s#1.offset;~c#1 := #in~c#1;~n#1 := #in~n#1;havoc ~tmp~5#1.base, ~tmp~5#1.offset;assume { :begin_inline_#Ultimate.C_memset } true;#Ultimate.C_memset_#ptr#1.base, #Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#value#1, #Ultimate.C_memset_#amount#1 := ~s#1.base, ~s#1.offset, ~c#1, ~n#1;havoc #Ultimate.C_memset_#res#1.base, #Ultimate.C_memset_#res#1.offset;havoc #Ultimate.C_memset_#t~loopctr416#1;#Ultimate.C_memset_#t~loopctr416#1 := 0; {3724#true} is VALID [2022-02-20 22:05:55,281 INFO L290 TraceCheckUtils]: 21: Hoare triple {3724#true} assume !(#Ultimate.C_memset_#t~loopctr416#1 % 18446744073709551616 < #Ultimate.C_memset_#amount#1 % 18446744073709551616); {3724#true} is VALID [2022-02-20 22:05:55,281 INFO L290 TraceCheckUtils]: 22: Hoare triple {3724#true} assume #Ultimate.C_memset_#res#1.base == #Ultimate.C_memset_#ptr#1.base && #Ultimate.C_memset_#res#1.offset == #Ultimate.C_memset_#ptr#1.offset;#t~memset~res110#1.base, #t~memset~res110#1.offset := #Ultimate.C_memset_#res#1.base, #Ultimate.C_memset_#res#1.offset;assume { :end_inline_#Ultimate.C_memset } true;~tmp~5#1.base, ~tmp~5#1.offset := ~s#1.base, ~s#1.offset;havoc #t~memset~res110#1.base, #t~memset~res110#1.offset;#res#1.base, #res#1.offset := ~tmp~5#1.base, ~tmp~5#1.offset; {3724#true} is VALID [2022-02-20 22:05:55,282 INFO L290 TraceCheckUtils]: 23: Hoare triple {3724#true} assume true; {3724#true} is VALID [2022-02-20 22:05:55,282 INFO L284 TraceCheckUtils]: 24: Hoare quadruple {3724#true} {3724#true} #1086#return; {3724#true} is VALID [2022-02-20 22:05:55,282 INFO L290 TraceCheckUtils]: 25: Hoare triple {3724#true} havoc main_#t~ret371#1.base, main_#t~ret371#1.offset; {3724#true} is VALID [2022-02-20 22:05:55,283 INFO L272 TraceCheckUtils]: 26: Hoare triple {3724#true} call main_#t~ret372#1.base, main_#t~ret372#1.offset := ldv_memset(main_~#ldvarg3~0#1.base, main_~#ldvarg3~0#1.offset, 0, 4); {3760#(and (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2022-02-20 22:05:55,283 INFO L290 TraceCheckUtils]: 27: Hoare triple {3760#(and (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~s#1.base, ~s#1.offset := #in~s#1.base, #in~s#1.offset;~c#1 := #in~c#1;~n#1 := #in~n#1;havoc ~tmp~5#1.base, ~tmp~5#1.offset;assume { :begin_inline_#Ultimate.C_memset } true;#Ultimate.C_memset_#ptr#1.base, #Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#value#1, #Ultimate.C_memset_#amount#1 := ~s#1.base, ~s#1.offset, ~c#1, ~n#1;havoc #Ultimate.C_memset_#res#1.base, #Ultimate.C_memset_#res#1.offset;havoc #Ultimate.C_memset_#t~loopctr416#1;#Ultimate.C_memset_#t~loopctr416#1 := 0; {3724#true} is VALID [2022-02-20 22:05:55,283 INFO L290 TraceCheckUtils]: 28: Hoare triple {3724#true} assume !(#Ultimate.C_memset_#t~loopctr416#1 % 18446744073709551616 < #Ultimate.C_memset_#amount#1 % 18446744073709551616); {3724#true} is VALID [2022-02-20 22:05:55,283 INFO L290 TraceCheckUtils]: 29: Hoare triple {3724#true} assume #Ultimate.C_memset_#res#1.base == #Ultimate.C_memset_#ptr#1.base && #Ultimate.C_memset_#res#1.offset == #Ultimate.C_memset_#ptr#1.offset;#t~memset~res110#1.base, #t~memset~res110#1.offset := #Ultimate.C_memset_#res#1.base, #Ultimate.C_memset_#res#1.offset;assume { :end_inline_#Ultimate.C_memset } true;~tmp~5#1.base, ~tmp~5#1.offset := ~s#1.base, ~s#1.offset;havoc #t~memset~res110#1.base, #t~memset~res110#1.offset;#res#1.base, #res#1.offset := ~tmp~5#1.base, ~tmp~5#1.offset; {3724#true} is VALID [2022-02-20 22:05:55,284 INFO L290 TraceCheckUtils]: 30: Hoare triple {3724#true} assume true; {3724#true} is VALID [2022-02-20 22:05:55,284 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {3724#true} {3724#true} #1088#return; {3724#true} is VALID [2022-02-20 22:05:55,284 INFO L290 TraceCheckUtils]: 32: Hoare triple {3724#true} havoc main_#t~ret372#1.base, main_#t~ret372#1.offset;main_~ldvarg2~0#1 := main_#t~nondet373#1;havoc main_#t~nondet373#1;~ldv_state_variable_1~0 := 0;~ref_cnt~0 := 0;~ldv_state_variable_0~0 := 1;~ldv_state_variable_2~0 := 0; {3750#(= ~ldv_state_variable_0~0 1)} is VALID [2022-02-20 22:05:55,285 INFO L290 TraceCheckUtils]: 33: Hoare triple {3750#(= ~ldv_state_variable_0~0 1)} assume -2147483648 <= main_#t~nondet374#1 && main_#t~nondet374#1 <= 2147483647;main_~tmp___0~12#1 := main_#t~nondet374#1;havoc main_#t~nondet374#1;main_#t~switch375#1 := 0 == main_~tmp___0~12#1; {3750#(= ~ldv_state_variable_0~0 1)} is VALID [2022-02-20 22:05:55,285 INFO L290 TraceCheckUtils]: 34: Hoare triple {3750#(= ~ldv_state_variable_0~0 1)} assume !main_#t~switch375#1;main_#t~switch375#1 := main_#t~switch375#1 || 1 == main_~tmp___0~12#1; {3750#(= ~ldv_state_variable_0~0 1)} is VALID [2022-02-20 22:05:55,285 INFO L290 TraceCheckUtils]: 35: Hoare triple {3750#(= ~ldv_state_variable_0~0 1)} assume main_#t~switch375#1; {3750#(= ~ldv_state_variable_0~0 1)} is VALID [2022-02-20 22:05:55,286 INFO L290 TraceCheckUtils]: 36: Hoare triple {3750#(= ~ldv_state_variable_0~0 1)} assume 0 != ~ldv_state_variable_0~0;assume -2147483648 <= main_#t~nondet379#1 && main_#t~nondet379#1 <= 2147483647;main_~tmp___2~4#1 := main_#t~nondet379#1;havoc main_#t~nondet379#1;main_#t~switch380#1 := 0 == main_~tmp___2~4#1; {3750#(= ~ldv_state_variable_0~0 1)} is VALID [2022-02-20 22:05:55,286 INFO L290 TraceCheckUtils]: 37: Hoare triple {3750#(= ~ldv_state_variable_0~0 1)} assume main_#t~switch380#1; {3750#(= ~ldv_state_variable_0~0 1)} is VALID [2022-02-20 22:05:55,287 INFO L290 TraceCheckUtils]: 38: Hoare triple {3750#(= ~ldv_state_variable_0~0 1)} assume 3 == ~ldv_state_variable_0~0 && 0 == ~ref_cnt~0;assume { :begin_inline_fini } true;assume { :begin_inline_unregister_blkdev } true;unregister_blkdev_#in~arg0#1, unregister_blkdev_#in~arg1#1.base, unregister_blkdev_#in~arg1#1.offset := ~major~0, 10, 0;havoc unregister_blkdev_~arg0#1, unregister_blkdev_~arg1#1.base, unregister_blkdev_~arg1#1.offset;unregister_blkdev_~arg0#1 := unregister_blkdev_#in~arg0#1;unregister_blkdev_~arg1#1.base, unregister_blkdev_~arg1#1.offset := unregister_blkdev_#in~arg1#1.base, unregister_blkdev_#in~arg1#1.offset; {3725#false} is VALID [2022-02-20 22:05:55,287 INFO L290 TraceCheckUtils]: 39: Hoare triple {3725#false} assume { :end_inline_unregister_blkdev } true;assume { :begin_inline_unregister_virtio_driver } true;unregister_virtio_driver_#in~arg0#1.base, unregister_virtio_driver_#in~arg0#1.offset := ~#virtio_blk~0.base, ~#virtio_blk~0.offset;havoc unregister_virtio_driver_~arg0#1.base, unregister_virtio_driver_~arg0#1.offset;unregister_virtio_driver_~arg0#1.base, unregister_virtio_driver_~arg0#1.offset := unregister_virtio_driver_#in~arg0#1.base, unregister_virtio_driver_#in~arg0#1.offset; {3725#false} is VALID [2022-02-20 22:05:55,287 INFO L290 TraceCheckUtils]: 40: Hoare triple {3725#false} assume { :end_inline_unregister_virtio_driver } true; {3725#false} is VALID [2022-02-20 22:05:55,287 INFO L290 TraceCheckUtils]: 41: Hoare triple {3725#false} assume { :end_inline_fini } true;~ldv_state_variable_0~0 := 2; {3725#false} is VALID [2022-02-20 22:05:55,288 INFO L290 TraceCheckUtils]: 42: Hoare triple {3725#false} assume { :begin_inline_ldv_check_final_state } true; {3725#false} is VALID [2022-02-20 22:05:55,288 INFO L290 TraceCheckUtils]: 43: Hoare triple {3725#false} assume 0 != ~ldv_blk_rq~0; {3725#false} is VALID [2022-02-20 22:05:55,288 INFO L272 TraceCheckUtils]: 44: Hoare triple {3725#false} call ldv_error(); {3725#false} is VALID [2022-02-20 22:05:55,288 INFO L290 TraceCheckUtils]: 45: Hoare triple {3725#false} assume !false; {3725#false} is VALID [2022-02-20 22:05:55,291 INFO L134 CoverageAnalysis]: Checked inductivity of 5 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 5 trivial. 0 not checked. [2022-02-20 22:05:55,291 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 22:05:55,292 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1828037629] [2022-02-20 22:05:55,292 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1828037629] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 22:05:55,292 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 22:05:55,292 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-02-20 22:05:55,293 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1640977280] [2022-02-20 22:05:55,293 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 22:05:55,294 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 5.166666666666667) internal successors, (31), 3 states have internal predecessors, (31), 2 states have call successors, (6), 5 states have call predecessors, (6), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) Word has length 46 [2022-02-20 22:05:55,294 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 22:05:55,295 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 6 states, 6 states have (on average 5.166666666666667) internal successors, (31), 3 states have internal predecessors, (31), 2 states have call successors, (6), 5 states have call predecessors, (6), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) [2022-02-20 22:05:55,322 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 42 edges. 42 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 22:05:55,323 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-02-20 22:05:55,323 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 22:05:55,323 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-02-20 22:05:55,323 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=11, Invalid=19, Unknown=0, NotChecked=0, Total=30 [2022-02-20 22:05:55,324 INFO L87 Difference]: Start difference. First operand 445 states and 586 transitions. Second operand has 6 states, 6 states have (on average 5.166666666666667) internal successors, (31), 3 states have internal predecessors, (31), 2 states have call successors, (6), 5 states have call predecessors, (6), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) [2022-02-20 22:05:59,578 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 22:05:59,579 INFO L93 Difference]: Finished difference Result 1470 states and 1993 transitions. [2022-02-20 22:05:59,579 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-02-20 22:05:59,579 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 5.166666666666667) internal successors, (31), 3 states have internal predecessors, (31), 2 states have call successors, (6), 5 states have call predecessors, (6), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) Word has length 46 [2022-02-20 22:05:59,579 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 22:05:59,580 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 5.166666666666667) internal successors, (31), 3 states have internal predecessors, (31), 2 states have call successors, (6), 5 states have call predecessors, (6), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) [2022-02-20 22:05:59,602 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 1993 transitions. [2022-02-20 22:05:59,602 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 5.166666666666667) internal successors, (31), 3 states have internal predecessors, (31), 2 states have call successors, (6), 5 states have call predecessors, (6), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) [2022-02-20 22:05:59,631 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 1993 transitions. [2022-02-20 22:05:59,631 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 7 states and 1993 transitions. [2022-02-20 22:06:01,116 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 1993 edges. 1993 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 22:06:01,192 INFO L225 Difference]: With dead ends: 1470 [2022-02-20 22:06:01,192 INFO L226 Difference]: Without dead ends: 1039 [2022-02-20 22:06:01,193 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 18 GetRequests, 11 SyntacticMatches, 0 SemanticMatches, 7 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 3 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=29, Invalid=43, Unknown=0, NotChecked=0, Total=72 [2022-02-20 22:06:01,194 INFO L933 BasicCegarLoop]: 613 mSDtfsCounter, 1384 mSDsluCounter, 742 mSDsCounter, 0 mSdLazyCounter, 552 mSolverCounterSat, 769 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 1460 SdHoareTripleChecker+Valid, 1355 SdHoareTripleChecker+Invalid, 1321 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 769 IncrementalHoareTripleChecker+Valid, 552 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.2s IncrementalHoareTripleChecker+Time [2022-02-20 22:06:01,195 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [1460 Valid, 1355 Invalid, 1321 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [769 Valid, 552 Invalid, 0 Unknown, 0 Unchecked, 1.2s Time] [2022-02-20 22:06:01,196 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 1039 states. [2022-02-20 22:06:01,230 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 1039 to 846. [2022-02-20 22:06:01,230 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 22:06:01,233 INFO L82 GeneralOperation]: Start isEquivalent. First operand 1039 states. Second operand has 846 states, 651 states have (on average 1.2642089093701996) internal successors, (823), 660 states have internal predecessors, (823), 149 states have call successors, (149), 46 states have call predecessors, (149), 45 states have return successors, (147), 147 states have call predecessors, (147), 147 states have call successors, (147) [2022-02-20 22:06:01,235 INFO L74 IsIncluded]: Start isIncluded. First operand 1039 states. Second operand has 846 states, 651 states have (on average 1.2642089093701996) internal successors, (823), 660 states have internal predecessors, (823), 149 states have call successors, (149), 46 states have call predecessors, (149), 45 states have return successors, (147), 147 states have call predecessors, (147), 147 states have call successors, (147) [2022-02-20 22:06:01,238 INFO L87 Difference]: Start difference. First operand 1039 states. Second operand has 846 states, 651 states have (on average 1.2642089093701996) internal successors, (823), 660 states have internal predecessors, (823), 149 states have call successors, (149), 46 states have call predecessors, (149), 45 states have return successors, (147), 147 states have call predecessors, (147), 147 states have call successors, (147) [2022-02-20 22:06:01,285 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 22:06:01,286 INFO L93 Difference]: Finished difference Result 1039 states and 1421 transitions. [2022-02-20 22:06:01,290 INFO L276 IsEmpty]: Start isEmpty. Operand 1039 states and 1421 transitions. [2022-02-20 22:06:01,295 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 22:06:01,295 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 22:06:01,297 INFO L74 IsIncluded]: Start isIncluded. First operand has 846 states, 651 states have (on average 1.2642089093701996) internal successors, (823), 660 states have internal predecessors, (823), 149 states have call successors, (149), 46 states have call predecessors, (149), 45 states have return successors, (147), 147 states have call predecessors, (147), 147 states have call successors, (147) Second operand 1039 states. [2022-02-20 22:06:01,298 INFO L87 Difference]: Start difference. First operand has 846 states, 651 states have (on average 1.2642089093701996) internal successors, (823), 660 states have internal predecessors, (823), 149 states have call successors, (149), 46 states have call predecessors, (149), 45 states have return successors, (147), 147 states have call predecessors, (147), 147 states have call successors, (147) Second operand 1039 states. [2022-02-20 22:06:01,341 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 22:06:01,342 INFO L93 Difference]: Finished difference Result 1039 states and 1421 transitions. [2022-02-20 22:06:01,342 INFO L276 IsEmpty]: Start isEmpty. Operand 1039 states and 1421 transitions. [2022-02-20 22:06:01,346 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 22:06:01,346 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 22:06:01,346 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 22:06:01,346 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 22:06:01,348 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 846 states, 651 states have (on average 1.2642089093701996) internal successors, (823), 660 states have internal predecessors, (823), 149 states have call successors, (149), 46 states have call predecessors, (149), 45 states have return successors, (147), 147 states have call predecessors, (147), 147 states have call successors, (147) [2022-02-20 22:06:01,391 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 846 states to 846 states and 1119 transitions. [2022-02-20 22:06:01,392 INFO L78 Accepts]: Start accepts. Automaton has 846 states and 1119 transitions. Word has length 46 [2022-02-20 22:06:01,392 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 22:06:01,392 INFO L470 AbstractCegarLoop]: Abstraction has 846 states and 1119 transitions. [2022-02-20 22:06:01,393 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 6 states have (on average 5.166666666666667) internal successors, (31), 3 states have internal predecessors, (31), 2 states have call successors, (6), 5 states have call predecessors, (6), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) [2022-02-20 22:06:01,393 INFO L276 IsEmpty]: Start isEmpty. Operand 846 states and 1119 transitions. [2022-02-20 22:06:01,394 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 50 [2022-02-20 22:06:01,395 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 22:06:01,395 INFO L514 BasicCegarLoop]: trace histogram [2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 22:06:01,395 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2022-02-20 22:06:01,395 INFO L402 AbstractCegarLoop]: === Iteration 3 === Targeting ldv_errorErr0ASSERT_VIOLATIONERROR_FUNCTION === [ldv_errorErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 22:06:01,396 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 22:06:01,396 INFO L85 PathProgramCache]: Analyzing trace with hash 1350486453, now seen corresponding path program 1 times [2022-02-20 22:06:01,396 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 22:06:01,396 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [347418484] [2022-02-20 22:06:01,396 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 22:06:01,397 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 22:06:01,445 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 22:06:01,486 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2022-02-20 22:06:01,490 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 22:06:01,500 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 1 [2022-02-20 22:06:01,507 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 22:06:01,511 INFO L290 TraceCheckUtils]: 0: Hoare triple {9229#(= |#memory_int| |old(#memory_int)|)} #memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, #ptr.base); {9194#true} is VALID [2022-02-20 22:06:01,511 INFO L290 TraceCheckUtils]: 1: Hoare triple {9194#true} assume true; {9194#true} is VALID [2022-02-20 22:06:01,511 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {9194#true} {9194#true} #1074#return; {9194#true} is VALID [2022-02-20 22:06:01,511 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-02-20 22:06:01,512 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 22:06:01,516 INFO L290 TraceCheckUtils]: 0: Hoare triple {9194#true} ~cond := #in~cond; {9194#true} is VALID [2022-02-20 22:06:01,516 INFO L290 TraceCheckUtils]: 1: Hoare triple {9194#true} assume !(0 == ~cond); {9194#true} is VALID [2022-02-20 22:06:01,517 INFO L290 TraceCheckUtils]: 2: Hoare triple {9194#true} assume true; {9194#true} is VALID [2022-02-20 22:06:01,517 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {9194#true} {9194#true} #1076#return; {9194#true} is VALID [2022-02-20 22:06:01,517 INFO L290 TraceCheckUtils]: 0: Hoare triple {9221#(and (= |old(#length)| |#length|) (= |#memory_int| |old(#memory_int)|) (= |old(#valid)| |#valid|))} ~size := #in~size;havoc ~p~2.base, ~p~2.offset;havoc ~tmp~4.base, ~tmp~4.offset;call #t~malloc109.base, #t~malloc109.offset := #Ultimate.allocOnHeap(~size); {9194#true} is VALID [2022-02-20 22:06:01,518 INFO L272 TraceCheckUtils]: 1: Hoare triple {9194#true} call #Ultimate.meminit(#t~malloc109.base, #t~malloc109.offset, 1, ~size, ~size); {9229#(= |#memory_int| |old(#memory_int)|)} is VALID [2022-02-20 22:06:01,518 INFO L290 TraceCheckUtils]: 2: Hoare triple {9229#(= |#memory_int| |old(#memory_int)|)} #memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, #ptr.base); {9194#true} is VALID [2022-02-20 22:06:01,518 INFO L290 TraceCheckUtils]: 3: Hoare triple {9194#true} assume true; {9194#true} is VALID [2022-02-20 22:06:01,518 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {9194#true} {9194#true} #1074#return; {9194#true} is VALID [2022-02-20 22:06:01,518 INFO L290 TraceCheckUtils]: 5: Hoare triple {9194#true} ~tmp~4.base, ~tmp~4.offset := #t~malloc109.base, #t~malloc109.offset;~p~2.base, ~p~2.offset := ~tmp~4.base, ~tmp~4.offset; {9194#true} is VALID [2022-02-20 22:06:01,519 INFO L272 TraceCheckUtils]: 6: Hoare triple {9194#true} call assume_abort_if_not((if 0 != (~p~2.base + ~p~2.offset) % 18446744073709551616 then 1 else 0)); {9194#true} is VALID [2022-02-20 22:06:01,519 INFO L290 TraceCheckUtils]: 7: Hoare triple {9194#true} ~cond := #in~cond; {9194#true} is VALID [2022-02-20 22:06:01,519 INFO L290 TraceCheckUtils]: 8: Hoare triple {9194#true} assume !(0 == ~cond); {9194#true} is VALID [2022-02-20 22:06:01,519 INFO L290 TraceCheckUtils]: 9: Hoare triple {9194#true} assume true; {9194#true} is VALID [2022-02-20 22:06:01,519 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {9194#true} {9194#true} #1076#return; {9194#true} is VALID [2022-02-20 22:06:01,519 INFO L290 TraceCheckUtils]: 11: Hoare triple {9194#true} #res.base, #res.offset := ~p~2.base, ~p~2.offset; {9194#true} is VALID [2022-02-20 22:06:01,519 INFO L290 TraceCheckUtils]: 12: Hoare triple {9194#true} assume true; {9194#true} is VALID [2022-02-20 22:06:01,520 INFO L284 TraceCheckUtils]: 13: Hoare quadruple {9194#true} {9196#(= ~ldv_blk_rq~0 0)} #1084#return; {9196#(= ~ldv_blk_rq~0 0)} is VALID [2022-02-20 22:06:01,525 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 19 [2022-02-20 22:06:01,530 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 22:06:01,536 INFO L290 TraceCheckUtils]: 0: Hoare triple {9230#(and (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~s#1.base, ~s#1.offset := #in~s#1.base, #in~s#1.offset;~c#1 := #in~c#1;~n#1 := #in~n#1;havoc ~tmp~5#1.base, ~tmp~5#1.offset;assume { :begin_inline_#Ultimate.C_memset } true;#Ultimate.C_memset_#ptr#1.base, #Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#value#1, #Ultimate.C_memset_#amount#1 := ~s#1.base, ~s#1.offset, ~c#1, ~n#1;havoc #Ultimate.C_memset_#res#1.base, #Ultimate.C_memset_#res#1.offset;havoc #Ultimate.C_memset_#t~loopctr416#1;#Ultimate.C_memset_#t~loopctr416#1 := 0; {9194#true} is VALID [2022-02-20 22:06:01,536 INFO L290 TraceCheckUtils]: 1: Hoare triple {9194#true} assume !(#Ultimate.C_memset_#t~loopctr416#1 % 18446744073709551616 < #Ultimate.C_memset_#amount#1 % 18446744073709551616); {9194#true} is VALID [2022-02-20 22:06:01,537 INFO L290 TraceCheckUtils]: 2: Hoare triple {9194#true} assume #Ultimate.C_memset_#res#1.base == #Ultimate.C_memset_#ptr#1.base && #Ultimate.C_memset_#res#1.offset == #Ultimate.C_memset_#ptr#1.offset;#t~memset~res110#1.base, #t~memset~res110#1.offset := #Ultimate.C_memset_#res#1.base, #Ultimate.C_memset_#res#1.offset;assume { :end_inline_#Ultimate.C_memset } true;~tmp~5#1.base, ~tmp~5#1.offset := ~s#1.base, ~s#1.offset;havoc #t~memset~res110#1.base, #t~memset~res110#1.offset;#res#1.base, #res#1.offset := ~tmp~5#1.base, ~tmp~5#1.offset; {9194#true} is VALID [2022-02-20 22:06:01,537 INFO L290 TraceCheckUtils]: 3: Hoare triple {9194#true} assume true; {9194#true} is VALID [2022-02-20 22:06:01,538 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {9194#true} {9196#(= ~ldv_blk_rq~0 0)} #1086#return; {9196#(= ~ldv_blk_rq~0 0)} is VALID [2022-02-20 22:06:01,538 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 26 [2022-02-20 22:06:01,541 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 22:06:01,547 INFO L290 TraceCheckUtils]: 0: Hoare triple {9230#(and (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~s#1.base, ~s#1.offset := #in~s#1.base, #in~s#1.offset;~c#1 := #in~c#1;~n#1 := #in~n#1;havoc ~tmp~5#1.base, ~tmp~5#1.offset;assume { :begin_inline_#Ultimate.C_memset } true;#Ultimate.C_memset_#ptr#1.base, #Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#value#1, #Ultimate.C_memset_#amount#1 := ~s#1.base, ~s#1.offset, ~c#1, ~n#1;havoc #Ultimate.C_memset_#res#1.base, #Ultimate.C_memset_#res#1.offset;havoc #Ultimate.C_memset_#t~loopctr416#1;#Ultimate.C_memset_#t~loopctr416#1 := 0; {9194#true} is VALID [2022-02-20 22:06:01,547 INFO L290 TraceCheckUtils]: 1: Hoare triple {9194#true} assume !(#Ultimate.C_memset_#t~loopctr416#1 % 18446744073709551616 < #Ultimate.C_memset_#amount#1 % 18446744073709551616); {9194#true} is VALID [2022-02-20 22:06:01,548 INFO L290 TraceCheckUtils]: 2: Hoare triple {9194#true} assume #Ultimate.C_memset_#res#1.base == #Ultimate.C_memset_#ptr#1.base && #Ultimate.C_memset_#res#1.offset == #Ultimate.C_memset_#ptr#1.offset;#t~memset~res110#1.base, #t~memset~res110#1.offset := #Ultimate.C_memset_#res#1.base, #Ultimate.C_memset_#res#1.offset;assume { :end_inline_#Ultimate.C_memset } true;~tmp~5#1.base, ~tmp~5#1.offset := ~s#1.base, ~s#1.offset;havoc #t~memset~res110#1.base, #t~memset~res110#1.offset;#res#1.base, #res#1.offset := ~tmp~5#1.base, ~tmp~5#1.offset; {9194#true} is VALID [2022-02-20 22:06:01,548 INFO L290 TraceCheckUtils]: 3: Hoare triple {9194#true} assume true; {9194#true} is VALID [2022-02-20 22:06:01,549 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {9194#true} {9196#(= ~ldv_blk_rq~0 0)} #1088#return; {9196#(= ~ldv_blk_rq~0 0)} is VALID [2022-02-20 22:06:01,549 INFO L290 TraceCheckUtils]: 0: Hoare triple {9194#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(95, 2);call #Ultimate.allocInit(22, 3);call #Ultimate.allocInit(9, 4);call #Ultimate.allocInit(5, 5);call write~init~int(118, 5, 0, 1);call write~init~int(100, 5, 1, 1);call write~init~int(37, 5, 2, 1);call write~init~int(99, 5, 3, 1);call write~init~int(0, 5, 4, 1);call #Ultimate.allocInit(7, 6);call write~init~int(118, 6, 0, 1);call write~init~int(100, 6, 1, 1);call write~init~int(37, 6, 2, 1);call write~init~int(99, 6, 3, 1);call write~init~int(37, 6, 4, 1);call write~init~int(99, 6, 5, 1);call write~init~int(0, 6, 6, 1);call #Ultimate.allocInit(9, 7);call #Ultimate.allocInit(11, 8);call #Ultimate.allocInit(8, 9);call #Ultimate.allocInit(8, 10);~LDV_IN_INTERRUPT~0 := 1;~virtblk_fops_group0~0.base, ~virtblk_fops_group0~0.offset := 0, 0;~ldv_state_variable_2~0 := 0;~ref_cnt~0 := 0;~ldv_state_variable_1~0 := 0;~virtio_blk_group0~0.base, ~virtio_blk_group0~0.offset := 0, 0;~ldv_state_variable_0~0 := 0;~major~0 := 0;~index~0 := 0;~#virtblk_fops~0.base, ~#virtblk_fops~0.offset := 11, 0;call #Ultimate.allocInit(96, 11);call write~init~$Pointer$(0, 0, ~#virtblk_fops~0.base, ~#virtblk_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtblk_fops~0.base, 8 + ~#virtblk_fops~0.offset, 8);call write~init~$Pointer$(#funAddr~virtblk_ioctl.base, #funAddr~virtblk_ioctl.offset, ~#virtblk_fops~0.base, 16 + ~#virtblk_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtblk_fops~0.base, 24 + ~#virtblk_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtblk_fops~0.base, 32 + ~#virtblk_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtblk_fops~0.base, 40 + ~#virtblk_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtblk_fops~0.base, 48 + ~#virtblk_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtblk_fops~0.base, 56 + ~#virtblk_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtblk_fops~0.base, 64 + ~#virtblk_fops~0.offset, 8);call write~init~$Pointer$(#funAddr~virtblk_getgeo.base, #funAddr~virtblk_getgeo.offset, ~#virtblk_fops~0.base, 72 + ~#virtblk_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtblk_fops~0.base, 80 + ~#virtblk_fops~0.offset, 8);call write~init~$Pointer$(~#__this_module~0.base, ~#__this_module~0.offset, ~#virtblk_fops~0.base, 88 + ~#virtblk_fops~0.offset, 8);~#id_table~0.base, ~#id_table~0.offset := 12, 0;call #Ultimate.allocInit(16, 12);call write~init~int(2, ~#id_table~0.base, ~#id_table~0.offset, 4);call write~init~int(4294967295, ~#id_table~0.base, 4 + ~#id_table~0.offset, 4);call write~init~int(0, ~#id_table~0.base, 8 + ~#id_table~0.offset, 4);call write~init~int(0, ~#id_table~0.base, 12 + ~#id_table~0.offset, 4);~#features~0.base, ~#features~0.offset := 13, 0;call #Ultimate.allocInit(36, 13);call write~init~int(0, ~#features~0.base, ~#features~0.offset, 4);call write~init~int(2, ~#features~0.base, 4 + ~#features~0.offset, 4);call write~init~int(1, ~#features~0.base, 8 + ~#features~0.offset, 4);call write~init~int(4, ~#features~0.base, 12 + ~#features~0.offset, 4);call write~init~int(5, ~#features~0.base, 16 + ~#features~0.offset, 4);call write~init~int(6, ~#features~0.base, 20 + ~#features~0.offset, 4);call write~init~int(7, ~#features~0.base, 24 + ~#features~0.offset, 4);call write~init~int(9, ~#features~0.base, 28 + ~#features~0.offset, 4);call write~init~int(10, ~#features~0.base, 32 + ~#features~0.offset, 4);~#virtio_blk~0.base, ~#virtio_blk~0.offset := 14, 0;call #Ultimate.allocInit(141, 14);call write~init~$Pointer$(8, 0, ~#virtio_blk~0.base, ~#virtio_blk~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtio_blk~0.base, 8 + ~#virtio_blk~0.offset, 8);call write~init~$Pointer$(~#__this_module~0.base, ~#__this_module~0.offset, ~#virtio_blk~0.base, 16 + ~#virtio_blk~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtio_blk~0.base, 24 + ~#virtio_blk~0.offset, 8);call write~init~int(0, ~#virtio_blk~0.base, 32 + ~#virtio_blk~0.offset, 1);call write~init~$Pointer$(0, 0, ~#virtio_blk~0.base, 33 + ~#virtio_blk~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtio_blk~0.base, 41 + ~#virtio_blk~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtio_blk~0.base, 49 + ~#virtio_blk~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtio_blk~0.base, 57 + ~#virtio_blk~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtio_blk~0.base, 65 + ~#virtio_blk~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtio_blk~0.base, 73 + ~#virtio_blk~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtio_blk~0.base, 81 + ~#virtio_blk~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtio_blk~0.base, 89 + ~#virtio_blk~0.offset, 8);call write~init~$Pointer$(~#id_table~0.base, ~#id_table~0.offset, ~#virtio_blk~0.base, 97 + ~#virtio_blk~0.offset, 8);call write~init~$Pointer$(~#features~0.base, ~#features~0.offset, ~#virtio_blk~0.base, 105 + ~#virtio_blk~0.offset, 8);call write~init~int(9, ~#virtio_blk~0.base, 113 + ~#virtio_blk~0.offset, 4);call write~init~$Pointer$(#funAddr~virtblk_probe.base, #funAddr~virtblk_probe.offset, ~#virtio_blk~0.base, 117 + ~#virtio_blk~0.offset, 8);call write~init~$Pointer$(#funAddr~virtblk_remove.base, #funAddr~virtblk_remove.offset, ~#virtio_blk~0.base, 125 + ~#virtio_blk~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtio_blk~0.base, 133 + ~#virtio_blk~0.offset, 8);~__mod_virtio_device_table~0.device := 0;~__mod_virtio_device_table~0.vendor := 0;~ldv_retval_0~0 := 0;~ldv_retval_1~0 := 0;~ldv_blk_rq~0 := 0; {9196#(= ~ldv_blk_rq~0 0)} is VALID [2022-02-20 22:06:01,549 INFO L290 TraceCheckUtils]: 1: Hoare triple {9196#(= ~ldv_blk_rq~0 0)} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret370#1.base, main_#t~ret370#1.offset, main_#t~ret371#1.base, main_#t~ret371#1.offset, main_#t~ret372#1.base, main_#t~ret372#1.offset, main_#t~nondet373#1, main_#t~nondet374#1, main_#t~switch375#1, main_#t~nondet376#1, main_#t~switch377#1, main_#t~ret378#1, main_#t~nondet379#1, main_#t~switch380#1, main_#t~ret381#1, main_#t~nondet382#1, main_#t~switch383#1, main_#t~mem384#1, main_#t~mem385#1, main_#t~ret386#1, main_#t~ret387#1, main_~#ldvarg1~0#1.base, main_~#ldvarg1~0#1.offset, main_~#ldvarg3~0#1.base, main_~#ldvarg3~0#1.offset, main_~ldvarg0~0#1.base, main_~ldvarg0~0#1.offset, main_~tmp~25#1.base, main_~tmp~25#1.offset, main_~ldvarg2~0#1, main_~tmp___0~12#1, main_~tmp___1~7#1, main_~tmp___2~4#1, main_~tmp___3~3#1;call main_~#ldvarg1~0#1.base, main_~#ldvarg1~0#1.offset := #Ultimate.allocOnStack(8);call main_~#ldvarg3~0#1.base, main_~#ldvarg3~0#1.offset := #Ultimate.allocOnStack(4);havoc main_~ldvarg0~0#1.base, main_~ldvarg0~0#1.offset;havoc main_~tmp~25#1.base, main_~tmp~25#1.offset;havoc main_~ldvarg2~0#1;havoc main_~tmp___0~12#1;havoc main_~tmp___1~7#1;havoc main_~tmp___2~4#1;havoc main_~tmp___3~3#1; {9196#(= ~ldv_blk_rq~0 0)} is VALID [2022-02-20 22:06:01,550 INFO L272 TraceCheckUtils]: 2: Hoare triple {9196#(= ~ldv_blk_rq~0 0)} call main_#t~ret370#1.base, main_#t~ret370#1.offset := ldv_init_zalloc(16); {9221#(and (= |old(#length)| |#length|) (= |#memory_int| |old(#memory_int)|) (= |old(#valid)| |#valid|))} is VALID [2022-02-20 22:06:01,550 INFO L290 TraceCheckUtils]: 3: Hoare triple {9221#(and (= |old(#length)| |#length|) (= |#memory_int| |old(#memory_int)|) (= |old(#valid)| |#valid|))} ~size := #in~size;havoc ~p~2.base, ~p~2.offset;havoc ~tmp~4.base, ~tmp~4.offset;call #t~malloc109.base, #t~malloc109.offset := #Ultimate.allocOnHeap(~size); {9194#true} is VALID [2022-02-20 22:06:01,551 INFO L272 TraceCheckUtils]: 4: Hoare triple {9194#true} call #Ultimate.meminit(#t~malloc109.base, #t~malloc109.offset, 1, ~size, ~size); {9229#(= |#memory_int| |old(#memory_int)|)} is VALID [2022-02-20 22:06:01,551 INFO L290 TraceCheckUtils]: 5: Hoare triple {9229#(= |#memory_int| |old(#memory_int)|)} #memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, #ptr.base); {9194#true} is VALID [2022-02-20 22:06:01,551 INFO L290 TraceCheckUtils]: 6: Hoare triple {9194#true} assume true; {9194#true} is VALID [2022-02-20 22:06:01,551 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {9194#true} {9194#true} #1074#return; {9194#true} is VALID [2022-02-20 22:06:01,551 INFO L290 TraceCheckUtils]: 8: Hoare triple {9194#true} ~tmp~4.base, ~tmp~4.offset := #t~malloc109.base, #t~malloc109.offset;~p~2.base, ~p~2.offset := ~tmp~4.base, ~tmp~4.offset; {9194#true} is VALID [2022-02-20 22:06:01,552 INFO L272 TraceCheckUtils]: 9: Hoare triple {9194#true} call assume_abort_if_not((if 0 != (~p~2.base + ~p~2.offset) % 18446744073709551616 then 1 else 0)); {9194#true} is VALID [2022-02-20 22:06:01,552 INFO L290 TraceCheckUtils]: 10: Hoare triple {9194#true} ~cond := #in~cond; {9194#true} is VALID [2022-02-20 22:06:01,554 INFO L290 TraceCheckUtils]: 11: Hoare triple {9194#true} assume !(0 == ~cond); {9194#true} is VALID [2022-02-20 22:06:01,555 INFO L290 TraceCheckUtils]: 12: Hoare triple {9194#true} assume true; {9194#true} is VALID [2022-02-20 22:06:01,555 INFO L284 TraceCheckUtils]: 13: Hoare quadruple {9194#true} {9194#true} #1076#return; {9194#true} is VALID [2022-02-20 22:06:01,555 INFO L290 TraceCheckUtils]: 14: Hoare triple {9194#true} #res.base, #res.offset := ~p~2.base, ~p~2.offset; {9194#true} is VALID [2022-02-20 22:06:01,555 INFO L290 TraceCheckUtils]: 15: Hoare triple {9194#true} assume true; {9194#true} is VALID [2022-02-20 22:06:01,556 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {9194#true} {9196#(= ~ldv_blk_rq~0 0)} #1084#return; {9196#(= ~ldv_blk_rq~0 0)} is VALID [2022-02-20 22:06:01,556 INFO L290 TraceCheckUtils]: 17: Hoare triple {9196#(= ~ldv_blk_rq~0 0)} main_~tmp~25#1.base, main_~tmp~25#1.offset := main_#t~ret370#1.base, main_#t~ret370#1.offset;havoc main_#t~ret370#1.base, main_#t~ret370#1.offset;main_~ldvarg0~0#1.base, main_~ldvarg0~0#1.offset := main_~tmp~25#1.base, main_~tmp~25#1.offset;assume { :begin_inline_ldv_initialize } true; {9196#(= ~ldv_blk_rq~0 0)} is VALID [2022-02-20 22:06:01,556 INFO L290 TraceCheckUtils]: 18: Hoare triple {9196#(= ~ldv_blk_rq~0 0)} assume { :end_inline_ldv_initialize } true; {9196#(= ~ldv_blk_rq~0 0)} is VALID [2022-02-20 22:06:01,557 INFO L272 TraceCheckUtils]: 19: Hoare triple {9196#(= ~ldv_blk_rq~0 0)} call main_#t~ret371#1.base, main_#t~ret371#1.offset := ldv_memset(main_~#ldvarg1~0#1.base, main_~#ldvarg1~0#1.offset, 0, 8); {9230#(and (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2022-02-20 22:06:01,557 INFO L290 TraceCheckUtils]: 20: Hoare triple {9230#(and (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~s#1.base, ~s#1.offset := #in~s#1.base, #in~s#1.offset;~c#1 := #in~c#1;~n#1 := #in~n#1;havoc ~tmp~5#1.base, ~tmp~5#1.offset;assume { :begin_inline_#Ultimate.C_memset } true;#Ultimate.C_memset_#ptr#1.base, #Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#value#1, #Ultimate.C_memset_#amount#1 := ~s#1.base, ~s#1.offset, ~c#1, ~n#1;havoc #Ultimate.C_memset_#res#1.base, #Ultimate.C_memset_#res#1.offset;havoc #Ultimate.C_memset_#t~loopctr416#1;#Ultimate.C_memset_#t~loopctr416#1 := 0; {9194#true} is VALID [2022-02-20 22:06:01,557 INFO L290 TraceCheckUtils]: 21: Hoare triple {9194#true} assume !(#Ultimate.C_memset_#t~loopctr416#1 % 18446744073709551616 < #Ultimate.C_memset_#amount#1 % 18446744073709551616); {9194#true} is VALID [2022-02-20 22:06:01,557 INFO L290 TraceCheckUtils]: 22: Hoare triple {9194#true} assume #Ultimate.C_memset_#res#1.base == #Ultimate.C_memset_#ptr#1.base && #Ultimate.C_memset_#res#1.offset == #Ultimate.C_memset_#ptr#1.offset;#t~memset~res110#1.base, #t~memset~res110#1.offset := #Ultimate.C_memset_#res#1.base, #Ultimate.C_memset_#res#1.offset;assume { :end_inline_#Ultimate.C_memset } true;~tmp~5#1.base, ~tmp~5#1.offset := ~s#1.base, ~s#1.offset;havoc #t~memset~res110#1.base, #t~memset~res110#1.offset;#res#1.base, #res#1.offset := ~tmp~5#1.base, ~tmp~5#1.offset; {9194#true} is VALID [2022-02-20 22:06:01,558 INFO L290 TraceCheckUtils]: 23: Hoare triple {9194#true} assume true; {9194#true} is VALID [2022-02-20 22:06:01,558 INFO L284 TraceCheckUtils]: 24: Hoare quadruple {9194#true} {9196#(= ~ldv_blk_rq~0 0)} #1086#return; {9196#(= ~ldv_blk_rq~0 0)} is VALID [2022-02-20 22:06:01,559 INFO L290 TraceCheckUtils]: 25: Hoare triple {9196#(= ~ldv_blk_rq~0 0)} havoc main_#t~ret371#1.base, main_#t~ret371#1.offset; {9196#(= ~ldv_blk_rq~0 0)} is VALID [2022-02-20 22:06:01,559 INFO L272 TraceCheckUtils]: 26: Hoare triple {9196#(= ~ldv_blk_rq~0 0)} call main_#t~ret372#1.base, main_#t~ret372#1.offset := ldv_memset(main_~#ldvarg3~0#1.base, main_~#ldvarg3~0#1.offset, 0, 4); {9230#(and (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2022-02-20 22:06:01,559 INFO L290 TraceCheckUtils]: 27: Hoare triple {9230#(and (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~s#1.base, ~s#1.offset := #in~s#1.base, #in~s#1.offset;~c#1 := #in~c#1;~n#1 := #in~n#1;havoc ~tmp~5#1.base, ~tmp~5#1.offset;assume { :begin_inline_#Ultimate.C_memset } true;#Ultimate.C_memset_#ptr#1.base, #Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#value#1, #Ultimate.C_memset_#amount#1 := ~s#1.base, ~s#1.offset, ~c#1, ~n#1;havoc #Ultimate.C_memset_#res#1.base, #Ultimate.C_memset_#res#1.offset;havoc #Ultimate.C_memset_#t~loopctr416#1;#Ultimate.C_memset_#t~loopctr416#1 := 0; {9194#true} is VALID [2022-02-20 22:06:01,560 INFO L290 TraceCheckUtils]: 28: Hoare triple {9194#true} assume !(#Ultimate.C_memset_#t~loopctr416#1 % 18446744073709551616 < #Ultimate.C_memset_#amount#1 % 18446744073709551616); {9194#true} is VALID [2022-02-20 22:06:01,560 INFO L290 TraceCheckUtils]: 29: Hoare triple {9194#true} assume #Ultimate.C_memset_#res#1.base == #Ultimate.C_memset_#ptr#1.base && #Ultimate.C_memset_#res#1.offset == #Ultimate.C_memset_#ptr#1.offset;#t~memset~res110#1.base, #t~memset~res110#1.offset := #Ultimate.C_memset_#res#1.base, #Ultimate.C_memset_#res#1.offset;assume { :end_inline_#Ultimate.C_memset } true;~tmp~5#1.base, ~tmp~5#1.offset := ~s#1.base, ~s#1.offset;havoc #t~memset~res110#1.base, #t~memset~res110#1.offset;#res#1.base, #res#1.offset := ~tmp~5#1.base, ~tmp~5#1.offset; {9194#true} is VALID [2022-02-20 22:06:01,560 INFO L290 TraceCheckUtils]: 30: Hoare triple {9194#true} assume true; {9194#true} is VALID [2022-02-20 22:06:01,561 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {9194#true} {9196#(= ~ldv_blk_rq~0 0)} #1088#return; {9196#(= ~ldv_blk_rq~0 0)} is VALID [2022-02-20 22:06:01,561 INFO L290 TraceCheckUtils]: 32: Hoare triple {9196#(= ~ldv_blk_rq~0 0)} havoc main_#t~ret372#1.base, main_#t~ret372#1.offset;main_~ldvarg2~0#1 := main_#t~nondet373#1;havoc main_#t~nondet373#1;~ldv_state_variable_1~0 := 0;~ref_cnt~0 := 0;~ldv_state_variable_0~0 := 1;~ldv_state_variable_2~0 := 0; {9196#(= ~ldv_blk_rq~0 0)} is VALID [2022-02-20 22:06:01,561 INFO L290 TraceCheckUtils]: 33: Hoare triple {9196#(= ~ldv_blk_rq~0 0)} assume -2147483648 <= main_#t~nondet374#1 && main_#t~nondet374#1 <= 2147483647;main_~tmp___0~12#1 := main_#t~nondet374#1;havoc main_#t~nondet374#1;main_#t~switch375#1 := 0 == main_~tmp___0~12#1; {9196#(= ~ldv_blk_rq~0 0)} is VALID [2022-02-20 22:06:01,562 INFO L290 TraceCheckUtils]: 34: Hoare triple {9196#(= ~ldv_blk_rq~0 0)} assume !main_#t~switch375#1;main_#t~switch375#1 := main_#t~switch375#1 || 1 == main_~tmp___0~12#1; {9196#(= ~ldv_blk_rq~0 0)} is VALID [2022-02-20 22:06:01,562 INFO L290 TraceCheckUtils]: 35: Hoare triple {9196#(= ~ldv_blk_rq~0 0)} assume main_#t~switch375#1; {9196#(= ~ldv_blk_rq~0 0)} is VALID [2022-02-20 22:06:01,562 INFO L290 TraceCheckUtils]: 36: Hoare triple {9196#(= ~ldv_blk_rq~0 0)} assume 0 != ~ldv_state_variable_0~0;assume -2147483648 <= main_#t~nondet379#1 && main_#t~nondet379#1 <= 2147483647;main_~tmp___2~4#1 := main_#t~nondet379#1;havoc main_#t~nondet379#1;main_#t~switch380#1 := 0 == main_~tmp___2~4#1; {9196#(= ~ldv_blk_rq~0 0)} is VALID [2022-02-20 22:06:01,562 INFO L290 TraceCheckUtils]: 37: Hoare triple {9196#(= ~ldv_blk_rq~0 0)} assume !main_#t~switch380#1;main_#t~switch380#1 := main_#t~switch380#1 || 1 == main_~tmp___2~4#1; {9196#(= ~ldv_blk_rq~0 0)} is VALID [2022-02-20 22:06:01,563 INFO L290 TraceCheckUtils]: 38: Hoare triple {9196#(= ~ldv_blk_rq~0 0)} assume main_#t~switch380#1; {9196#(= ~ldv_blk_rq~0 0)} is VALID [2022-02-20 22:06:01,563 INFO L290 TraceCheckUtils]: 39: Hoare triple {9196#(= ~ldv_blk_rq~0 0)} assume 1 == ~ldv_state_variable_0~0;assume { :begin_inline_init } true;havoc init_#res#1;havoc init_#t~ret366#1, init_#t~ret367#1, init_~tmp~22#1;havoc init_~tmp~22#1;assume { :begin_inline_register_blkdev } true;register_blkdev_#in~arg0#1, register_blkdev_#in~arg1#1.base, register_blkdev_#in~arg1#1.offset := 0, 9, 0;havoc register_blkdev_#res#1;havoc register_blkdev_#t~nondet409#1, register_blkdev_~arg0#1, register_blkdev_~arg1#1.base, register_blkdev_~arg1#1.offset;register_blkdev_~arg0#1 := register_blkdev_#in~arg0#1;register_blkdev_~arg1#1.base, register_blkdev_~arg1#1.offset := register_blkdev_#in~arg1#1.base, register_blkdev_#in~arg1#1.offset;assume -2147483648 <= register_blkdev_#t~nondet409#1 && register_blkdev_#t~nondet409#1 <= 2147483647;register_blkdev_#res#1 := register_blkdev_#t~nondet409#1;havoc register_blkdev_#t~nondet409#1; {9196#(= ~ldv_blk_rq~0 0)} is VALID [2022-02-20 22:06:01,564 INFO L290 TraceCheckUtils]: 40: Hoare triple {9196#(= ~ldv_blk_rq~0 0)} init_#t~ret366#1 := register_blkdev_#res#1;assume { :end_inline_register_blkdev } true;assume -2147483648 <= init_#t~ret366#1 && init_#t~ret366#1 <= 2147483647;~major~0 := init_#t~ret366#1;havoc init_#t~ret366#1; {9196#(= ~ldv_blk_rq~0 0)} is VALID [2022-02-20 22:06:01,564 INFO L290 TraceCheckUtils]: 41: Hoare triple {9196#(= ~ldv_blk_rq~0 0)} assume ~major~0 < 0;init_#res#1 := ~major~0; {9196#(= ~ldv_blk_rq~0 0)} is VALID [2022-02-20 22:06:01,564 INFO L290 TraceCheckUtils]: 42: Hoare triple {9196#(= ~ldv_blk_rq~0 0)} main_#t~ret381#1 := init_#res#1;assume { :end_inline_init } true;assume -2147483648 <= main_#t~ret381#1 && main_#t~ret381#1 <= 2147483647;~ldv_retval_1~0 := main_#t~ret381#1;havoc main_#t~ret381#1; {9196#(= ~ldv_blk_rq~0 0)} is VALID [2022-02-20 22:06:01,565 INFO L290 TraceCheckUtils]: 43: Hoare triple {9196#(= ~ldv_blk_rq~0 0)} assume !(0 == ~ldv_retval_1~0); {9196#(= ~ldv_blk_rq~0 0)} is VALID [2022-02-20 22:06:01,565 INFO L290 TraceCheckUtils]: 44: Hoare triple {9196#(= ~ldv_blk_rq~0 0)} assume 0 != ~ldv_retval_1~0;~ldv_state_variable_0~0 := 2; {9196#(= ~ldv_blk_rq~0 0)} is VALID [2022-02-20 22:06:01,565 INFO L290 TraceCheckUtils]: 45: Hoare triple {9196#(= ~ldv_blk_rq~0 0)} assume { :begin_inline_ldv_check_final_state } true; {9196#(= ~ldv_blk_rq~0 0)} is VALID [2022-02-20 22:06:01,566 INFO L290 TraceCheckUtils]: 46: Hoare triple {9196#(= ~ldv_blk_rq~0 0)} assume 0 != ~ldv_blk_rq~0; {9195#false} is VALID [2022-02-20 22:06:01,566 INFO L272 TraceCheckUtils]: 47: Hoare triple {9195#false} call ldv_error(); {9195#false} is VALID [2022-02-20 22:06:01,567 INFO L290 TraceCheckUtils]: 48: Hoare triple {9195#false} assume !false; {9195#false} is VALID [2022-02-20 22:06:01,567 INFO L134 CoverageAnalysis]: Checked inductivity of 5 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 5 trivial. 0 not checked. [2022-02-20 22:06:01,568 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 22:06:01,568 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [347418484] [2022-02-20 22:06:01,568 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [347418484] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 22:06:01,568 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 22:06:01,568 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-02-20 22:06:01,569 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [299840421] [2022-02-20 22:06:01,569 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 22:06:01,570 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 5.666666666666667) internal successors, (34), 3 states have internal predecessors, (34), 3 states have call successors, (6), 5 states have call predecessors, (6), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) Word has length 49 [2022-02-20 22:06:01,571 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 22:06:01,571 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 6 states, 6 states have (on average 5.666666666666667) internal successors, (34), 3 states have internal predecessors, (34), 3 states have call successors, (6), 5 states have call predecessors, (6), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-02-20 22:06:01,602 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 45 edges. 45 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 22:06:01,603 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-02-20 22:06:01,603 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 22:06:01,603 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-02-20 22:06:01,603 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=11, Invalid=19, Unknown=0, NotChecked=0, Total=30 [2022-02-20 22:06:01,604 INFO L87 Difference]: Start difference. First operand 846 states and 1119 transitions. Second operand has 6 states, 6 states have (on average 5.666666666666667) internal successors, (34), 3 states have internal predecessors, (34), 3 states have call successors, (6), 5 states have call predecessors, (6), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-02-20 22:06:05,369 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 22:06:05,369 INFO L93 Difference]: Finished difference Result 2038 states and 2791 transitions. [2022-02-20 22:06:05,369 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-02-20 22:06:05,369 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 5.666666666666667) internal successors, (34), 3 states have internal predecessors, (34), 3 states have call successors, (6), 5 states have call predecessors, (6), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) Word has length 49 [2022-02-20 22:06:05,370 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 22:06:05,370 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 5.666666666666667) internal successors, (34), 3 states have internal predecessors, (34), 3 states have call successors, (6), 5 states have call predecessors, (6), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-02-20 22:06:05,384 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 1443 transitions. [2022-02-20 22:06:05,384 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 5.666666666666667) internal successors, (34), 3 states have internal predecessors, (34), 3 states have call successors, (6), 5 states have call predecessors, (6), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-02-20 22:06:05,397 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 1443 transitions. [2022-02-20 22:06:05,398 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 7 states and 1443 transitions. [2022-02-20 22:06:06,584 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 1443 edges. 1443 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 22:06:06,778 INFO L225 Difference]: With dead ends: 2038 [2022-02-20 22:06:06,778 INFO L226 Difference]: Without dead ends: 2029 [2022-02-20 22:06:06,780 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 18 GetRequests, 11 SyntacticMatches, 0 SemanticMatches, 7 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 4 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=29, Invalid=43, Unknown=0, NotChecked=0, Total=72 [2022-02-20 22:06:06,784 INFO L933 BasicCegarLoop]: 624 mSDtfsCounter, 1212 mSDsluCounter, 994 mSDsCounter, 0 mSdLazyCounter, 729 mSolverCounterSat, 570 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 1288 SdHoareTripleChecker+Valid, 1618 SdHoareTripleChecker+Invalid, 1299 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 570 IncrementalHoareTripleChecker+Valid, 729 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.1s IncrementalHoareTripleChecker+Time [2022-02-20 22:06:06,789 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [1288 Valid, 1618 Invalid, 1299 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [570 Valid, 729 Invalid, 0 Unknown, 0 Unchecked, 1.1s Time] [2022-02-20 22:06:06,791 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 2029 states. [2022-02-20 22:06:06,844 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 2029 to 1653. [2022-02-20 22:06:06,844 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 22:06:06,848 INFO L82 GeneralOperation]: Start isEquivalent. First operand 2029 states. Second operand has 1653 states, 1274 states have (on average 1.2637362637362637) internal successors, (1610), 1291 states have internal predecessors, (1610), 289 states have call successors, (289), 90 states have call predecessors, (289), 89 states have return successors, (287), 287 states have call predecessors, (287), 287 states have call successors, (287) [2022-02-20 22:06:06,852 INFO L74 IsIncluded]: Start isIncluded. First operand 2029 states. Second operand has 1653 states, 1274 states have (on average 1.2637362637362637) internal successors, (1610), 1291 states have internal predecessors, (1610), 289 states have call successors, (289), 90 states have call predecessors, (289), 89 states have return successors, (287), 287 states have call predecessors, (287), 287 states have call successors, (287) [2022-02-20 22:06:06,855 INFO L87 Difference]: Start difference. First operand 2029 states. Second operand has 1653 states, 1274 states have (on average 1.2637362637362637) internal successors, (1610), 1291 states have internal predecessors, (1610), 289 states have call successors, (289), 90 states have call predecessors, (289), 89 states have return successors, (287), 287 states have call predecessors, (287), 287 states have call successors, (287) [2022-02-20 22:06:06,995 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 22:06:06,996 INFO L93 Difference]: Finished difference Result 2029 states and 2778 transitions. [2022-02-20 22:06:06,996 INFO L276 IsEmpty]: Start isEmpty. Operand 2029 states and 2778 transitions. [2022-02-20 22:06:07,004 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 22:06:07,004 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 22:06:07,008 INFO L74 IsIncluded]: Start isIncluded. First operand has 1653 states, 1274 states have (on average 1.2637362637362637) internal successors, (1610), 1291 states have internal predecessors, (1610), 289 states have call successors, (289), 90 states have call predecessors, (289), 89 states have return successors, (287), 287 states have call predecessors, (287), 287 states have call successors, (287) Second operand 2029 states. [2022-02-20 22:06:07,011 INFO L87 Difference]: Start difference. First operand has 1653 states, 1274 states have (on average 1.2637362637362637) internal successors, (1610), 1291 states have internal predecessors, (1610), 289 states have call successors, (289), 90 states have call predecessors, (289), 89 states have return successors, (287), 287 states have call predecessors, (287), 287 states have call successors, (287) Second operand 2029 states. [2022-02-20 22:06:07,151 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 22:06:07,152 INFO L93 Difference]: Finished difference Result 2029 states and 2778 transitions. [2022-02-20 22:06:07,152 INFO L276 IsEmpty]: Start isEmpty. Operand 2029 states and 2778 transitions. [2022-02-20 22:06:07,160 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 22:06:07,160 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 22:06:07,161 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 22:06:07,161 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 22:06:07,164 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 1653 states, 1274 states have (on average 1.2637362637362637) internal successors, (1610), 1291 states have internal predecessors, (1610), 289 states have call successors, (289), 90 states have call predecessors, (289), 89 states have return successors, (287), 287 states have call predecessors, (287), 287 states have call successors, (287) [2022-02-20 22:06:07,337 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 1653 states to 1653 states and 2186 transitions. [2022-02-20 22:06:07,339 INFO L78 Accepts]: Start accepts. Automaton has 1653 states and 2186 transitions. Word has length 49 [2022-02-20 22:06:07,339 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 22:06:07,339 INFO L470 AbstractCegarLoop]: Abstraction has 1653 states and 2186 transitions. [2022-02-20 22:06:07,342 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 6 states have (on average 5.666666666666667) internal successors, (34), 3 states have internal predecessors, (34), 3 states have call successors, (6), 5 states have call predecessors, (6), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-02-20 22:06:07,342 INFO L276 IsEmpty]: Start isEmpty. Operand 1653 states and 2186 transitions. [2022-02-20 22:06:07,345 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 111 [2022-02-20 22:06:07,345 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 22:06:07,346 INFO L514 BasicCegarLoop]: trace histogram [2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 22:06:07,346 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable2 [2022-02-20 22:06:07,346 INFO L402 AbstractCegarLoop]: === Iteration 4 === Targeting ldv_errorErr0ASSERT_VIOLATIONERROR_FUNCTION === [ldv_errorErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 22:06:07,346 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 22:06:07,347 INFO L85 PathProgramCache]: Analyzing trace with hash -403228486, now seen corresponding path program 1 times [2022-02-20 22:06:07,347 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 22:06:07,347 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1470133523] [2022-02-20 22:06:07,347 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 22:06:07,347 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 22:06:07,411 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 22:06:07,456 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2022-02-20 22:06:07,458 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 22:06:07,471 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 1 [2022-02-20 22:06:07,472 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 22:06:07,476 INFO L290 TraceCheckUtils]: 0: Hoare triple {18695#(= |#memory_int| |old(#memory_int)|)} #memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, #ptr.base); {18633#true} is VALID [2022-02-20 22:06:07,476 INFO L290 TraceCheckUtils]: 1: Hoare triple {18633#true} assume true; {18633#true} is VALID [2022-02-20 22:06:07,480 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {18633#true} {18633#true} #1074#return; {18633#true} is VALID [2022-02-20 22:06:07,481 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-02-20 22:06:07,482 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 22:06:07,486 INFO L290 TraceCheckUtils]: 0: Hoare triple {18633#true} ~cond := #in~cond; {18633#true} is VALID [2022-02-20 22:06:07,486 INFO L290 TraceCheckUtils]: 1: Hoare triple {18633#true} assume !(0 == ~cond); {18633#true} is VALID [2022-02-20 22:06:07,487 INFO L290 TraceCheckUtils]: 2: Hoare triple {18633#true} assume true; {18633#true} is VALID [2022-02-20 22:06:07,490 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {18633#true} {18633#true} #1076#return; {18633#true} is VALID [2022-02-20 22:06:07,491 INFO L290 TraceCheckUtils]: 0: Hoare triple {18687#(and (= |old(#length)| |#length|) (= |#memory_int| |old(#memory_int)|) (= |old(#valid)| |#valid|))} ~size := #in~size;havoc ~p~2.base, ~p~2.offset;havoc ~tmp~4.base, ~tmp~4.offset;call #t~malloc109.base, #t~malloc109.offset := #Ultimate.allocOnHeap(~size); {18633#true} is VALID [2022-02-20 22:06:07,492 INFO L272 TraceCheckUtils]: 1: Hoare triple {18633#true} call #Ultimate.meminit(#t~malloc109.base, #t~malloc109.offset, 1, ~size, ~size); {18695#(= |#memory_int| |old(#memory_int)|)} is VALID [2022-02-20 22:06:07,492 INFO L290 TraceCheckUtils]: 2: Hoare triple {18695#(= |#memory_int| |old(#memory_int)|)} #memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, #ptr.base); {18633#true} is VALID [2022-02-20 22:06:07,492 INFO L290 TraceCheckUtils]: 3: Hoare triple {18633#true} assume true; {18633#true} is VALID [2022-02-20 22:06:07,492 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {18633#true} {18633#true} #1074#return; {18633#true} is VALID [2022-02-20 22:06:07,493 INFO L290 TraceCheckUtils]: 5: Hoare triple {18633#true} ~tmp~4.base, ~tmp~4.offset := #t~malloc109.base, #t~malloc109.offset;~p~2.base, ~p~2.offset := ~tmp~4.base, ~tmp~4.offset; {18633#true} is VALID [2022-02-20 22:06:07,494 INFO L272 TraceCheckUtils]: 6: Hoare triple {18633#true} call assume_abort_if_not((if 0 != (~p~2.base + ~p~2.offset) % 18446744073709551616 then 1 else 0)); {18633#true} is VALID [2022-02-20 22:06:07,494 INFO L290 TraceCheckUtils]: 7: Hoare triple {18633#true} ~cond := #in~cond; {18633#true} is VALID [2022-02-20 22:06:07,494 INFO L290 TraceCheckUtils]: 8: Hoare triple {18633#true} assume !(0 == ~cond); {18633#true} is VALID [2022-02-20 22:06:07,494 INFO L290 TraceCheckUtils]: 9: Hoare triple {18633#true} assume true; {18633#true} is VALID [2022-02-20 22:06:07,494 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {18633#true} {18633#true} #1076#return; {18633#true} is VALID [2022-02-20 22:06:07,494 INFO L290 TraceCheckUtils]: 11: Hoare triple {18633#true} #res.base, #res.offset := ~p~2.base, ~p~2.offset; {18633#true} is VALID [2022-02-20 22:06:07,495 INFO L290 TraceCheckUtils]: 12: Hoare triple {18633#true} assume true; {18633#true} is VALID [2022-02-20 22:06:07,495 INFO L284 TraceCheckUtils]: 13: Hoare quadruple {18633#true} {18633#true} #1084#return; {18633#true} is VALID [2022-02-20 22:06:07,500 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 19 [2022-02-20 22:06:07,502 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 22:06:07,508 INFO L290 TraceCheckUtils]: 0: Hoare triple {18696#(and (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~s#1.base, ~s#1.offset := #in~s#1.base, #in~s#1.offset;~c#1 := #in~c#1;~n#1 := #in~n#1;havoc ~tmp~5#1.base, ~tmp~5#1.offset;assume { :begin_inline_#Ultimate.C_memset } true;#Ultimate.C_memset_#ptr#1.base, #Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#value#1, #Ultimate.C_memset_#amount#1 := ~s#1.base, ~s#1.offset, ~c#1, ~n#1;havoc #Ultimate.C_memset_#res#1.base, #Ultimate.C_memset_#res#1.offset;havoc #Ultimate.C_memset_#t~loopctr416#1;#Ultimate.C_memset_#t~loopctr416#1 := 0; {18633#true} is VALID [2022-02-20 22:06:07,509 INFO L290 TraceCheckUtils]: 1: Hoare triple {18633#true} assume !(#Ultimate.C_memset_#t~loopctr416#1 % 18446744073709551616 < #Ultimate.C_memset_#amount#1 % 18446744073709551616); {18633#true} is VALID [2022-02-20 22:06:07,509 INFO L290 TraceCheckUtils]: 2: Hoare triple {18633#true} assume #Ultimate.C_memset_#res#1.base == #Ultimate.C_memset_#ptr#1.base && #Ultimate.C_memset_#res#1.offset == #Ultimate.C_memset_#ptr#1.offset;#t~memset~res110#1.base, #t~memset~res110#1.offset := #Ultimate.C_memset_#res#1.base, #Ultimate.C_memset_#res#1.offset;assume { :end_inline_#Ultimate.C_memset } true;~tmp~5#1.base, ~tmp~5#1.offset := ~s#1.base, ~s#1.offset;havoc #t~memset~res110#1.base, #t~memset~res110#1.offset;#res#1.base, #res#1.offset := ~tmp~5#1.base, ~tmp~5#1.offset; {18633#true} is VALID [2022-02-20 22:06:07,509 INFO L290 TraceCheckUtils]: 3: Hoare triple {18633#true} assume true; {18633#true} is VALID [2022-02-20 22:06:07,509 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {18633#true} {18633#true} #1086#return; {18633#true} is VALID [2022-02-20 22:06:07,509 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 26 [2022-02-20 22:06:07,511 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 22:06:07,515 INFO L290 TraceCheckUtils]: 0: Hoare triple {18696#(and (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~s#1.base, ~s#1.offset := #in~s#1.base, #in~s#1.offset;~c#1 := #in~c#1;~n#1 := #in~n#1;havoc ~tmp~5#1.base, ~tmp~5#1.offset;assume { :begin_inline_#Ultimate.C_memset } true;#Ultimate.C_memset_#ptr#1.base, #Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#value#1, #Ultimate.C_memset_#amount#1 := ~s#1.base, ~s#1.offset, ~c#1, ~n#1;havoc #Ultimate.C_memset_#res#1.base, #Ultimate.C_memset_#res#1.offset;havoc #Ultimate.C_memset_#t~loopctr416#1;#Ultimate.C_memset_#t~loopctr416#1 := 0; {18633#true} is VALID [2022-02-20 22:06:07,515 INFO L290 TraceCheckUtils]: 1: Hoare triple {18633#true} assume !(#Ultimate.C_memset_#t~loopctr416#1 % 18446744073709551616 < #Ultimate.C_memset_#amount#1 % 18446744073709551616); {18633#true} is VALID [2022-02-20 22:06:07,515 INFO L290 TraceCheckUtils]: 2: Hoare triple {18633#true} assume #Ultimate.C_memset_#res#1.base == #Ultimate.C_memset_#ptr#1.base && #Ultimate.C_memset_#res#1.offset == #Ultimate.C_memset_#ptr#1.offset;#t~memset~res110#1.base, #t~memset~res110#1.offset := #Ultimate.C_memset_#res#1.base, #Ultimate.C_memset_#res#1.offset;assume { :end_inline_#Ultimate.C_memset } true;~tmp~5#1.base, ~tmp~5#1.offset := ~s#1.base, ~s#1.offset;havoc #t~memset~res110#1.base, #t~memset~res110#1.offset;#res#1.base, #res#1.offset := ~tmp~5#1.base, ~tmp~5#1.offset; {18633#true} is VALID [2022-02-20 22:06:07,515 INFO L290 TraceCheckUtils]: 3: Hoare triple {18633#true} assume true; {18633#true} is VALID [2022-02-20 22:06:07,515 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {18633#true} {18633#true} #1088#return; {18633#true} is VALID [2022-02-20 22:06:07,521 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 41 [2022-02-20 22:06:07,523 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 22:06:07,528 INFO L290 TraceCheckUtils]: 0: Hoare triple {18697#(and (= |old(#length)| |#length|) (= |old(#valid)| |#valid|))} ~size := #in~size;havoc ~p~0.base, ~p~0.offset;havoc ~tmp~2.base, ~tmp~2.offset;havoc ~tmp___0~0;assume -2147483648 <= #t~nondet103 && #t~nondet103 <= 2147483647;~tmp___0~0 := #t~nondet103;havoc #t~nondet103; {18633#true} is VALID [2022-02-20 22:06:07,528 INFO L290 TraceCheckUtils]: 1: Hoare triple {18633#true} assume 0 != ~tmp___0~0;#res.base, #res.offset := 0, 0; {18633#true} is VALID [2022-02-20 22:06:07,529 INFO L290 TraceCheckUtils]: 2: Hoare triple {18633#true} assume true; {18633#true} is VALID [2022-02-20 22:06:07,529 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {18633#true} {18634#false} #1156#return; {18634#false} is VALID [2022-02-20 22:06:07,529 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 48 [2022-02-20 22:06:07,533 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 22:06:07,541 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 1 [2022-02-20 22:06:07,542 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 22:06:07,546 INFO L290 TraceCheckUtils]: 0: Hoare triple {18633#true} ~ptr.base, ~ptr.offset := #in~ptr.base, #in~ptr.offset;#res := (if 0 == (if (~ptr.base + ~ptr.offset) % 18446744073709551616 > 2012 then 1 else 0) then 0 else 1); {18633#true} is VALID [2022-02-20 22:06:07,546 INFO L290 TraceCheckUtils]: 1: Hoare triple {18633#true} assume true; {18633#true} is VALID [2022-02-20 22:06:07,546 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {18633#true} {18633#true} #1184#return; {18633#true} is VALID [2022-02-20 22:06:07,546 INFO L290 TraceCheckUtils]: 0: Hoare triple {18633#true} ~ptr.base, ~ptr.offset := #in~ptr.base, #in~ptr.offset;havoc ~tmp~28; {18633#true} is VALID [2022-02-20 22:06:07,546 INFO L272 TraceCheckUtils]: 1: Hoare triple {18633#true} call #t~ret390 := ldv_is_err(~ptr.base, ~ptr.offset); {18633#true} is VALID [2022-02-20 22:06:07,547 INFO L290 TraceCheckUtils]: 2: Hoare triple {18633#true} ~ptr.base, ~ptr.offset := #in~ptr.base, #in~ptr.offset;#res := (if 0 == (if (~ptr.base + ~ptr.offset) % 18446744073709551616 > 2012 then 1 else 0) then 0 else 1); {18633#true} is VALID [2022-02-20 22:06:07,547 INFO L290 TraceCheckUtils]: 3: Hoare triple {18633#true} assume true; {18633#true} is VALID [2022-02-20 22:06:07,548 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {18633#true} {18633#true} #1184#return; {18633#true} is VALID [2022-02-20 22:06:07,548 INFO L290 TraceCheckUtils]: 5: Hoare triple {18633#true} ~tmp~28 := #t~ret390;havoc #t~ret390;#res := ~tmp~28 % 256; {18633#true} is VALID [2022-02-20 22:06:07,548 INFO L290 TraceCheckUtils]: 6: Hoare triple {18633#true} assume true; {18633#true} is VALID [2022-02-20 22:06:07,548 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {18633#true} {18634#false} #1158#return; {18634#false} is VALID [2022-02-20 22:06:07,548 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 60 [2022-02-20 22:06:07,551 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 22:06:07,555 INFO L290 TraceCheckUtils]: 0: Hoare triple {18697#(and (= |old(#length)| |#length|) (= |old(#valid)| |#valid|))} ~size := #in~size;havoc ~p~0.base, ~p~0.offset;havoc ~tmp~2.base, ~tmp~2.offset;havoc ~tmp___0~0;assume -2147483648 <= #t~nondet103 && #t~nondet103 <= 2147483647;~tmp___0~0 := #t~nondet103;havoc #t~nondet103; {18633#true} is VALID [2022-02-20 22:06:07,555 INFO L290 TraceCheckUtils]: 1: Hoare triple {18633#true} assume 0 != ~tmp___0~0;#res.base, #res.offset := 0, 0; {18633#true} is VALID [2022-02-20 22:06:07,555 INFO L290 TraceCheckUtils]: 2: Hoare triple {18633#true} assume true; {18633#true} is VALID [2022-02-20 22:06:07,555 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {18633#true} {18634#false} #1164#return; {18634#false} is VALID [2022-02-20 22:06:07,557 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 68 [2022-02-20 22:06:07,558 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 22:06:07,561 INFO L290 TraceCheckUtils]: 0: Hoare triple {18633#true} ~exp := #in~exp;~c := #in~c;#res := ~exp; {18633#true} is VALID [2022-02-20 22:06:07,561 INFO L290 TraceCheckUtils]: 1: Hoare triple {18633#true} assume true; {18633#true} is VALID [2022-02-20 22:06:07,561 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {18633#true} {18634#false} #1168#return; {18634#false} is VALID [2022-02-20 22:06:07,561 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 78 [2022-02-20 22:06:07,564 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 22:06:07,571 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 1 [2022-02-20 22:06:07,573 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 22:06:07,577 INFO L290 TraceCheckUtils]: 0: Hoare triple {18633#true} ~ptr.base, ~ptr.offset := #in~ptr.base, #in~ptr.offset;#res := (if 0 == (if (~ptr.base + ~ptr.offset) % 18446744073709551616 > 2012 then 1 else 0) then 0 else 1); {18633#true} is VALID [2022-02-20 22:06:07,577 INFO L290 TraceCheckUtils]: 1: Hoare triple {18633#true} assume true; {18633#true} is VALID [2022-02-20 22:06:07,577 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {18633#true} {18633#true} #1184#return; {18633#true} is VALID [2022-02-20 22:06:07,577 INFO L290 TraceCheckUtils]: 0: Hoare triple {18633#true} ~ptr.base, ~ptr.offset := #in~ptr.base, #in~ptr.offset;havoc ~tmp~28; {18633#true} is VALID [2022-02-20 22:06:07,578 INFO L272 TraceCheckUtils]: 1: Hoare triple {18633#true} call #t~ret390 := ldv_is_err(~ptr.base, ~ptr.offset); {18633#true} is VALID [2022-02-20 22:06:07,578 INFO L290 TraceCheckUtils]: 2: Hoare triple {18633#true} ~ptr.base, ~ptr.offset := #in~ptr.base, #in~ptr.offset;#res := (if 0 == (if (~ptr.base + ~ptr.offset) % 18446744073709551616 > 2012 then 1 else 0) then 0 else 1); {18633#true} is VALID [2022-02-20 22:06:07,578 INFO L290 TraceCheckUtils]: 3: Hoare triple {18633#true} assume true; {18633#true} is VALID [2022-02-20 22:06:07,578 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {18633#true} {18633#true} #1184#return; {18633#true} is VALID [2022-02-20 22:06:07,578 INFO L290 TraceCheckUtils]: 5: Hoare triple {18633#true} ~tmp~28 := #t~ret390;havoc #t~ret390;#res := ~tmp~28 % 256; {18633#true} is VALID [2022-02-20 22:06:07,578 INFO L290 TraceCheckUtils]: 6: Hoare triple {18633#true} assume true; {18633#true} is VALID [2022-02-20 22:06:07,578 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {18633#true} {18634#false} #1170#return; {18634#false} is VALID [2022-02-20 22:06:07,578 INFO L290 TraceCheckUtils]: 0: Hoare triple {18633#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(95, 2);call #Ultimate.allocInit(22, 3);call #Ultimate.allocInit(9, 4);call #Ultimate.allocInit(5, 5);call write~init~int(118, 5, 0, 1);call write~init~int(100, 5, 1, 1);call write~init~int(37, 5, 2, 1);call write~init~int(99, 5, 3, 1);call write~init~int(0, 5, 4, 1);call #Ultimate.allocInit(7, 6);call write~init~int(118, 6, 0, 1);call write~init~int(100, 6, 1, 1);call write~init~int(37, 6, 2, 1);call write~init~int(99, 6, 3, 1);call write~init~int(37, 6, 4, 1);call write~init~int(99, 6, 5, 1);call write~init~int(0, 6, 6, 1);call #Ultimate.allocInit(9, 7);call #Ultimate.allocInit(11, 8);call #Ultimate.allocInit(8, 9);call #Ultimate.allocInit(8, 10);~LDV_IN_INTERRUPT~0 := 1;~virtblk_fops_group0~0.base, ~virtblk_fops_group0~0.offset := 0, 0;~ldv_state_variable_2~0 := 0;~ref_cnt~0 := 0;~ldv_state_variable_1~0 := 0;~virtio_blk_group0~0.base, ~virtio_blk_group0~0.offset := 0, 0;~ldv_state_variable_0~0 := 0;~major~0 := 0;~index~0 := 0;~#virtblk_fops~0.base, ~#virtblk_fops~0.offset := 11, 0;call #Ultimate.allocInit(96, 11);call write~init~$Pointer$(0, 0, ~#virtblk_fops~0.base, ~#virtblk_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtblk_fops~0.base, 8 + ~#virtblk_fops~0.offset, 8);call write~init~$Pointer$(#funAddr~virtblk_ioctl.base, #funAddr~virtblk_ioctl.offset, ~#virtblk_fops~0.base, 16 + ~#virtblk_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtblk_fops~0.base, 24 + ~#virtblk_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtblk_fops~0.base, 32 + ~#virtblk_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtblk_fops~0.base, 40 + ~#virtblk_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtblk_fops~0.base, 48 + ~#virtblk_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtblk_fops~0.base, 56 + ~#virtblk_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtblk_fops~0.base, 64 + ~#virtblk_fops~0.offset, 8);call write~init~$Pointer$(#funAddr~virtblk_getgeo.base, #funAddr~virtblk_getgeo.offset, ~#virtblk_fops~0.base, 72 + ~#virtblk_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtblk_fops~0.base, 80 + ~#virtblk_fops~0.offset, 8);call write~init~$Pointer$(~#__this_module~0.base, ~#__this_module~0.offset, ~#virtblk_fops~0.base, 88 + ~#virtblk_fops~0.offset, 8);~#id_table~0.base, ~#id_table~0.offset := 12, 0;call #Ultimate.allocInit(16, 12);call write~init~int(2, ~#id_table~0.base, ~#id_table~0.offset, 4);call write~init~int(4294967295, ~#id_table~0.base, 4 + ~#id_table~0.offset, 4);call write~init~int(0, ~#id_table~0.base, 8 + ~#id_table~0.offset, 4);call write~init~int(0, ~#id_table~0.base, 12 + ~#id_table~0.offset, 4);~#features~0.base, ~#features~0.offset := 13, 0;call #Ultimate.allocInit(36, 13);call write~init~int(0, ~#features~0.base, ~#features~0.offset, 4);call write~init~int(2, ~#features~0.base, 4 + ~#features~0.offset, 4);call write~init~int(1, ~#features~0.base, 8 + ~#features~0.offset, 4);call write~init~int(4, ~#features~0.base, 12 + ~#features~0.offset, 4);call write~init~int(5, ~#features~0.base, 16 + ~#features~0.offset, 4);call write~init~int(6, ~#features~0.base, 20 + ~#features~0.offset, 4);call write~init~int(7, ~#features~0.base, 24 + ~#features~0.offset, 4);call write~init~int(9, ~#features~0.base, 28 + ~#features~0.offset, 4);call write~init~int(10, ~#features~0.base, 32 + ~#features~0.offset, 4);~#virtio_blk~0.base, ~#virtio_blk~0.offset := 14, 0;call #Ultimate.allocInit(141, 14);call write~init~$Pointer$(8, 0, ~#virtio_blk~0.base, ~#virtio_blk~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtio_blk~0.base, 8 + ~#virtio_blk~0.offset, 8);call write~init~$Pointer$(~#__this_module~0.base, ~#__this_module~0.offset, ~#virtio_blk~0.base, 16 + ~#virtio_blk~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtio_blk~0.base, 24 + ~#virtio_blk~0.offset, 8);call write~init~int(0, ~#virtio_blk~0.base, 32 + ~#virtio_blk~0.offset, 1);call write~init~$Pointer$(0, 0, ~#virtio_blk~0.base, 33 + ~#virtio_blk~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtio_blk~0.base, 41 + ~#virtio_blk~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtio_blk~0.base, 49 + ~#virtio_blk~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtio_blk~0.base, 57 + ~#virtio_blk~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtio_blk~0.base, 65 + ~#virtio_blk~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtio_blk~0.base, 73 + ~#virtio_blk~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtio_blk~0.base, 81 + ~#virtio_blk~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtio_blk~0.base, 89 + ~#virtio_blk~0.offset, 8);call write~init~$Pointer$(~#id_table~0.base, ~#id_table~0.offset, ~#virtio_blk~0.base, 97 + ~#virtio_blk~0.offset, 8);call write~init~$Pointer$(~#features~0.base, ~#features~0.offset, ~#virtio_blk~0.base, 105 + ~#virtio_blk~0.offset, 8);call write~init~int(9, ~#virtio_blk~0.base, 113 + ~#virtio_blk~0.offset, 4);call write~init~$Pointer$(#funAddr~virtblk_probe.base, #funAddr~virtblk_probe.offset, ~#virtio_blk~0.base, 117 + ~#virtio_blk~0.offset, 8);call write~init~$Pointer$(#funAddr~virtblk_remove.base, #funAddr~virtblk_remove.offset, ~#virtio_blk~0.base, 125 + ~#virtio_blk~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtio_blk~0.base, 133 + ~#virtio_blk~0.offset, 8);~__mod_virtio_device_table~0.device := 0;~__mod_virtio_device_table~0.vendor := 0;~ldv_retval_0~0 := 0;~ldv_retval_1~0 := 0;~ldv_blk_rq~0 := 0; {18633#true} is VALID [2022-02-20 22:06:07,579 INFO L290 TraceCheckUtils]: 1: Hoare triple {18633#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret370#1.base, main_#t~ret370#1.offset, main_#t~ret371#1.base, main_#t~ret371#1.offset, main_#t~ret372#1.base, main_#t~ret372#1.offset, main_#t~nondet373#1, main_#t~nondet374#1, main_#t~switch375#1, main_#t~nondet376#1, main_#t~switch377#1, main_#t~ret378#1, main_#t~nondet379#1, main_#t~switch380#1, main_#t~ret381#1, main_#t~nondet382#1, main_#t~switch383#1, main_#t~mem384#1, main_#t~mem385#1, main_#t~ret386#1, main_#t~ret387#1, main_~#ldvarg1~0#1.base, main_~#ldvarg1~0#1.offset, main_~#ldvarg3~0#1.base, main_~#ldvarg3~0#1.offset, main_~ldvarg0~0#1.base, main_~ldvarg0~0#1.offset, main_~tmp~25#1.base, main_~tmp~25#1.offset, main_~ldvarg2~0#1, main_~tmp___0~12#1, main_~tmp___1~7#1, main_~tmp___2~4#1, main_~tmp___3~3#1;call main_~#ldvarg1~0#1.base, main_~#ldvarg1~0#1.offset := #Ultimate.allocOnStack(8);call main_~#ldvarg3~0#1.base, main_~#ldvarg3~0#1.offset := #Ultimate.allocOnStack(4);havoc main_~ldvarg0~0#1.base, main_~ldvarg0~0#1.offset;havoc main_~tmp~25#1.base, main_~tmp~25#1.offset;havoc main_~ldvarg2~0#1;havoc main_~tmp___0~12#1;havoc main_~tmp___1~7#1;havoc main_~tmp___2~4#1;havoc main_~tmp___3~3#1; {18633#true} is VALID [2022-02-20 22:06:07,579 INFO L272 TraceCheckUtils]: 2: Hoare triple {18633#true} call main_#t~ret370#1.base, main_#t~ret370#1.offset := ldv_init_zalloc(16); {18687#(and (= |old(#length)| |#length|) (= |#memory_int| |old(#memory_int)|) (= |old(#valid)| |#valid|))} is VALID [2022-02-20 22:06:07,579 INFO L290 TraceCheckUtils]: 3: Hoare triple {18687#(and (= |old(#length)| |#length|) (= |#memory_int| |old(#memory_int)|) (= |old(#valid)| |#valid|))} ~size := #in~size;havoc ~p~2.base, ~p~2.offset;havoc ~tmp~4.base, ~tmp~4.offset;call #t~malloc109.base, #t~malloc109.offset := #Ultimate.allocOnHeap(~size); {18633#true} is VALID [2022-02-20 22:06:07,580 INFO L272 TraceCheckUtils]: 4: Hoare triple {18633#true} call #Ultimate.meminit(#t~malloc109.base, #t~malloc109.offset, 1, ~size, ~size); {18695#(= |#memory_int| |old(#memory_int)|)} is VALID [2022-02-20 22:06:07,581 INFO L290 TraceCheckUtils]: 5: Hoare triple {18695#(= |#memory_int| |old(#memory_int)|)} #memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, #ptr.base); {18633#true} is VALID [2022-02-20 22:06:07,581 INFO L290 TraceCheckUtils]: 6: Hoare triple {18633#true} assume true; {18633#true} is VALID [2022-02-20 22:06:07,581 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {18633#true} {18633#true} #1074#return; {18633#true} is VALID [2022-02-20 22:06:07,582 INFO L290 TraceCheckUtils]: 8: Hoare triple {18633#true} ~tmp~4.base, ~tmp~4.offset := #t~malloc109.base, #t~malloc109.offset;~p~2.base, ~p~2.offset := ~tmp~4.base, ~tmp~4.offset; {18633#true} is VALID [2022-02-20 22:06:07,582 INFO L272 TraceCheckUtils]: 9: Hoare triple {18633#true} call assume_abort_if_not((if 0 != (~p~2.base + ~p~2.offset) % 18446744073709551616 then 1 else 0)); {18633#true} is VALID [2022-02-20 22:06:07,582 INFO L290 TraceCheckUtils]: 10: Hoare triple {18633#true} ~cond := #in~cond; {18633#true} is VALID [2022-02-20 22:06:07,582 INFO L290 TraceCheckUtils]: 11: Hoare triple {18633#true} assume !(0 == ~cond); {18633#true} is VALID [2022-02-20 22:06:07,582 INFO L290 TraceCheckUtils]: 12: Hoare triple {18633#true} assume true; {18633#true} is VALID [2022-02-20 22:06:07,582 INFO L284 TraceCheckUtils]: 13: Hoare quadruple {18633#true} {18633#true} #1076#return; {18633#true} is VALID [2022-02-20 22:06:07,582 INFO L290 TraceCheckUtils]: 14: Hoare triple {18633#true} #res.base, #res.offset := ~p~2.base, ~p~2.offset; {18633#true} is VALID [2022-02-20 22:06:07,582 INFO L290 TraceCheckUtils]: 15: Hoare triple {18633#true} assume true; {18633#true} is VALID [2022-02-20 22:06:07,583 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {18633#true} {18633#true} #1084#return; {18633#true} is VALID [2022-02-20 22:06:07,583 INFO L290 TraceCheckUtils]: 17: Hoare triple {18633#true} main_~tmp~25#1.base, main_~tmp~25#1.offset := main_#t~ret370#1.base, main_#t~ret370#1.offset;havoc main_#t~ret370#1.base, main_#t~ret370#1.offset;main_~ldvarg0~0#1.base, main_~ldvarg0~0#1.offset := main_~tmp~25#1.base, main_~tmp~25#1.offset;assume { :begin_inline_ldv_initialize } true; {18633#true} is VALID [2022-02-20 22:06:07,583 INFO L290 TraceCheckUtils]: 18: Hoare triple {18633#true} assume { :end_inline_ldv_initialize } true; {18633#true} is VALID [2022-02-20 22:06:07,584 INFO L272 TraceCheckUtils]: 19: Hoare triple {18633#true} call main_#t~ret371#1.base, main_#t~ret371#1.offset := ldv_memset(main_~#ldvarg1~0#1.base, main_~#ldvarg1~0#1.offset, 0, 8); {18696#(and (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2022-02-20 22:06:07,584 INFO L290 TraceCheckUtils]: 20: Hoare triple {18696#(and (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~s#1.base, ~s#1.offset := #in~s#1.base, #in~s#1.offset;~c#1 := #in~c#1;~n#1 := #in~n#1;havoc ~tmp~5#1.base, ~tmp~5#1.offset;assume { :begin_inline_#Ultimate.C_memset } true;#Ultimate.C_memset_#ptr#1.base, #Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#value#1, #Ultimate.C_memset_#amount#1 := ~s#1.base, ~s#1.offset, ~c#1, ~n#1;havoc #Ultimate.C_memset_#res#1.base, #Ultimate.C_memset_#res#1.offset;havoc #Ultimate.C_memset_#t~loopctr416#1;#Ultimate.C_memset_#t~loopctr416#1 := 0; {18633#true} is VALID [2022-02-20 22:06:07,584 INFO L290 TraceCheckUtils]: 21: Hoare triple {18633#true} assume !(#Ultimate.C_memset_#t~loopctr416#1 % 18446744073709551616 < #Ultimate.C_memset_#amount#1 % 18446744073709551616); {18633#true} is VALID [2022-02-20 22:06:07,584 INFO L290 TraceCheckUtils]: 22: Hoare triple {18633#true} assume #Ultimate.C_memset_#res#1.base == #Ultimate.C_memset_#ptr#1.base && #Ultimate.C_memset_#res#1.offset == #Ultimate.C_memset_#ptr#1.offset;#t~memset~res110#1.base, #t~memset~res110#1.offset := #Ultimate.C_memset_#res#1.base, #Ultimate.C_memset_#res#1.offset;assume { :end_inline_#Ultimate.C_memset } true;~tmp~5#1.base, ~tmp~5#1.offset := ~s#1.base, ~s#1.offset;havoc #t~memset~res110#1.base, #t~memset~res110#1.offset;#res#1.base, #res#1.offset := ~tmp~5#1.base, ~tmp~5#1.offset; {18633#true} is VALID [2022-02-20 22:06:07,584 INFO L290 TraceCheckUtils]: 23: Hoare triple {18633#true} assume true; {18633#true} is VALID [2022-02-20 22:06:07,584 INFO L284 TraceCheckUtils]: 24: Hoare quadruple {18633#true} {18633#true} #1086#return; {18633#true} is VALID [2022-02-20 22:06:07,584 INFO L290 TraceCheckUtils]: 25: Hoare triple {18633#true} havoc main_#t~ret371#1.base, main_#t~ret371#1.offset; {18633#true} is VALID [2022-02-20 22:06:07,585 INFO L272 TraceCheckUtils]: 26: Hoare triple {18633#true} call main_#t~ret372#1.base, main_#t~ret372#1.offset := ldv_memset(main_~#ldvarg3~0#1.base, main_~#ldvarg3~0#1.offset, 0, 4); {18696#(and (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2022-02-20 22:06:07,589 INFO L290 TraceCheckUtils]: 27: Hoare triple {18696#(and (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~s#1.base, ~s#1.offset := #in~s#1.base, #in~s#1.offset;~c#1 := #in~c#1;~n#1 := #in~n#1;havoc ~tmp~5#1.base, ~tmp~5#1.offset;assume { :begin_inline_#Ultimate.C_memset } true;#Ultimate.C_memset_#ptr#1.base, #Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#value#1, #Ultimate.C_memset_#amount#1 := ~s#1.base, ~s#1.offset, ~c#1, ~n#1;havoc #Ultimate.C_memset_#res#1.base, #Ultimate.C_memset_#res#1.offset;havoc #Ultimate.C_memset_#t~loopctr416#1;#Ultimate.C_memset_#t~loopctr416#1 := 0; {18633#true} is VALID [2022-02-20 22:06:07,590 INFO L290 TraceCheckUtils]: 28: Hoare triple {18633#true} assume !(#Ultimate.C_memset_#t~loopctr416#1 % 18446744073709551616 < #Ultimate.C_memset_#amount#1 % 18446744073709551616); {18633#true} is VALID [2022-02-20 22:06:07,590 INFO L290 TraceCheckUtils]: 29: Hoare triple {18633#true} assume #Ultimate.C_memset_#res#1.base == #Ultimate.C_memset_#ptr#1.base && #Ultimate.C_memset_#res#1.offset == #Ultimate.C_memset_#ptr#1.offset;#t~memset~res110#1.base, #t~memset~res110#1.offset := #Ultimate.C_memset_#res#1.base, #Ultimate.C_memset_#res#1.offset;assume { :end_inline_#Ultimate.C_memset } true;~tmp~5#1.base, ~tmp~5#1.offset := ~s#1.base, ~s#1.offset;havoc #t~memset~res110#1.base, #t~memset~res110#1.offset;#res#1.base, #res#1.offset := ~tmp~5#1.base, ~tmp~5#1.offset; {18633#true} is VALID [2022-02-20 22:06:07,590 INFO L290 TraceCheckUtils]: 30: Hoare triple {18633#true} assume true; {18633#true} is VALID [2022-02-20 22:06:07,590 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {18633#true} {18633#true} #1088#return; {18633#true} is VALID [2022-02-20 22:06:07,590 INFO L290 TraceCheckUtils]: 32: Hoare triple {18633#true} havoc main_#t~ret372#1.base, main_#t~ret372#1.offset;main_~ldvarg2~0#1 := main_#t~nondet373#1;havoc main_#t~nondet373#1;~ldv_state_variable_1~0 := 0;~ref_cnt~0 := 0;~ldv_state_variable_0~0 := 1;~ldv_state_variable_2~0 := 0; {18659#(= ~ldv_state_variable_2~0 0)} is VALID [2022-02-20 22:06:07,591 INFO L290 TraceCheckUtils]: 33: Hoare triple {18659#(= ~ldv_state_variable_2~0 0)} assume -2147483648 <= main_#t~nondet374#1 && main_#t~nondet374#1 <= 2147483647;main_~tmp___0~12#1 := main_#t~nondet374#1;havoc main_#t~nondet374#1;main_#t~switch375#1 := 0 == main_~tmp___0~12#1; {18659#(= ~ldv_state_variable_2~0 0)} is VALID [2022-02-20 22:06:07,591 INFO L290 TraceCheckUtils]: 34: Hoare triple {18659#(= ~ldv_state_variable_2~0 0)} assume !main_#t~switch375#1;main_#t~switch375#1 := main_#t~switch375#1 || 1 == main_~tmp___0~12#1; {18659#(= ~ldv_state_variable_2~0 0)} is VALID [2022-02-20 22:06:07,591 INFO L290 TraceCheckUtils]: 35: Hoare triple {18659#(= ~ldv_state_variable_2~0 0)} assume !main_#t~switch375#1;main_#t~switch375#1 := main_#t~switch375#1 || 2 == main_~tmp___0~12#1; {18659#(= ~ldv_state_variable_2~0 0)} is VALID [2022-02-20 22:06:07,592 INFO L290 TraceCheckUtils]: 36: Hoare triple {18659#(= ~ldv_state_variable_2~0 0)} assume main_#t~switch375#1; {18659#(= ~ldv_state_variable_2~0 0)} is VALID [2022-02-20 22:06:07,592 INFO L290 TraceCheckUtils]: 37: Hoare triple {18659#(= ~ldv_state_variable_2~0 0)} assume 0 != ~ldv_state_variable_2~0;assume -2147483648 <= main_#t~nondet382#1 && main_#t~nondet382#1 <= 2147483647;main_~tmp___3~3#1 := main_#t~nondet382#1;havoc main_#t~nondet382#1;main_#t~switch383#1 := 0 == main_~tmp___3~3#1; {18634#false} is VALID [2022-02-20 22:06:07,592 INFO L290 TraceCheckUtils]: 38: Hoare triple {18634#false} assume main_#t~switch383#1; {18634#false} is VALID [2022-02-20 22:06:07,593 INFO L290 TraceCheckUtils]: 39: Hoare triple {18634#false} assume 1 == ~ldv_state_variable_2~0;call main_#t~mem384#1 := read~int(main_~#ldvarg3~0#1.base, main_~#ldvarg3~0#1.offset, 4);call main_#t~mem385#1 := read~int(main_~#ldvarg1~0#1.base, main_~#ldvarg1~0#1.offset, 8);assume { :begin_inline_virtblk_ioctl } true;virtblk_ioctl_#in~bdev#1.base, virtblk_ioctl_#in~bdev#1.offset, virtblk_ioctl_#in~mode#1, virtblk_ioctl_#in~cmd#1, virtblk_ioctl_#in~data#1 := ~virtblk_fops_group0~0.base, ~virtblk_fops_group0~0.offset, main_#t~mem384#1, main_~ldvarg2~0#1, main_#t~mem385#1;havoc virtblk_ioctl_#res#1;havoc virtblk_ioctl_#t~mem248#1.base, virtblk_ioctl_#t~mem248#1.offset, virtblk_ioctl_#t~mem249#1.base, virtblk_ioctl_#t~mem249#1.offset, virtblk_ioctl_#t~ret250#1, virtblk_ioctl_#t~ret251#1, virtblk_ioctl_#t~mem252#1.base, virtblk_ioctl_#t~mem252#1.offset, virtblk_ioctl_#t~ret253#1, virtblk_ioctl_#t~mem254#1.base, virtblk_ioctl_#t~mem254#1.offset, virtblk_ioctl_#t~ret255#1, virtblk_ioctl_~bdev#1.base, virtblk_ioctl_~bdev#1.offset, virtblk_ioctl_~mode#1, virtblk_ioctl_~cmd#1, virtblk_ioctl_~data#1, virtblk_ioctl_~disk~0#1.base, virtblk_ioctl_~disk~0#1.offset, virtblk_ioctl_~vblk~3#1.base, virtblk_ioctl_~vblk~3#1.offset, virtblk_ioctl_~usr_data~0#1.base, virtblk_ioctl_~usr_data~0#1.offset, virtblk_ioctl_~#id_str~0#1.base, virtblk_ioctl_~#id_str~0#1.offset, virtblk_ioctl_~err~1#1, virtblk_ioctl_~tmp~18#1, virtblk_ioctl_~tmp___0~9#1, virtblk_ioctl_~tmp___1~5#1, virtblk_ioctl_~tmp___2~2#1;virtblk_ioctl_~bdev#1.base, virtblk_ioctl_~bdev#1.offset := virtblk_ioctl_#in~bdev#1.base, virtblk_ioctl_#in~bdev#1.offset;virtblk_ioctl_~mode#1 := virtblk_ioctl_#in~mode#1;virtblk_ioctl_~cmd#1 := virtblk_ioctl_#in~cmd#1;virtblk_ioctl_~data#1 := virtblk_ioctl_#in~data#1;havoc virtblk_ioctl_~disk~0#1.base, virtblk_ioctl_~disk~0#1.offset;havoc virtblk_ioctl_~vblk~3#1.base, virtblk_ioctl_~vblk~3#1.offset;havoc virtblk_ioctl_~usr_data~0#1.base, virtblk_ioctl_~usr_data~0#1.offset;call virtblk_ioctl_~#id_str~0#1.base, virtblk_ioctl_~#id_str~0#1.offset := #Ultimate.allocOnStack(20);havoc virtblk_ioctl_~err~1#1;havoc virtblk_ioctl_~tmp~18#1;havoc virtblk_ioctl_~tmp___0~9#1;havoc virtblk_ioctl_~tmp___1~5#1;havoc virtblk_ioctl_~tmp___2~2#1;call virtblk_ioctl_#t~mem248#1.base, virtblk_ioctl_#t~mem248#1.offset := read~$Pointer$(virtblk_ioctl_~bdev#1.base, 240 + virtblk_ioctl_~bdev#1.offset, 8);virtblk_ioctl_~disk~0#1.base, virtblk_ioctl_~disk~0#1.offset := virtblk_ioctl_#t~mem248#1.base, virtblk_ioctl_#t~mem248#1.offset;havoc virtblk_ioctl_#t~mem248#1.base, virtblk_ioctl_#t~mem248#1.offset;call virtblk_ioctl_#t~mem249#1.base, virtblk_ioctl_#t~mem249#1.offset := read~$Pointer$(virtblk_ioctl_~disk~0#1.base, 1075 + virtblk_ioctl_~disk~0#1.offset, 8);virtblk_ioctl_~vblk~3#1.base, virtblk_ioctl_~vblk~3#1.offset := virtblk_ioctl_#t~mem249#1.base, virtblk_ioctl_#t~mem249#1.offset;havoc virtblk_ioctl_#t~mem249#1.base, virtblk_ioctl_#t~mem249#1.offset; {18634#false} is VALID [2022-02-20 22:06:07,593 INFO L290 TraceCheckUtils]: 40: Hoare triple {18634#false} assume 1447184708 == virtblk_ioctl_~cmd#1 % 4294967296;virtblk_ioctl_~usr_data~0#1.base, virtblk_ioctl_~usr_data~0#1.offset := 0, (if virtblk_ioctl_~data#1 % 18446744073709551616 % 18446744073709551616 <= 9223372036854775807 then virtblk_ioctl_~data#1 % 18446744073709551616 % 18446744073709551616 else virtblk_ioctl_~data#1 % 18446744073709551616 % 18446744073709551616 - 18446744073709551616);assume { :begin_inline_virtblk_get_id } true;virtblk_get_id_#in~disk#1.base, virtblk_get_id_#in~disk#1.offset, virtblk_get_id_#in~id_str#1.base, virtblk_get_id_#in~id_str#1.offset := virtblk_ioctl_~disk~0#1.base, virtblk_ioctl_~disk~0#1.offset, virtblk_ioctl_~#id_str~0#1.base, virtblk_ioctl_~#id_str~0#1.offset;havoc virtblk_get_id_#res#1;havoc virtblk_get_id_#t~mem233#1.base, virtblk_get_id_#t~mem233#1.offset, virtblk_get_id_#t~mem234#1.base, virtblk_get_id_#t~mem234#1.offset, virtblk_get_id_#t~mem235#1.base, virtblk_get_id_#t~mem235#1.offset, virtblk_get_id_#t~ret236#1.base, virtblk_get_id_#t~ret236#1.offset, virtblk_get_id_#t~ret237#1, virtblk_get_id_#t~ret238#1, virtblk_get_id_#t~mem239#1.base, virtblk_get_id_#t~mem239#1.offset, virtblk_get_id_#t~mem240#1.base, virtblk_get_id_#t~mem240#1.offset, virtblk_get_id_#t~ret241#1.base, virtblk_get_id_#t~ret241#1.offset, virtblk_get_id_#t~ret242#1, virtblk_get_id_#t~ret243#1, virtblk_get_id_#t~mem244#1.base, virtblk_get_id_#t~mem244#1.offset, virtblk_get_id_#t~mem245#1.base, virtblk_get_id_#t~mem245#1.offset, virtblk_get_id_#t~mem246#1.base, virtblk_get_id_#t~mem246#1.offset, virtblk_get_id_#t~ret247#1, virtblk_get_id_~disk#1.base, virtblk_get_id_~disk#1.offset, virtblk_get_id_~id_str#1.base, virtblk_get_id_~id_str#1.offset, virtblk_get_id_~vblk~2#1.base, virtblk_get_id_~vblk~2#1.offset, virtblk_get_id_~req~1#1.base, virtblk_get_id_~req~1#1.offset, virtblk_get_id_~bio~0#1.base, virtblk_get_id_~bio~0#1.offset, virtblk_get_id_~tmp~17#1, virtblk_get_id_~tmp___0~8#1, virtblk_get_id_~tmp___1~4#1, virtblk_get_id_~tmp___2~1#1, virtblk_get_id_~tmp___3~1#1;virtblk_get_id_~disk#1.base, virtblk_get_id_~disk#1.offset := virtblk_get_id_#in~disk#1.base, virtblk_get_id_#in~disk#1.offset;virtblk_get_id_~id_str#1.base, virtblk_get_id_~id_str#1.offset := virtblk_get_id_#in~id_str#1.base, virtblk_get_id_#in~id_str#1.offset;havoc virtblk_get_id_~vblk~2#1.base, virtblk_get_id_~vblk~2#1.offset;havoc virtblk_get_id_~req~1#1.base, virtblk_get_id_~req~1#1.offset;havoc virtblk_get_id_~bio~0#1.base, virtblk_get_id_~bio~0#1.offset;havoc virtblk_get_id_~tmp~17#1;havoc virtblk_get_id_~tmp___0~8#1;havoc virtblk_get_id_~tmp___1~4#1;havoc virtblk_get_id_~tmp___2~1#1;havoc virtblk_get_id_~tmp___3~1#1;call virtblk_get_id_#t~mem233#1.base, virtblk_get_id_#t~mem233#1.offset := read~$Pointer$(virtblk_get_id_~disk#1.base, 1075 + virtblk_get_id_~disk#1.offset, 8);virtblk_get_id_~vblk~2#1.base, virtblk_get_id_~vblk~2#1.offset := virtblk_get_id_#t~mem233#1.base, virtblk_get_id_#t~mem233#1.offset;havoc virtblk_get_id_#t~mem233#1.base, virtblk_get_id_#t~mem233#1.offset;call virtblk_get_id_#t~mem234#1.base, virtblk_get_id_#t~mem234#1.offset := read~$Pointer$(virtblk_get_id_~vblk~2#1.base, 72 + virtblk_get_id_~vblk~2#1.offset, 8);call virtblk_get_id_#t~mem235#1.base, virtblk_get_id_#t~mem235#1.offset := read~$Pointer$(virtblk_get_id_#t~mem234#1.base, 1067 + virtblk_get_id_#t~mem234#1.offset, 8);assume { :begin_inline_bio_map_kern } true;bio_map_kern_#in~arg0#1.base, bio_map_kern_#in~arg0#1.offset, bio_map_kern_#in~arg1#1.base, bio_map_kern_#in~arg1#1.offset, bio_map_kern_#in~arg2#1, bio_map_kern_#in~arg3#1 := virtblk_get_id_#t~mem235#1.base, virtblk_get_id_#t~mem235#1.offset, virtblk_get_id_~id_str#1.base, virtblk_get_id_~id_str#1.offset, 20, 208;havoc bio_map_kern_#res#1.base, bio_map_kern_#res#1.offset;havoc bio_map_kern_#t~ret401#1.base, bio_map_kern_#t~ret401#1.offset, bio_map_kern_~arg0#1.base, bio_map_kern_~arg0#1.offset, bio_map_kern_~arg1#1.base, bio_map_kern_~arg1#1.offset, bio_map_kern_~arg2#1, bio_map_kern_~arg3#1;bio_map_kern_~arg0#1.base, bio_map_kern_~arg0#1.offset := bio_map_kern_#in~arg0#1.base, bio_map_kern_#in~arg0#1.offset;bio_map_kern_~arg1#1.base, bio_map_kern_~arg1#1.offset := bio_map_kern_#in~arg1#1.base, bio_map_kern_#in~arg1#1.offset;bio_map_kern_~arg2#1 := bio_map_kern_#in~arg2#1;bio_map_kern_~arg3#1 := bio_map_kern_#in~arg3#1; {18634#false} is VALID [2022-02-20 22:06:07,593 INFO L272 TraceCheckUtils]: 41: Hoare triple {18634#false} call bio_map_kern_#t~ret401#1.base, bio_map_kern_#t~ret401#1.offset := ldv_malloc(112); {18697#(and (= |old(#length)| |#length|) (= |old(#valid)| |#valid|))} is VALID [2022-02-20 22:06:07,594 INFO L290 TraceCheckUtils]: 42: Hoare triple {18697#(and (= |old(#length)| |#length|) (= |old(#valid)| |#valid|))} ~size := #in~size;havoc ~p~0.base, ~p~0.offset;havoc ~tmp~2.base, ~tmp~2.offset;havoc ~tmp___0~0;assume -2147483648 <= #t~nondet103 && #t~nondet103 <= 2147483647;~tmp___0~0 := #t~nondet103;havoc #t~nondet103; {18633#true} is VALID [2022-02-20 22:06:07,594 INFO L290 TraceCheckUtils]: 43: Hoare triple {18633#true} assume 0 != ~tmp___0~0;#res.base, #res.offset := 0, 0; {18633#true} is VALID [2022-02-20 22:06:07,594 INFO L290 TraceCheckUtils]: 44: Hoare triple {18633#true} assume true; {18633#true} is VALID [2022-02-20 22:06:07,594 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {18633#true} {18634#false} #1156#return; {18634#false} is VALID [2022-02-20 22:06:07,594 INFO L290 TraceCheckUtils]: 46: Hoare triple {18634#false} bio_map_kern_#res#1.base, bio_map_kern_#res#1.offset := bio_map_kern_#t~ret401#1.base, bio_map_kern_#t~ret401#1.offset;havoc bio_map_kern_#t~ret401#1.base, bio_map_kern_#t~ret401#1.offset; {18634#false} is VALID [2022-02-20 22:06:07,595 INFO L290 TraceCheckUtils]: 47: Hoare triple {18634#false} virtblk_get_id_#t~ret236#1.base, virtblk_get_id_#t~ret236#1.offset := bio_map_kern_#res#1.base, bio_map_kern_#res#1.offset;assume { :end_inline_bio_map_kern } true;virtblk_get_id_~bio~0#1.base, virtblk_get_id_~bio~0#1.offset := virtblk_get_id_#t~ret236#1.base, virtblk_get_id_#t~ret236#1.offset;havoc virtblk_get_id_#t~mem234#1.base, virtblk_get_id_#t~mem234#1.offset;havoc virtblk_get_id_#t~mem235#1.base, virtblk_get_id_#t~mem235#1.offset;havoc virtblk_get_id_#t~ret236#1.base, virtblk_get_id_#t~ret236#1.offset; {18634#false} is VALID [2022-02-20 22:06:07,595 INFO L272 TraceCheckUtils]: 48: Hoare triple {18634#false} call virtblk_get_id_#t~ret237#1 := IS_ERR(virtblk_get_id_~bio~0#1.base, virtblk_get_id_~bio~0#1.offset); {18633#true} is VALID [2022-02-20 22:06:07,595 INFO L290 TraceCheckUtils]: 49: Hoare triple {18633#true} ~ptr.base, ~ptr.offset := #in~ptr.base, #in~ptr.offset;havoc ~tmp~28; {18633#true} is VALID [2022-02-20 22:06:07,595 INFO L272 TraceCheckUtils]: 50: Hoare triple {18633#true} call #t~ret390 := ldv_is_err(~ptr.base, ~ptr.offset); {18633#true} is VALID [2022-02-20 22:06:07,595 INFO L290 TraceCheckUtils]: 51: Hoare triple {18633#true} ~ptr.base, ~ptr.offset := #in~ptr.base, #in~ptr.offset;#res := (if 0 == (if (~ptr.base + ~ptr.offset) % 18446744073709551616 > 2012 then 1 else 0) then 0 else 1); {18633#true} is VALID [2022-02-20 22:06:07,595 INFO L290 TraceCheckUtils]: 52: Hoare triple {18633#true} assume true; {18633#true} is VALID [2022-02-20 22:06:07,596 INFO L284 TraceCheckUtils]: 53: Hoare quadruple {18633#true} {18633#true} #1184#return; {18633#true} is VALID [2022-02-20 22:06:07,596 INFO L290 TraceCheckUtils]: 54: Hoare triple {18633#true} ~tmp~28 := #t~ret390;havoc #t~ret390;#res := ~tmp~28 % 256; {18633#true} is VALID [2022-02-20 22:06:07,596 INFO L290 TraceCheckUtils]: 55: Hoare triple {18633#true} assume true; {18633#true} is VALID [2022-02-20 22:06:07,596 INFO L284 TraceCheckUtils]: 56: Hoare quadruple {18633#true} {18634#false} #1158#return; {18634#false} is VALID [2022-02-20 22:06:07,596 INFO L290 TraceCheckUtils]: 57: Hoare triple {18634#false} assume -9223372036854775808 <= virtblk_get_id_#t~ret237#1 && virtblk_get_id_#t~ret237#1 <= 9223372036854775807;virtblk_get_id_~tmp___0~8#1 := virtblk_get_id_#t~ret237#1;havoc virtblk_get_id_#t~ret237#1; {18634#false} is VALID [2022-02-20 22:06:07,596 INFO L290 TraceCheckUtils]: 58: Hoare triple {18634#false} assume !(0 != virtblk_get_id_~tmp___0~8#1);call virtblk_get_id_#t~mem239#1.base, virtblk_get_id_#t~mem239#1.offset := read~$Pointer$(virtblk_get_id_~vblk~2#1.base, 72 + virtblk_get_id_~vblk~2#1.offset, 8);call virtblk_get_id_#t~mem240#1.base, virtblk_get_id_#t~mem240#1.offset := read~$Pointer$(virtblk_get_id_#t~mem239#1.base, 1067 + virtblk_get_id_#t~mem239#1.offset, 8);assume { :begin_inline_ldv_blk_make_request_5 } true;ldv_blk_make_request_5_#in~ldv_func_arg1#1.base, ldv_blk_make_request_5_#in~ldv_func_arg1#1.offset, ldv_blk_make_request_5_#in~ldv_func_arg2#1.base, ldv_blk_make_request_5_#in~ldv_func_arg2#1.offset, ldv_blk_make_request_5_#in~ldv_func_arg3#1 := virtblk_get_id_#t~mem240#1.base, virtblk_get_id_#t~mem240#1.offset, virtblk_get_id_~bio~0#1.base, virtblk_get_id_~bio~0#1.offset, 208;havoc ldv_blk_make_request_5_#res#1.base, ldv_blk_make_request_5_#res#1.offset;havoc ldv_blk_make_request_5_#t~ret391#1.base, ldv_blk_make_request_5_#t~ret391#1.offset, ldv_blk_make_request_5_~ldv_func_arg1#1.base, ldv_blk_make_request_5_~ldv_func_arg1#1.offset, ldv_blk_make_request_5_~ldv_func_arg2#1.base, ldv_blk_make_request_5_~ldv_func_arg2#1.offset, ldv_blk_make_request_5_~ldv_func_arg3#1, ldv_blk_make_request_5_~tmp~29#1.base, ldv_blk_make_request_5_~tmp~29#1.offset;ldv_blk_make_request_5_~ldv_func_arg1#1.base, ldv_blk_make_request_5_~ldv_func_arg1#1.offset := ldv_blk_make_request_5_#in~ldv_func_arg1#1.base, ldv_blk_make_request_5_#in~ldv_func_arg1#1.offset;ldv_blk_make_request_5_~ldv_func_arg2#1.base, ldv_blk_make_request_5_~ldv_func_arg2#1.offset := ldv_blk_make_request_5_#in~ldv_func_arg2#1.base, ldv_blk_make_request_5_#in~ldv_func_arg2#1.offset;ldv_blk_make_request_5_~ldv_func_arg3#1 := ldv_blk_make_request_5_#in~ldv_func_arg3#1;havoc ldv_blk_make_request_5_~tmp~29#1.base, ldv_blk_make_request_5_~tmp~29#1.offset;assume { :begin_inline_ldv_blk_make_request } true;ldv_blk_make_request_#in~mask#1 := ldv_blk_make_request_5_~ldv_func_arg3#1;havoc ldv_blk_make_request_#res#1.base, ldv_blk_make_request_#res#1.offset;havoc ldv_blk_make_request_#t~ret395#1.base, ldv_blk_make_request_#t~ret395#1.offset, ldv_blk_make_request_#t~ret396#1, ldv_blk_make_request_~mask#1, ldv_blk_make_request_~res~1#1.base, ldv_blk_make_request_~res~1#1.offset, ldv_blk_make_request_~tmp___0~14#1;ldv_blk_make_request_~mask#1 := ldv_blk_make_request_#in~mask#1;havoc ldv_blk_make_request_~res~1#1.base, ldv_blk_make_request_~res~1#1.offset;havoc ldv_blk_make_request_~tmp___0~14#1; {18634#false} is VALID [2022-02-20 22:06:07,596 INFO L290 TraceCheckUtils]: 59: Hoare triple {18634#false} assume !(0 != ~ldv_blk_rq~0); {18634#false} is VALID [2022-02-20 22:06:07,597 INFO L272 TraceCheckUtils]: 60: Hoare triple {18634#false} call ldv_blk_make_request_#t~ret395#1.base, ldv_blk_make_request_#t~ret395#1.offset := ldv_malloc(322); {18697#(and (= |old(#length)| |#length|) (= |old(#valid)| |#valid|))} is VALID [2022-02-20 22:06:07,597 INFO L290 TraceCheckUtils]: 61: Hoare triple {18697#(and (= |old(#length)| |#length|) (= |old(#valid)| |#valid|))} ~size := #in~size;havoc ~p~0.base, ~p~0.offset;havoc ~tmp~2.base, ~tmp~2.offset;havoc ~tmp___0~0;assume -2147483648 <= #t~nondet103 && #t~nondet103 <= 2147483647;~tmp___0~0 := #t~nondet103;havoc #t~nondet103; {18633#true} is VALID [2022-02-20 22:06:07,598 INFO L290 TraceCheckUtils]: 62: Hoare triple {18633#true} assume 0 != ~tmp___0~0;#res.base, #res.offset := 0, 0; {18633#true} is VALID [2022-02-20 22:06:07,598 INFO L290 TraceCheckUtils]: 63: Hoare triple {18633#true} assume true; {18633#true} is VALID [2022-02-20 22:06:07,598 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {18633#true} {18634#false} #1164#return; {18634#false} is VALID [2022-02-20 22:06:07,599 INFO L290 TraceCheckUtils]: 65: Hoare triple {18634#false} ldv_blk_make_request_~res~1#1.base, ldv_blk_make_request_~res~1#1.offset := ldv_blk_make_request_#t~ret395#1.base, ldv_blk_make_request_#t~ret395#1.offset;havoc ldv_blk_make_request_#t~ret395#1.base, ldv_blk_make_request_#t~ret395#1.offset; {18634#false} is VALID [2022-02-20 22:06:07,599 INFO L290 TraceCheckUtils]: 66: Hoare triple {18634#false} assume !(0 == (ldv_blk_make_request_~res~1#1.base + ldv_blk_make_request_~res~1#1.offset) % 18446744073709551616); {18634#false} is VALID [2022-02-20 22:06:07,600 INFO L290 TraceCheckUtils]: 67: Hoare triple {18634#false} assume { :begin_inline_IS_ERR___0 } true;IS_ERR___0_#in~ptr#1.base, IS_ERR___0_#in~ptr#1.offset := ldv_blk_make_request_~res~1#1.base, ldv_blk_make_request_~res~1#1.offset;havoc IS_ERR___0_#res#1;havoc IS_ERR___0_#t~ret393#1, IS_ERR___0_~ptr#1.base, IS_ERR___0_~ptr#1.offset, IS_ERR___0_~tmp~31#1;IS_ERR___0_~ptr#1.base, IS_ERR___0_~ptr#1.offset := IS_ERR___0_#in~ptr#1.base, IS_ERR___0_#in~ptr#1.offset;havoc IS_ERR___0_~tmp~31#1; {18634#false} is VALID [2022-02-20 22:06:07,600 INFO L272 TraceCheckUtils]: 68: Hoare triple {18634#false} call IS_ERR___0_#t~ret393#1 := ldv__builtin_expect((if (IS_ERR___0_~ptr#1.base + IS_ERR___0_~ptr#1.offset) % 18446744073709551616 > 18446744073709547520 then 1 else 0), 0); {18633#true} is VALID [2022-02-20 22:06:07,602 INFO L290 TraceCheckUtils]: 69: Hoare triple {18633#true} ~exp := #in~exp;~c := #in~c;#res := ~exp; {18633#true} is VALID [2022-02-20 22:06:07,603 INFO L290 TraceCheckUtils]: 70: Hoare triple {18633#true} assume true; {18633#true} is VALID [2022-02-20 22:06:07,603 INFO L284 TraceCheckUtils]: 71: Hoare quadruple {18633#true} {18634#false} #1168#return; {18634#false} is VALID [2022-02-20 22:06:07,604 INFO L290 TraceCheckUtils]: 72: Hoare triple {18634#false} assume -9223372036854775808 <= IS_ERR___0_#t~ret393#1 && IS_ERR___0_#t~ret393#1 <= 9223372036854775807;IS_ERR___0_~tmp~31#1 := IS_ERR___0_#t~ret393#1;havoc IS_ERR___0_#t~ret393#1;IS_ERR___0_#res#1 := IS_ERR___0_~tmp~31#1; {18634#false} is VALID [2022-02-20 22:06:07,604 INFO L290 TraceCheckUtils]: 73: Hoare triple {18634#false} ldv_blk_make_request_#t~ret396#1 := IS_ERR___0_#res#1;assume { :end_inline_IS_ERR___0 } true;assume -9223372036854775808 <= ldv_blk_make_request_#t~ret396#1 && ldv_blk_make_request_#t~ret396#1 <= 9223372036854775807;ldv_blk_make_request_~tmp___0~14#1 := ldv_blk_make_request_#t~ret396#1;havoc ldv_blk_make_request_#t~ret396#1; {18634#false} is VALID [2022-02-20 22:06:07,604 INFO L290 TraceCheckUtils]: 74: Hoare triple {18634#false} assume 0 == ldv_blk_make_request_~tmp___0~14#1;~ldv_blk_rq~0 := 1; {18634#false} is VALID [2022-02-20 22:06:07,604 INFO L290 TraceCheckUtils]: 75: Hoare triple {18634#false} ldv_blk_make_request_#res#1.base, ldv_blk_make_request_#res#1.offset := ldv_blk_make_request_~res~1#1.base, ldv_blk_make_request_~res~1#1.offset; {18634#false} is VALID [2022-02-20 22:06:07,604 INFO L290 TraceCheckUtils]: 76: Hoare triple {18634#false} ldv_blk_make_request_5_#t~ret391#1.base, ldv_blk_make_request_5_#t~ret391#1.offset := ldv_blk_make_request_#res#1.base, ldv_blk_make_request_#res#1.offset;assume { :end_inline_ldv_blk_make_request } true;ldv_blk_make_request_5_~tmp~29#1.base, ldv_blk_make_request_5_~tmp~29#1.offset := ldv_blk_make_request_5_#t~ret391#1.base, ldv_blk_make_request_5_#t~ret391#1.offset;havoc ldv_blk_make_request_5_#t~ret391#1.base, ldv_blk_make_request_5_#t~ret391#1.offset;ldv_blk_make_request_5_#res#1.base, ldv_blk_make_request_5_#res#1.offset := ldv_blk_make_request_5_~tmp~29#1.base, ldv_blk_make_request_5_~tmp~29#1.offset; {18634#false} is VALID [2022-02-20 22:06:07,605 INFO L290 TraceCheckUtils]: 77: Hoare triple {18634#false} virtblk_get_id_#t~ret241#1.base, virtblk_get_id_#t~ret241#1.offset := ldv_blk_make_request_5_#res#1.base, ldv_blk_make_request_5_#res#1.offset;assume { :end_inline_ldv_blk_make_request_5 } true;virtblk_get_id_~req~1#1.base, virtblk_get_id_~req~1#1.offset := virtblk_get_id_#t~ret241#1.base, virtblk_get_id_#t~ret241#1.offset;havoc virtblk_get_id_#t~mem239#1.base, virtblk_get_id_#t~mem239#1.offset;havoc virtblk_get_id_#t~mem240#1.base, virtblk_get_id_#t~mem240#1.offset;havoc virtblk_get_id_#t~ret241#1.base, virtblk_get_id_#t~ret241#1.offset; {18634#false} is VALID [2022-02-20 22:06:07,605 INFO L272 TraceCheckUtils]: 78: Hoare triple {18634#false} call virtblk_get_id_#t~ret242#1 := IS_ERR(virtblk_get_id_~req~1#1.base, virtblk_get_id_~req~1#1.offset); {18633#true} is VALID [2022-02-20 22:06:07,605 INFO L290 TraceCheckUtils]: 79: Hoare triple {18633#true} ~ptr.base, ~ptr.offset := #in~ptr.base, #in~ptr.offset;havoc ~tmp~28; {18633#true} is VALID [2022-02-20 22:06:07,605 INFO L272 TraceCheckUtils]: 80: Hoare triple {18633#true} call #t~ret390 := ldv_is_err(~ptr.base, ~ptr.offset); {18633#true} is VALID [2022-02-20 22:06:07,605 INFO L290 TraceCheckUtils]: 81: Hoare triple {18633#true} ~ptr.base, ~ptr.offset := #in~ptr.base, #in~ptr.offset;#res := (if 0 == (if (~ptr.base + ~ptr.offset) % 18446744073709551616 > 2012 then 1 else 0) then 0 else 1); {18633#true} is VALID [2022-02-20 22:06:07,605 INFO L290 TraceCheckUtils]: 82: Hoare triple {18633#true} assume true; {18633#true} is VALID [2022-02-20 22:06:07,605 INFO L284 TraceCheckUtils]: 83: Hoare quadruple {18633#true} {18633#true} #1184#return; {18633#true} is VALID [2022-02-20 22:06:07,605 INFO L290 TraceCheckUtils]: 84: Hoare triple {18633#true} ~tmp~28 := #t~ret390;havoc #t~ret390;#res := ~tmp~28 % 256; {18633#true} is VALID [2022-02-20 22:06:07,606 INFO L290 TraceCheckUtils]: 85: Hoare triple {18633#true} assume true; {18633#true} is VALID [2022-02-20 22:06:07,606 INFO L284 TraceCheckUtils]: 86: Hoare quadruple {18633#true} {18634#false} #1170#return; {18634#false} is VALID [2022-02-20 22:06:07,606 INFO L290 TraceCheckUtils]: 87: Hoare triple {18634#false} assume -9223372036854775808 <= virtblk_get_id_#t~ret242#1 && virtblk_get_id_#t~ret242#1 <= 9223372036854775807;virtblk_get_id_~tmp___2~1#1 := virtblk_get_id_#t~ret242#1;havoc virtblk_get_id_#t~ret242#1; {18634#false} is VALID [2022-02-20 22:06:07,612 INFO L290 TraceCheckUtils]: 88: Hoare triple {18634#false} assume !(0 != virtblk_get_id_~tmp___2~1#1);call write~int(7, virtblk_get_id_~req~1#1.base, 64 + virtblk_get_id_~req~1#1.offset, 4);call virtblk_get_id_#t~mem244#1.base, virtblk_get_id_#t~mem244#1.offset := read~$Pointer$(virtblk_get_id_~vblk~2#1.base, 72 + virtblk_get_id_~vblk~2#1.offset, 8);call virtblk_get_id_#t~mem245#1.base, virtblk_get_id_#t~mem245#1.offset := read~$Pointer$(virtblk_get_id_#t~mem244#1.base, 1067 + virtblk_get_id_#t~mem244#1.offset, 8);call virtblk_get_id_#t~mem246#1.base, virtblk_get_id_#t~mem246#1.offset := read~$Pointer$(virtblk_get_id_~vblk~2#1.base, 72 + virtblk_get_id_~vblk~2#1.offset, 8);assume { :begin_inline_blk_execute_rq } true;blk_execute_rq_#in~arg0#1.base, blk_execute_rq_#in~arg0#1.offset, blk_execute_rq_#in~arg1#1.base, blk_execute_rq_#in~arg1#1.offset, blk_execute_rq_#in~arg2#1.base, blk_execute_rq_#in~arg2#1.offset, blk_execute_rq_#in~arg3#1 := virtblk_get_id_#t~mem245#1.base, virtblk_get_id_#t~mem245#1.offset, virtblk_get_id_#t~mem246#1.base, virtblk_get_id_#t~mem246#1.offset, virtblk_get_id_~req~1#1.base, virtblk_get_id_~req~1#1.offset, 0;havoc blk_execute_rq_#res#1;havoc blk_execute_rq_#t~nondet402#1, blk_execute_rq_~arg0#1.base, blk_execute_rq_~arg0#1.offset, blk_execute_rq_~arg1#1.base, blk_execute_rq_~arg1#1.offset, blk_execute_rq_~arg2#1.base, blk_execute_rq_~arg2#1.offset, blk_execute_rq_~arg3#1;blk_execute_rq_~arg0#1.base, blk_execute_rq_~arg0#1.offset := blk_execute_rq_#in~arg0#1.base, blk_execute_rq_#in~arg0#1.offset;blk_execute_rq_~arg1#1.base, blk_execute_rq_~arg1#1.offset := blk_execute_rq_#in~arg1#1.base, blk_execute_rq_#in~arg1#1.offset;blk_execute_rq_~arg2#1.base, blk_execute_rq_~arg2#1.offset := blk_execute_rq_#in~arg2#1.base, blk_execute_rq_#in~arg2#1.offset;blk_execute_rq_~arg3#1 := blk_execute_rq_#in~arg3#1;assume -2147483648 <= blk_execute_rq_#t~nondet402#1 && blk_execute_rq_#t~nondet402#1 <= 2147483647;blk_execute_rq_#res#1 := blk_execute_rq_#t~nondet402#1;havoc blk_execute_rq_#t~nondet402#1; {18634#false} is VALID [2022-02-20 22:06:07,612 INFO L290 TraceCheckUtils]: 89: Hoare triple {18634#false} virtblk_get_id_#t~ret247#1 := blk_execute_rq_#res#1;assume { :end_inline_blk_execute_rq } true;assume -2147483648 <= virtblk_get_id_#t~ret247#1 && virtblk_get_id_#t~ret247#1 <= 2147483647;virtblk_get_id_~tmp___3~1#1 := virtblk_get_id_#t~ret247#1;havoc virtblk_get_id_#t~mem244#1.base, virtblk_get_id_#t~mem244#1.offset;havoc virtblk_get_id_#t~mem245#1.base, virtblk_get_id_#t~mem245#1.offset;havoc virtblk_get_id_#t~mem246#1.base, virtblk_get_id_#t~mem246#1.offset;havoc virtblk_get_id_#t~ret247#1;virtblk_get_id_#res#1 := virtblk_get_id_~tmp___3~1#1; {18634#false} is VALID [2022-02-20 22:06:07,613 INFO L290 TraceCheckUtils]: 90: Hoare triple {18634#false} virtblk_ioctl_#t~ret250#1 := virtblk_get_id_#res#1;assume { :end_inline_virtblk_get_id } true;assume -2147483648 <= virtblk_ioctl_#t~ret250#1 && virtblk_ioctl_#t~ret250#1 <= 2147483647;virtblk_ioctl_~err~1#1 := virtblk_ioctl_#t~ret250#1;havoc virtblk_ioctl_#t~ret250#1; {18634#false} is VALID [2022-02-20 22:06:07,613 INFO L290 TraceCheckUtils]: 91: Hoare triple {18634#false} assume !(0 == virtblk_ioctl_~err~1#1); {18634#false} is VALID [2022-02-20 22:06:07,613 INFO L290 TraceCheckUtils]: 92: Hoare triple {18634#false} virtblk_ioctl_#res#1 := virtblk_ioctl_~err~1#1;call ULTIMATE.dealloc(virtblk_ioctl_~#id_str~0#1.base, virtblk_ioctl_~#id_str~0#1.offset);havoc virtblk_ioctl_~#id_str~0#1.base, virtblk_ioctl_~#id_str~0#1.offset; {18634#false} is VALID [2022-02-20 22:06:07,613 INFO L290 TraceCheckUtils]: 93: Hoare triple {18634#false} main_#t~ret386#1 := virtblk_ioctl_#res#1;assume { :end_inline_virtblk_ioctl } true;assume -2147483648 <= main_#t~ret386#1 && main_#t~ret386#1 <= 2147483647;havoc main_#t~mem384#1;havoc main_#t~mem385#1;havoc main_#t~ret386#1;~ldv_state_variable_2~0 := 1; {18634#false} is VALID [2022-02-20 22:06:07,613 INFO L290 TraceCheckUtils]: 94: Hoare triple {18634#false} assume -2147483648 <= main_#t~nondet374#1 && main_#t~nondet374#1 <= 2147483647;main_~tmp___0~12#1 := main_#t~nondet374#1;havoc main_#t~nondet374#1;main_#t~switch375#1 := 0 == main_~tmp___0~12#1; {18634#false} is VALID [2022-02-20 22:06:07,613 INFO L290 TraceCheckUtils]: 95: Hoare triple {18634#false} assume !main_#t~switch375#1;main_#t~switch375#1 := main_#t~switch375#1 || 1 == main_~tmp___0~12#1; {18634#false} is VALID [2022-02-20 22:06:07,613 INFO L290 TraceCheckUtils]: 96: Hoare triple {18634#false} assume main_#t~switch375#1; {18634#false} is VALID [2022-02-20 22:06:07,613 INFO L290 TraceCheckUtils]: 97: Hoare triple {18634#false} assume 0 != ~ldv_state_variable_0~0;assume -2147483648 <= main_#t~nondet379#1 && main_#t~nondet379#1 <= 2147483647;main_~tmp___2~4#1 := main_#t~nondet379#1;havoc main_#t~nondet379#1;main_#t~switch380#1 := 0 == main_~tmp___2~4#1; {18634#false} is VALID [2022-02-20 22:06:07,614 INFO L290 TraceCheckUtils]: 98: Hoare triple {18634#false} assume !main_#t~switch380#1;main_#t~switch380#1 := main_#t~switch380#1 || 1 == main_~tmp___2~4#1; {18634#false} is VALID [2022-02-20 22:06:07,614 INFO L290 TraceCheckUtils]: 99: Hoare triple {18634#false} assume main_#t~switch380#1; {18634#false} is VALID [2022-02-20 22:06:07,614 INFO L290 TraceCheckUtils]: 100: Hoare triple {18634#false} assume 1 == ~ldv_state_variable_0~0;assume { :begin_inline_init } true;havoc init_#res#1;havoc init_#t~ret366#1, init_#t~ret367#1, init_~tmp~22#1;havoc init_~tmp~22#1;assume { :begin_inline_register_blkdev } true;register_blkdev_#in~arg0#1, register_blkdev_#in~arg1#1.base, register_blkdev_#in~arg1#1.offset := 0, 9, 0;havoc register_blkdev_#res#1;havoc register_blkdev_#t~nondet409#1, register_blkdev_~arg0#1, register_blkdev_~arg1#1.base, register_blkdev_~arg1#1.offset;register_blkdev_~arg0#1 := register_blkdev_#in~arg0#1;register_blkdev_~arg1#1.base, register_blkdev_~arg1#1.offset := register_blkdev_#in~arg1#1.base, register_blkdev_#in~arg1#1.offset;assume -2147483648 <= register_blkdev_#t~nondet409#1 && register_blkdev_#t~nondet409#1 <= 2147483647;register_blkdev_#res#1 := register_blkdev_#t~nondet409#1;havoc register_blkdev_#t~nondet409#1; {18634#false} is VALID [2022-02-20 22:06:07,614 INFO L290 TraceCheckUtils]: 101: Hoare triple {18634#false} init_#t~ret366#1 := register_blkdev_#res#1;assume { :end_inline_register_blkdev } true;assume -2147483648 <= init_#t~ret366#1 && init_#t~ret366#1 <= 2147483647;~major~0 := init_#t~ret366#1;havoc init_#t~ret366#1; {18634#false} is VALID [2022-02-20 22:06:07,614 INFO L290 TraceCheckUtils]: 102: Hoare triple {18634#false} assume ~major~0 < 0;init_#res#1 := ~major~0; {18634#false} is VALID [2022-02-20 22:06:07,614 INFO L290 TraceCheckUtils]: 103: Hoare triple {18634#false} main_#t~ret381#1 := init_#res#1;assume { :end_inline_init } true;assume -2147483648 <= main_#t~ret381#1 && main_#t~ret381#1 <= 2147483647;~ldv_retval_1~0 := main_#t~ret381#1;havoc main_#t~ret381#1; {18634#false} is VALID [2022-02-20 22:06:07,614 INFO L290 TraceCheckUtils]: 104: Hoare triple {18634#false} assume !(0 == ~ldv_retval_1~0); {18634#false} is VALID [2022-02-20 22:06:07,614 INFO L290 TraceCheckUtils]: 105: Hoare triple {18634#false} assume 0 != ~ldv_retval_1~0;~ldv_state_variable_0~0 := 2; {18634#false} is VALID [2022-02-20 22:06:07,615 INFO L290 TraceCheckUtils]: 106: Hoare triple {18634#false} assume { :begin_inline_ldv_check_final_state } true; {18634#false} is VALID [2022-02-20 22:06:07,615 INFO L290 TraceCheckUtils]: 107: Hoare triple {18634#false} assume 0 != ~ldv_blk_rq~0; {18634#false} is VALID [2022-02-20 22:06:07,615 INFO L272 TraceCheckUtils]: 108: Hoare triple {18634#false} call ldv_error(); {18634#false} is VALID [2022-02-20 22:06:07,615 INFO L290 TraceCheckUtils]: 109: Hoare triple {18634#false} assume !false; {18634#false} is VALID [2022-02-20 22:06:07,615 INFO L134 CoverageAnalysis]: Checked inductivity of 20 backedges. 3 proven. 0 refuted. 0 times theorem prover too weak. 17 trivial. 0 not checked. [2022-02-20 22:06:07,616 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 22:06:07,616 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1470133523] [2022-02-20 22:06:07,616 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1470133523] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 22:06:07,616 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 22:06:07,616 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2022-02-20 22:06:07,616 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [521924574] [2022-02-20 22:06:07,616 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 22:06:07,617 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 10.428571428571429) internal successors, (73), 3 states have internal predecessors, (73), 2 states have call successors, (12), 6 states have call predecessors, (12), 1 states have return successors, (11), 2 states have call predecessors, (11), 2 states have call successors, (11) Word has length 110 [2022-02-20 22:06:07,618 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 22:06:07,619 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 7 states, 7 states have (on average 10.428571428571429) internal successors, (73), 3 states have internal predecessors, (73), 2 states have call successors, (12), 6 states have call predecessors, (12), 1 states have return successors, (11), 2 states have call predecessors, (11), 2 states have call successors, (11) [2022-02-20 22:06:07,678 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 96 edges. 96 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 22:06:07,678 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2022-02-20 22:06:07,678 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 22:06:07,679 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2022-02-20 22:06:07,680 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=14, Invalid=28, Unknown=0, NotChecked=0, Total=42 [2022-02-20 22:06:07,680 INFO L87 Difference]: Start difference. First operand 1653 states and 2186 transitions. Second operand has 7 states, 7 states have (on average 10.428571428571429) internal successors, (73), 3 states have internal predecessors, (73), 2 states have call successors, (12), 6 states have call predecessors, (12), 1 states have return successors, (11), 2 states have call predecessors, (11), 2 states have call successors, (11) [2022-02-20 22:06:15,435 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 22:06:15,435 INFO L93 Difference]: Finished difference Result 6066 states and 8330 transitions. [2022-02-20 22:06:15,435 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-02-20 22:06:15,436 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 10.428571428571429) internal successors, (73), 3 states have internal predecessors, (73), 2 states have call successors, (12), 6 states have call predecessors, (12), 1 states have return successors, (11), 2 states have call predecessors, (11), 2 states have call successors, (11) Word has length 110 [2022-02-20 22:06:15,436 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 22:06:15,436 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 10.428571428571429) internal successors, (73), 3 states have internal predecessors, (73), 2 states have call successors, (12), 6 states have call predecessors, (12), 1 states have return successors, (11), 2 states have call predecessors, (11), 2 states have call successors, (11) [2022-02-20 22:06:15,459 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 2173 transitions. [2022-02-20 22:06:15,460 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 10.428571428571429) internal successors, (73), 3 states have internal predecessors, (73), 2 states have call successors, (12), 6 states have call predecessors, (12), 1 states have return successors, (11), 2 states have call predecessors, (11), 2 states have call successors, (11) [2022-02-20 22:06:15,479 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 2173 transitions. [2022-02-20 22:06:15,479 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 9 states and 2173 transitions. [2022-02-20 22:06:17,327 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 2173 edges. 2173 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 22:06:18,278 INFO L225 Difference]: With dead ends: 6066 [2022-02-20 22:06:18,279 INFO L226 Difference]: Without dead ends: 4427 [2022-02-20 22:06:18,284 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 35 GetRequests, 26 SyntacticMatches, 0 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 9 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=39, Invalid=71, Unknown=0, NotChecked=0, Total=110 [2022-02-20 22:06:18,285 INFO L933 BasicCegarLoop]: 620 mSDtfsCounter, 1450 mSDsluCounter, 1342 mSDsCounter, 0 mSdLazyCounter, 1133 mSolverCounterSat, 843 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.9s Time, 0 mProtectedPredicate, 0 mProtectedAction, 1538 SdHoareTripleChecker+Valid, 1962 SdHoareTripleChecker+Invalid, 1976 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 843 IncrementalHoareTripleChecker+Valid, 1133 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.9s IncrementalHoareTripleChecker+Time [2022-02-20 22:06:18,285 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [1538 Valid, 1962 Invalid, 1976 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [843 Valid, 1133 Invalid, 0 Unknown, 0 Unchecked, 1.9s Time] [2022-02-20 22:06:18,288 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 4427 states. [2022-02-20 22:06:18,374 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 4427 to 3063. [2022-02-20 22:06:18,375 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 22:06:18,381 INFO L82 GeneralOperation]: Start isEquivalent. First operand 4427 states. Second operand has 3063 states, 2352 states have (on average 1.2610544217687074) internal successors, (2966), 2385 states have internal predecessors, (2966), 535 states have call successors, (535), 176 states have call predecessors, (535), 175 states have return successors, (533), 533 states have call predecessors, (533), 533 states have call successors, (533) [2022-02-20 22:06:18,389 INFO L74 IsIncluded]: Start isIncluded. First operand 4427 states. Second operand has 3063 states, 2352 states have (on average 1.2610544217687074) internal successors, (2966), 2385 states have internal predecessors, (2966), 535 states have call successors, (535), 176 states have call predecessors, (535), 175 states have return successors, (533), 533 states have call predecessors, (533), 533 states have call successors, (533) [2022-02-20 22:06:18,395 INFO L87 Difference]: Start difference. First operand 4427 states. Second operand has 3063 states, 2352 states have (on average 1.2610544217687074) internal successors, (2966), 2385 states have internal predecessors, (2966), 535 states have call successors, (535), 176 states have call predecessors, (535), 175 states have return successors, (533), 533 states have call predecessors, (533), 533 states have call successors, (533) [2022-02-20 22:06:19,041 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 22:06:19,042 INFO L93 Difference]: Finished difference Result 4427 states and 6157 transitions. [2022-02-20 22:06:19,042 INFO L276 IsEmpty]: Start isEmpty. Operand 4427 states and 6157 transitions. [2022-02-20 22:06:19,063 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 22:06:19,063 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 22:06:19,070 INFO L74 IsIncluded]: Start isIncluded. First operand has 3063 states, 2352 states have (on average 1.2610544217687074) internal successors, (2966), 2385 states have internal predecessors, (2966), 535 states have call successors, (535), 176 states have call predecessors, (535), 175 states have return successors, (533), 533 states have call predecessors, (533), 533 states have call successors, (533) Second operand 4427 states. [2022-02-20 22:06:19,075 INFO L87 Difference]: Start difference. First operand has 3063 states, 2352 states have (on average 1.2610544217687074) internal successors, (2966), 2385 states have internal predecessors, (2966), 535 states have call successors, (535), 176 states have call predecessors, (535), 175 states have return successors, (533), 533 states have call predecessors, (533), 533 states have call successors, (533) Second operand 4427 states. [2022-02-20 22:06:19,721 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 22:06:19,721 INFO L93 Difference]: Finished difference Result 4427 states and 6157 transitions. [2022-02-20 22:06:19,721 INFO L276 IsEmpty]: Start isEmpty. Operand 4427 states and 6157 transitions. [2022-02-20 22:06:19,741 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 22:06:19,742 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 22:06:19,742 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 22:06:19,742 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 22:06:19,747 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3063 states, 2352 states have (on average 1.2610544217687074) internal successors, (2966), 2385 states have internal predecessors, (2966), 535 states have call successors, (535), 176 states have call predecessors, (535), 175 states have return successors, (533), 533 states have call predecessors, (533), 533 states have call successors, (533) [2022-02-20 22:06:20,273 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3063 states to 3063 states and 4034 transitions. [2022-02-20 22:06:20,274 INFO L78 Accepts]: Start accepts. Automaton has 3063 states and 4034 transitions. Word has length 110 [2022-02-20 22:06:20,274 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 22:06:20,274 INFO L470 AbstractCegarLoop]: Abstraction has 3063 states and 4034 transitions. [2022-02-20 22:06:20,274 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 7 states, 7 states have (on average 10.428571428571429) internal successors, (73), 3 states have internal predecessors, (73), 2 states have call successors, (12), 6 states have call predecessors, (12), 1 states have return successors, (11), 2 states have call predecessors, (11), 2 states have call successors, (11) [2022-02-20 22:06:20,274 INFO L276 IsEmpty]: Start isEmpty. Operand 3063 states and 4034 transitions. [2022-02-20 22:06:20,278 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 154 [2022-02-20 22:06:20,278 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 22:06:20,278 INFO L514 BasicCegarLoop]: trace histogram [3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 22:06:20,278 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3 [2022-02-20 22:06:20,279 INFO L402 AbstractCegarLoop]: === Iteration 5 === Targeting ldv_errorErr0ASSERT_VIOLATIONERROR_FUNCTION === [ldv_errorErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 22:06:20,279 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 22:06:20,279 INFO L85 PathProgramCache]: Analyzing trace with hash 1207270975, now seen corresponding path program 1 times [2022-02-20 22:06:20,279 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 22:06:20,279 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [858784662] [2022-02-20 22:06:20,279 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 22:06:20,280 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 22:06:20,327 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 22:06:20,362 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2022-02-20 22:06:20,366 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 22:06:20,374 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 1 [2022-02-20 22:06:20,376 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 22:06:20,379 INFO L290 TraceCheckUtils]: 0: Hoare triple {40844#(= |#memory_int| |old(#memory_int)|)} #memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, #ptr.base); {40753#true} is VALID [2022-02-20 22:06:20,379 INFO L290 TraceCheckUtils]: 1: Hoare triple {40753#true} assume true; {40753#true} is VALID [2022-02-20 22:06:20,380 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {40753#true} {40753#true} #1074#return; {40753#true} is VALID [2022-02-20 22:06:20,380 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-02-20 22:06:20,380 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 22:06:20,383 INFO L290 TraceCheckUtils]: 0: Hoare triple {40753#true} ~cond := #in~cond; {40753#true} is VALID [2022-02-20 22:06:20,383 INFO L290 TraceCheckUtils]: 1: Hoare triple {40753#true} assume !(0 == ~cond); {40753#true} is VALID [2022-02-20 22:06:20,384 INFO L290 TraceCheckUtils]: 2: Hoare triple {40753#true} assume true; {40753#true} is VALID [2022-02-20 22:06:20,384 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {40753#true} {40753#true} #1076#return; {40753#true} is VALID [2022-02-20 22:06:20,384 INFO L290 TraceCheckUtils]: 0: Hoare triple {40836#(and (= |old(#length)| |#length|) (= |#memory_int| |old(#memory_int)|) (= |old(#valid)| |#valid|))} ~size := #in~size;havoc ~p~2.base, ~p~2.offset;havoc ~tmp~4.base, ~tmp~4.offset;call #t~malloc109.base, #t~malloc109.offset := #Ultimate.allocOnHeap(~size); {40753#true} is VALID [2022-02-20 22:06:20,385 INFO L272 TraceCheckUtils]: 1: Hoare triple {40753#true} call #Ultimate.meminit(#t~malloc109.base, #t~malloc109.offset, 1, ~size, ~size); {40844#(= |#memory_int| |old(#memory_int)|)} is VALID [2022-02-20 22:06:20,385 INFO L290 TraceCheckUtils]: 2: Hoare triple {40844#(= |#memory_int| |old(#memory_int)|)} #memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, #ptr.base); {40753#true} is VALID [2022-02-20 22:06:20,385 INFO L290 TraceCheckUtils]: 3: Hoare triple {40753#true} assume true; {40753#true} is VALID [2022-02-20 22:06:20,385 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {40753#true} {40753#true} #1074#return; {40753#true} is VALID [2022-02-20 22:06:20,385 INFO L290 TraceCheckUtils]: 5: Hoare triple {40753#true} ~tmp~4.base, ~tmp~4.offset := #t~malloc109.base, #t~malloc109.offset;~p~2.base, ~p~2.offset := ~tmp~4.base, ~tmp~4.offset; {40753#true} is VALID [2022-02-20 22:06:20,385 INFO L272 TraceCheckUtils]: 6: Hoare triple {40753#true} call assume_abort_if_not((if 0 != (~p~2.base + ~p~2.offset) % 18446744073709551616 then 1 else 0)); {40753#true} is VALID [2022-02-20 22:06:20,386 INFO L290 TraceCheckUtils]: 7: Hoare triple {40753#true} ~cond := #in~cond; {40753#true} is VALID [2022-02-20 22:06:20,386 INFO L290 TraceCheckUtils]: 8: Hoare triple {40753#true} assume !(0 == ~cond); {40753#true} is VALID [2022-02-20 22:06:20,386 INFO L290 TraceCheckUtils]: 9: Hoare triple {40753#true} assume true; {40753#true} is VALID [2022-02-20 22:06:20,386 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {40753#true} {40753#true} #1076#return; {40753#true} is VALID [2022-02-20 22:06:20,386 INFO L290 TraceCheckUtils]: 11: Hoare triple {40753#true} #res.base, #res.offset := ~p~2.base, ~p~2.offset; {40753#true} is VALID [2022-02-20 22:06:20,386 INFO L290 TraceCheckUtils]: 12: Hoare triple {40753#true} assume true; {40753#true} is VALID [2022-02-20 22:06:20,386 INFO L284 TraceCheckUtils]: 13: Hoare quadruple {40753#true} {40753#true} #1084#return; {40753#true} is VALID [2022-02-20 22:06:20,393 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 19 [2022-02-20 22:06:20,394 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 22:06:20,404 INFO L290 TraceCheckUtils]: 0: Hoare triple {40845#(and (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~s#1.base, ~s#1.offset := #in~s#1.base, #in~s#1.offset;~c#1 := #in~c#1;~n#1 := #in~n#1;havoc ~tmp~5#1.base, ~tmp~5#1.offset;assume { :begin_inline_#Ultimate.C_memset } true;#Ultimate.C_memset_#ptr#1.base, #Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#value#1, #Ultimate.C_memset_#amount#1 := ~s#1.base, ~s#1.offset, ~c#1, ~n#1;havoc #Ultimate.C_memset_#res#1.base, #Ultimate.C_memset_#res#1.offset;havoc #Ultimate.C_memset_#t~loopctr416#1;#Ultimate.C_memset_#t~loopctr416#1 := 0; {40753#true} is VALID [2022-02-20 22:06:20,404 INFO L290 TraceCheckUtils]: 1: Hoare triple {40753#true} assume !(#Ultimate.C_memset_#t~loopctr416#1 % 18446744073709551616 < #Ultimate.C_memset_#amount#1 % 18446744073709551616); {40753#true} is VALID [2022-02-20 22:06:20,405 INFO L290 TraceCheckUtils]: 2: Hoare triple {40753#true} assume #Ultimate.C_memset_#res#1.base == #Ultimate.C_memset_#ptr#1.base && #Ultimate.C_memset_#res#1.offset == #Ultimate.C_memset_#ptr#1.offset;#t~memset~res110#1.base, #t~memset~res110#1.offset := #Ultimate.C_memset_#res#1.base, #Ultimate.C_memset_#res#1.offset;assume { :end_inline_#Ultimate.C_memset } true;~tmp~5#1.base, ~tmp~5#1.offset := ~s#1.base, ~s#1.offset;havoc #t~memset~res110#1.base, #t~memset~res110#1.offset;#res#1.base, #res#1.offset := ~tmp~5#1.base, ~tmp~5#1.offset; {40753#true} is VALID [2022-02-20 22:06:20,405 INFO L290 TraceCheckUtils]: 3: Hoare triple {40753#true} assume true; {40753#true} is VALID [2022-02-20 22:06:20,405 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {40753#true} {40753#true} #1086#return; {40753#true} is VALID [2022-02-20 22:06:20,405 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 26 [2022-02-20 22:06:20,407 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 22:06:20,415 INFO L290 TraceCheckUtils]: 0: Hoare triple {40845#(and (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~s#1.base, ~s#1.offset := #in~s#1.base, #in~s#1.offset;~c#1 := #in~c#1;~n#1 := #in~n#1;havoc ~tmp~5#1.base, ~tmp~5#1.offset;assume { :begin_inline_#Ultimate.C_memset } true;#Ultimate.C_memset_#ptr#1.base, #Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#value#1, #Ultimate.C_memset_#amount#1 := ~s#1.base, ~s#1.offset, ~c#1, ~n#1;havoc #Ultimate.C_memset_#res#1.base, #Ultimate.C_memset_#res#1.offset;havoc #Ultimate.C_memset_#t~loopctr416#1;#Ultimate.C_memset_#t~loopctr416#1 := 0; {40753#true} is VALID [2022-02-20 22:06:20,416 INFO L290 TraceCheckUtils]: 1: Hoare triple {40753#true} assume !(#Ultimate.C_memset_#t~loopctr416#1 % 18446744073709551616 < #Ultimate.C_memset_#amount#1 % 18446744073709551616); {40753#true} is VALID [2022-02-20 22:06:20,416 INFO L290 TraceCheckUtils]: 2: Hoare triple {40753#true} assume #Ultimate.C_memset_#res#1.base == #Ultimate.C_memset_#ptr#1.base && #Ultimate.C_memset_#res#1.offset == #Ultimate.C_memset_#ptr#1.offset;#t~memset~res110#1.base, #t~memset~res110#1.offset := #Ultimate.C_memset_#res#1.base, #Ultimate.C_memset_#res#1.offset;assume { :end_inline_#Ultimate.C_memset } true;~tmp~5#1.base, ~tmp~5#1.offset := ~s#1.base, ~s#1.offset;havoc #t~memset~res110#1.base, #t~memset~res110#1.offset;#res#1.base, #res#1.offset := ~tmp~5#1.base, ~tmp~5#1.offset; {40753#true} is VALID [2022-02-20 22:06:20,416 INFO L290 TraceCheckUtils]: 3: Hoare triple {40753#true} assume true; {40753#true} is VALID [2022-02-20 22:06:20,416 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {40753#true} {40753#true} #1088#return; {40753#true} is VALID [2022-02-20 22:06:20,416 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 44 [2022-02-20 22:06:20,419 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 22:06:20,424 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 1 [2022-02-20 22:06:20,425 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 22:06:20,428 INFO L290 TraceCheckUtils]: 0: Hoare triple {40844#(= |#memory_int| |old(#memory_int)|)} #memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, #ptr.base); {40753#true} is VALID [2022-02-20 22:06:20,428 INFO L290 TraceCheckUtils]: 1: Hoare triple {40753#true} assume true; {40753#true} is VALID [2022-02-20 22:06:20,428 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {40753#true} {40753#true} #1074#return; {40753#true} is VALID [2022-02-20 22:06:20,428 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-02-20 22:06:20,429 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 22:06:20,432 INFO L290 TraceCheckUtils]: 0: Hoare triple {40753#true} ~cond := #in~cond; {40753#true} is VALID [2022-02-20 22:06:20,432 INFO L290 TraceCheckUtils]: 1: Hoare triple {40753#true} assume !(0 == ~cond); {40753#true} is VALID [2022-02-20 22:06:20,432 INFO L290 TraceCheckUtils]: 2: Hoare triple {40753#true} assume true; {40753#true} is VALID [2022-02-20 22:06:20,432 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {40753#true} {40753#true} #1076#return; {40753#true} is VALID [2022-02-20 22:06:20,432 INFO L290 TraceCheckUtils]: 0: Hoare triple {40836#(and (= |old(#length)| |#length|) (= |#memory_int| |old(#memory_int)|) (= |old(#valid)| |#valid|))} ~size := #in~size;havoc ~p~2.base, ~p~2.offset;havoc ~tmp~4.base, ~tmp~4.offset;call #t~malloc109.base, #t~malloc109.offset := #Ultimate.allocOnHeap(~size); {40753#true} is VALID [2022-02-20 22:06:20,433 INFO L272 TraceCheckUtils]: 1: Hoare triple {40753#true} call #Ultimate.meminit(#t~malloc109.base, #t~malloc109.offset, 1, ~size, ~size); {40844#(= |#memory_int| |old(#memory_int)|)} is VALID [2022-02-20 22:06:20,433 INFO L290 TraceCheckUtils]: 2: Hoare triple {40844#(= |#memory_int| |old(#memory_int)|)} #memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, #ptr.base); {40753#true} is VALID [2022-02-20 22:06:20,433 INFO L290 TraceCheckUtils]: 3: Hoare triple {40753#true} assume true; {40753#true} is VALID [2022-02-20 22:06:20,434 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {40753#true} {40753#true} #1074#return; {40753#true} is VALID [2022-02-20 22:06:20,434 INFO L290 TraceCheckUtils]: 5: Hoare triple {40753#true} ~tmp~4.base, ~tmp~4.offset := #t~malloc109.base, #t~malloc109.offset;~p~2.base, ~p~2.offset := ~tmp~4.base, ~tmp~4.offset; {40753#true} is VALID [2022-02-20 22:06:20,434 INFO L272 TraceCheckUtils]: 6: Hoare triple {40753#true} call assume_abort_if_not((if 0 != (~p~2.base + ~p~2.offset) % 18446744073709551616 then 1 else 0)); {40753#true} is VALID [2022-02-20 22:06:20,434 INFO L290 TraceCheckUtils]: 7: Hoare triple {40753#true} ~cond := #in~cond; {40753#true} is VALID [2022-02-20 22:06:20,434 INFO L290 TraceCheckUtils]: 8: Hoare triple {40753#true} assume !(0 == ~cond); {40753#true} is VALID [2022-02-20 22:06:20,434 INFO L290 TraceCheckUtils]: 9: Hoare triple {40753#true} assume true; {40753#true} is VALID [2022-02-20 22:06:20,434 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {40753#true} {40753#true} #1076#return; {40753#true} is VALID [2022-02-20 22:06:20,435 INFO L290 TraceCheckUtils]: 11: Hoare triple {40753#true} #res.base, #res.offset := ~p~2.base, ~p~2.offset; {40753#true} is VALID [2022-02-20 22:06:20,435 INFO L290 TraceCheckUtils]: 12: Hoare triple {40753#true} assume true; {40753#true} is VALID [2022-02-20 22:06:20,435 INFO L284 TraceCheckUtils]: 13: Hoare quadruple {40753#true} {40754#false} #1150#return; {40754#false} is VALID [2022-02-20 22:06:20,435 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 61 [2022-02-20 22:06:20,439 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 22:06:20,444 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 1 [2022-02-20 22:06:20,445 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 22:06:20,448 INFO L290 TraceCheckUtils]: 0: Hoare triple {40844#(= |#memory_int| |old(#memory_int)|)} #memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, #ptr.base); {40753#true} is VALID [2022-02-20 22:06:20,448 INFO L290 TraceCheckUtils]: 1: Hoare triple {40753#true} assume true; {40753#true} is VALID [2022-02-20 22:06:20,448 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {40753#true} {40753#true} #1074#return; {40753#true} is VALID [2022-02-20 22:06:20,449 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-02-20 22:06:20,450 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 22:06:20,455 INFO L290 TraceCheckUtils]: 0: Hoare triple {40753#true} ~cond := #in~cond; {40753#true} is VALID [2022-02-20 22:06:20,455 INFO L290 TraceCheckUtils]: 1: Hoare triple {40753#true} assume !(0 == ~cond); {40753#true} is VALID [2022-02-20 22:06:20,455 INFO L290 TraceCheckUtils]: 2: Hoare triple {40753#true} assume true; {40753#true} is VALID [2022-02-20 22:06:20,455 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {40753#true} {40753#true} #1076#return; {40753#true} is VALID [2022-02-20 22:06:20,455 INFO L290 TraceCheckUtils]: 0: Hoare triple {40836#(and (= |old(#length)| |#length|) (= |#memory_int| |old(#memory_int)|) (= |old(#valid)| |#valid|))} ~size := #in~size;havoc ~p~2.base, ~p~2.offset;havoc ~tmp~4.base, ~tmp~4.offset;call #t~malloc109.base, #t~malloc109.offset := #Ultimate.allocOnHeap(~size); {40753#true} is VALID [2022-02-20 22:06:20,456 INFO L272 TraceCheckUtils]: 1: Hoare triple {40753#true} call #Ultimate.meminit(#t~malloc109.base, #t~malloc109.offset, 1, ~size, ~size); {40844#(= |#memory_int| |old(#memory_int)|)} is VALID [2022-02-20 22:06:20,456 INFO L290 TraceCheckUtils]: 2: Hoare triple {40844#(= |#memory_int| |old(#memory_int)|)} #memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, #ptr.base); {40753#true} is VALID [2022-02-20 22:06:20,456 INFO L290 TraceCheckUtils]: 3: Hoare triple {40753#true} assume true; {40753#true} is VALID [2022-02-20 22:06:20,457 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {40753#true} {40753#true} #1074#return; {40753#true} is VALID [2022-02-20 22:06:20,457 INFO L290 TraceCheckUtils]: 5: Hoare triple {40753#true} ~tmp~4.base, ~tmp~4.offset := #t~malloc109.base, #t~malloc109.offset;~p~2.base, ~p~2.offset := ~tmp~4.base, ~tmp~4.offset; {40753#true} is VALID [2022-02-20 22:06:20,457 INFO L272 TraceCheckUtils]: 6: Hoare triple {40753#true} call assume_abort_if_not((if 0 != (~p~2.base + ~p~2.offset) % 18446744073709551616 then 1 else 0)); {40753#true} is VALID [2022-02-20 22:06:20,457 INFO L290 TraceCheckUtils]: 7: Hoare triple {40753#true} ~cond := #in~cond; {40753#true} is VALID [2022-02-20 22:06:20,457 INFO L290 TraceCheckUtils]: 8: Hoare triple {40753#true} assume !(0 == ~cond); {40753#true} is VALID [2022-02-20 22:06:20,457 INFO L290 TraceCheckUtils]: 9: Hoare triple {40753#true} assume true; {40753#true} is VALID [2022-02-20 22:06:20,457 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {40753#true} {40753#true} #1076#return; {40753#true} is VALID [2022-02-20 22:06:20,457 INFO L290 TraceCheckUtils]: 11: Hoare triple {40753#true} #res.base, #res.offset := ~p~2.base, ~p~2.offset; {40753#true} is VALID [2022-02-20 22:06:20,458 INFO L290 TraceCheckUtils]: 12: Hoare triple {40753#true} assume true; {40753#true} is VALID [2022-02-20 22:06:20,458 INFO L284 TraceCheckUtils]: 13: Hoare quadruple {40753#true} {40754#false} #1152#return; {40754#false} is VALID [2022-02-20 22:06:20,464 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 87 [2022-02-20 22:06:20,466 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 22:06:20,469 INFO L290 TraceCheckUtils]: 0: Hoare triple {40860#(and (= |old(#length)| |#length|) (= |old(#valid)| |#valid|))} ~size := #in~size;havoc ~p~0.base, ~p~0.offset;havoc ~tmp~2.base, ~tmp~2.offset;havoc ~tmp___0~0;assume -2147483648 <= #t~nondet103 && #t~nondet103 <= 2147483647;~tmp___0~0 := #t~nondet103;havoc #t~nondet103; {40753#true} is VALID [2022-02-20 22:06:20,470 INFO L290 TraceCheckUtils]: 1: Hoare triple {40753#true} assume 0 != ~tmp___0~0;#res.base, #res.offset := 0, 0; {40753#true} is VALID [2022-02-20 22:06:20,470 INFO L290 TraceCheckUtils]: 2: Hoare triple {40753#true} assume true; {40753#true} is VALID [2022-02-20 22:06:20,470 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {40753#true} {40754#false} #1156#return; {40754#false} is VALID [2022-02-20 22:06:20,470 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 94 [2022-02-20 22:06:20,472 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 22:06:20,479 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 1 [2022-02-20 22:06:20,480 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 22:06:20,484 INFO L290 TraceCheckUtils]: 0: Hoare triple {40753#true} ~ptr.base, ~ptr.offset := #in~ptr.base, #in~ptr.offset;#res := (if 0 == (if (~ptr.base + ~ptr.offset) % 18446744073709551616 > 2012 then 1 else 0) then 0 else 1); {40753#true} is VALID [2022-02-20 22:06:20,484 INFO L290 TraceCheckUtils]: 1: Hoare triple {40753#true} assume true; {40753#true} is VALID [2022-02-20 22:06:20,484 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {40753#true} {40753#true} #1184#return; {40753#true} is VALID [2022-02-20 22:06:20,484 INFO L290 TraceCheckUtils]: 0: Hoare triple {40753#true} ~ptr.base, ~ptr.offset := #in~ptr.base, #in~ptr.offset;havoc ~tmp~28; {40753#true} is VALID [2022-02-20 22:06:20,484 INFO L272 TraceCheckUtils]: 1: Hoare triple {40753#true} call #t~ret390 := ldv_is_err(~ptr.base, ~ptr.offset); {40753#true} is VALID [2022-02-20 22:06:20,484 INFO L290 TraceCheckUtils]: 2: Hoare triple {40753#true} ~ptr.base, ~ptr.offset := #in~ptr.base, #in~ptr.offset;#res := (if 0 == (if (~ptr.base + ~ptr.offset) % 18446744073709551616 > 2012 then 1 else 0) then 0 else 1); {40753#true} is VALID [2022-02-20 22:06:20,484 INFO L290 TraceCheckUtils]: 3: Hoare triple {40753#true} assume true; {40753#true} is VALID [2022-02-20 22:06:20,485 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {40753#true} {40753#true} #1184#return; {40753#true} is VALID [2022-02-20 22:06:20,485 INFO L290 TraceCheckUtils]: 5: Hoare triple {40753#true} ~tmp~28 := #t~ret390;havoc #t~ret390;#res := ~tmp~28 % 256; {40753#true} is VALID [2022-02-20 22:06:20,485 INFO L290 TraceCheckUtils]: 6: Hoare triple {40753#true} assume true; {40753#true} is VALID [2022-02-20 22:06:20,485 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {40753#true} {40754#false} #1158#return; {40754#false} is VALID [2022-02-20 22:06:20,485 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 106 [2022-02-20 22:06:20,487 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 22:06:20,491 INFO L290 TraceCheckUtils]: 0: Hoare triple {40860#(and (= |old(#length)| |#length|) (= |old(#valid)| |#valid|))} ~size := #in~size;havoc ~p~0.base, ~p~0.offset;havoc ~tmp~2.base, ~tmp~2.offset;havoc ~tmp___0~0;assume -2147483648 <= #t~nondet103 && #t~nondet103 <= 2147483647;~tmp___0~0 := #t~nondet103;havoc #t~nondet103; {40753#true} is VALID [2022-02-20 22:06:20,491 INFO L290 TraceCheckUtils]: 1: Hoare triple {40753#true} assume 0 != ~tmp___0~0;#res.base, #res.offset := 0, 0; {40753#true} is VALID [2022-02-20 22:06:20,491 INFO L290 TraceCheckUtils]: 2: Hoare triple {40753#true} assume true; {40753#true} is VALID [2022-02-20 22:06:20,491 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {40753#true} {40754#false} #1164#return; {40754#false} is VALID [2022-02-20 22:06:20,491 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 114 [2022-02-20 22:06:20,492 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 22:06:20,496 INFO L290 TraceCheckUtils]: 0: Hoare triple {40753#true} ~exp := #in~exp;~c := #in~c;#res := ~exp; {40753#true} is VALID [2022-02-20 22:06:20,496 INFO L290 TraceCheckUtils]: 1: Hoare triple {40753#true} assume true; {40753#true} is VALID [2022-02-20 22:06:20,496 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {40753#true} {40754#false} #1168#return; {40754#false} is VALID [2022-02-20 22:06:20,496 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 124 [2022-02-20 22:06:20,499 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 22:06:20,503 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 1 [2022-02-20 22:06:20,504 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 22:06:20,509 INFO L290 TraceCheckUtils]: 0: Hoare triple {40753#true} ~ptr.base, ~ptr.offset := #in~ptr.base, #in~ptr.offset;#res := (if 0 == (if (~ptr.base + ~ptr.offset) % 18446744073709551616 > 2012 then 1 else 0) then 0 else 1); {40753#true} is VALID [2022-02-20 22:06:20,509 INFO L290 TraceCheckUtils]: 1: Hoare triple {40753#true} assume true; {40753#true} is VALID [2022-02-20 22:06:20,509 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {40753#true} {40753#true} #1184#return; {40753#true} is VALID [2022-02-20 22:06:20,509 INFO L290 TraceCheckUtils]: 0: Hoare triple {40753#true} ~ptr.base, ~ptr.offset := #in~ptr.base, #in~ptr.offset;havoc ~tmp~28; {40753#true} is VALID [2022-02-20 22:06:20,509 INFO L272 TraceCheckUtils]: 1: Hoare triple {40753#true} call #t~ret390 := ldv_is_err(~ptr.base, ~ptr.offset); {40753#true} is VALID [2022-02-20 22:06:20,510 INFO L290 TraceCheckUtils]: 2: Hoare triple {40753#true} ~ptr.base, ~ptr.offset := #in~ptr.base, #in~ptr.offset;#res := (if 0 == (if (~ptr.base + ~ptr.offset) % 18446744073709551616 > 2012 then 1 else 0) then 0 else 1); {40753#true} is VALID [2022-02-20 22:06:20,510 INFO L290 TraceCheckUtils]: 3: Hoare triple {40753#true} assume true; {40753#true} is VALID [2022-02-20 22:06:20,510 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {40753#true} {40753#true} #1184#return; {40753#true} is VALID [2022-02-20 22:06:20,510 INFO L290 TraceCheckUtils]: 5: Hoare triple {40753#true} ~tmp~28 := #t~ret390;havoc #t~ret390;#res := ~tmp~28 % 256; {40753#true} is VALID [2022-02-20 22:06:20,510 INFO L290 TraceCheckUtils]: 6: Hoare triple {40753#true} assume true; {40753#true} is VALID [2022-02-20 22:06:20,510 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {40753#true} {40754#false} #1170#return; {40754#false} is VALID [2022-02-20 22:06:20,511 INFO L290 TraceCheckUtils]: 0: Hoare triple {40753#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(95, 2);call #Ultimate.allocInit(22, 3);call #Ultimate.allocInit(9, 4);call #Ultimate.allocInit(5, 5);call write~init~int(118, 5, 0, 1);call write~init~int(100, 5, 1, 1);call write~init~int(37, 5, 2, 1);call write~init~int(99, 5, 3, 1);call write~init~int(0, 5, 4, 1);call #Ultimate.allocInit(7, 6);call write~init~int(118, 6, 0, 1);call write~init~int(100, 6, 1, 1);call write~init~int(37, 6, 2, 1);call write~init~int(99, 6, 3, 1);call write~init~int(37, 6, 4, 1);call write~init~int(99, 6, 5, 1);call write~init~int(0, 6, 6, 1);call #Ultimate.allocInit(9, 7);call #Ultimate.allocInit(11, 8);call #Ultimate.allocInit(8, 9);call #Ultimate.allocInit(8, 10);~LDV_IN_INTERRUPT~0 := 1;~virtblk_fops_group0~0.base, ~virtblk_fops_group0~0.offset := 0, 0;~ldv_state_variable_2~0 := 0;~ref_cnt~0 := 0;~ldv_state_variable_1~0 := 0;~virtio_blk_group0~0.base, ~virtio_blk_group0~0.offset := 0, 0;~ldv_state_variable_0~0 := 0;~major~0 := 0;~index~0 := 0;~#virtblk_fops~0.base, ~#virtblk_fops~0.offset := 11, 0;call #Ultimate.allocInit(96, 11);call write~init~$Pointer$(0, 0, ~#virtblk_fops~0.base, ~#virtblk_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtblk_fops~0.base, 8 + ~#virtblk_fops~0.offset, 8);call write~init~$Pointer$(#funAddr~virtblk_ioctl.base, #funAddr~virtblk_ioctl.offset, ~#virtblk_fops~0.base, 16 + ~#virtblk_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtblk_fops~0.base, 24 + ~#virtblk_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtblk_fops~0.base, 32 + ~#virtblk_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtblk_fops~0.base, 40 + ~#virtblk_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtblk_fops~0.base, 48 + ~#virtblk_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtblk_fops~0.base, 56 + ~#virtblk_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtblk_fops~0.base, 64 + ~#virtblk_fops~0.offset, 8);call write~init~$Pointer$(#funAddr~virtblk_getgeo.base, #funAddr~virtblk_getgeo.offset, ~#virtblk_fops~0.base, 72 + ~#virtblk_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtblk_fops~0.base, 80 + ~#virtblk_fops~0.offset, 8);call write~init~$Pointer$(~#__this_module~0.base, ~#__this_module~0.offset, ~#virtblk_fops~0.base, 88 + ~#virtblk_fops~0.offset, 8);~#id_table~0.base, ~#id_table~0.offset := 12, 0;call #Ultimate.allocInit(16, 12);call write~init~int(2, ~#id_table~0.base, ~#id_table~0.offset, 4);call write~init~int(4294967295, ~#id_table~0.base, 4 + ~#id_table~0.offset, 4);call write~init~int(0, ~#id_table~0.base, 8 + ~#id_table~0.offset, 4);call write~init~int(0, ~#id_table~0.base, 12 + ~#id_table~0.offset, 4);~#features~0.base, ~#features~0.offset := 13, 0;call #Ultimate.allocInit(36, 13);call write~init~int(0, ~#features~0.base, ~#features~0.offset, 4);call write~init~int(2, ~#features~0.base, 4 + ~#features~0.offset, 4);call write~init~int(1, ~#features~0.base, 8 + ~#features~0.offset, 4);call write~init~int(4, ~#features~0.base, 12 + ~#features~0.offset, 4);call write~init~int(5, ~#features~0.base, 16 + ~#features~0.offset, 4);call write~init~int(6, ~#features~0.base, 20 + ~#features~0.offset, 4);call write~init~int(7, ~#features~0.base, 24 + ~#features~0.offset, 4);call write~init~int(9, ~#features~0.base, 28 + ~#features~0.offset, 4);call write~init~int(10, ~#features~0.base, 32 + ~#features~0.offset, 4);~#virtio_blk~0.base, ~#virtio_blk~0.offset := 14, 0;call #Ultimate.allocInit(141, 14);call write~init~$Pointer$(8, 0, ~#virtio_blk~0.base, ~#virtio_blk~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtio_blk~0.base, 8 + ~#virtio_blk~0.offset, 8);call write~init~$Pointer$(~#__this_module~0.base, ~#__this_module~0.offset, ~#virtio_blk~0.base, 16 + ~#virtio_blk~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtio_blk~0.base, 24 + ~#virtio_blk~0.offset, 8);call write~init~int(0, ~#virtio_blk~0.base, 32 + ~#virtio_blk~0.offset, 1);call write~init~$Pointer$(0, 0, ~#virtio_blk~0.base, 33 + ~#virtio_blk~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtio_blk~0.base, 41 + ~#virtio_blk~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtio_blk~0.base, 49 + ~#virtio_blk~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtio_blk~0.base, 57 + ~#virtio_blk~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtio_blk~0.base, 65 + ~#virtio_blk~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtio_blk~0.base, 73 + ~#virtio_blk~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtio_blk~0.base, 81 + ~#virtio_blk~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtio_blk~0.base, 89 + ~#virtio_blk~0.offset, 8);call write~init~$Pointer$(~#id_table~0.base, ~#id_table~0.offset, ~#virtio_blk~0.base, 97 + ~#virtio_blk~0.offset, 8);call write~init~$Pointer$(~#features~0.base, ~#features~0.offset, ~#virtio_blk~0.base, 105 + ~#virtio_blk~0.offset, 8);call write~init~int(9, ~#virtio_blk~0.base, 113 + ~#virtio_blk~0.offset, 4);call write~init~$Pointer$(#funAddr~virtblk_probe.base, #funAddr~virtblk_probe.offset, ~#virtio_blk~0.base, 117 + ~#virtio_blk~0.offset, 8);call write~init~$Pointer$(#funAddr~virtblk_remove.base, #funAddr~virtblk_remove.offset, ~#virtio_blk~0.base, 125 + ~#virtio_blk~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtio_blk~0.base, 133 + ~#virtio_blk~0.offset, 8);~__mod_virtio_device_table~0.device := 0;~__mod_virtio_device_table~0.vendor := 0;~ldv_retval_0~0 := 0;~ldv_retval_1~0 := 0;~ldv_blk_rq~0 := 0; {40753#true} is VALID [2022-02-20 22:06:20,511 INFO L290 TraceCheckUtils]: 1: Hoare triple {40753#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret370#1.base, main_#t~ret370#1.offset, main_#t~ret371#1.base, main_#t~ret371#1.offset, main_#t~ret372#1.base, main_#t~ret372#1.offset, main_#t~nondet373#1, main_#t~nondet374#1, main_#t~switch375#1, main_#t~nondet376#1, main_#t~switch377#1, main_#t~ret378#1, main_#t~nondet379#1, main_#t~switch380#1, main_#t~ret381#1, main_#t~nondet382#1, main_#t~switch383#1, main_#t~mem384#1, main_#t~mem385#1, main_#t~ret386#1, main_#t~ret387#1, main_~#ldvarg1~0#1.base, main_~#ldvarg1~0#1.offset, main_~#ldvarg3~0#1.base, main_~#ldvarg3~0#1.offset, main_~ldvarg0~0#1.base, main_~ldvarg0~0#1.offset, main_~tmp~25#1.base, main_~tmp~25#1.offset, main_~ldvarg2~0#1, main_~tmp___0~12#1, main_~tmp___1~7#1, main_~tmp___2~4#1, main_~tmp___3~3#1;call main_~#ldvarg1~0#1.base, main_~#ldvarg1~0#1.offset := #Ultimate.allocOnStack(8);call main_~#ldvarg3~0#1.base, main_~#ldvarg3~0#1.offset := #Ultimate.allocOnStack(4);havoc main_~ldvarg0~0#1.base, main_~ldvarg0~0#1.offset;havoc main_~tmp~25#1.base, main_~tmp~25#1.offset;havoc main_~ldvarg2~0#1;havoc main_~tmp___0~12#1;havoc main_~tmp___1~7#1;havoc main_~tmp___2~4#1;havoc main_~tmp___3~3#1; {40753#true} is VALID [2022-02-20 22:06:20,511 INFO L272 TraceCheckUtils]: 2: Hoare triple {40753#true} call main_#t~ret370#1.base, main_#t~ret370#1.offset := ldv_init_zalloc(16); {40836#(and (= |old(#length)| |#length|) (= |#memory_int| |old(#memory_int)|) (= |old(#valid)| |#valid|))} is VALID [2022-02-20 22:06:20,512 INFO L290 TraceCheckUtils]: 3: Hoare triple {40836#(and (= |old(#length)| |#length|) (= |#memory_int| |old(#memory_int)|) (= |old(#valid)| |#valid|))} ~size := #in~size;havoc ~p~2.base, ~p~2.offset;havoc ~tmp~4.base, ~tmp~4.offset;call #t~malloc109.base, #t~malloc109.offset := #Ultimate.allocOnHeap(~size); {40753#true} is VALID [2022-02-20 22:06:20,512 INFO L272 TraceCheckUtils]: 4: Hoare triple {40753#true} call #Ultimate.meminit(#t~malloc109.base, #t~malloc109.offset, 1, ~size, ~size); {40844#(= |#memory_int| |old(#memory_int)|)} is VALID [2022-02-20 22:06:20,512 INFO L290 TraceCheckUtils]: 5: Hoare triple {40844#(= |#memory_int| |old(#memory_int)|)} #memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, #ptr.base); {40753#true} is VALID [2022-02-20 22:06:20,513 INFO L290 TraceCheckUtils]: 6: Hoare triple {40753#true} assume true; {40753#true} is VALID [2022-02-20 22:06:20,513 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {40753#true} {40753#true} #1074#return; {40753#true} is VALID [2022-02-20 22:06:20,513 INFO L290 TraceCheckUtils]: 8: Hoare triple {40753#true} ~tmp~4.base, ~tmp~4.offset := #t~malloc109.base, #t~malloc109.offset;~p~2.base, ~p~2.offset := ~tmp~4.base, ~tmp~4.offset; {40753#true} is VALID [2022-02-20 22:06:20,513 INFO L272 TraceCheckUtils]: 9: Hoare triple {40753#true} call assume_abort_if_not((if 0 != (~p~2.base + ~p~2.offset) % 18446744073709551616 then 1 else 0)); {40753#true} is VALID [2022-02-20 22:06:20,514 INFO L290 TraceCheckUtils]: 10: Hoare triple {40753#true} ~cond := #in~cond; {40753#true} is VALID [2022-02-20 22:06:20,514 INFO L290 TraceCheckUtils]: 11: Hoare triple {40753#true} assume !(0 == ~cond); {40753#true} is VALID [2022-02-20 22:06:20,514 INFO L290 TraceCheckUtils]: 12: Hoare triple {40753#true} assume true; {40753#true} is VALID [2022-02-20 22:06:20,514 INFO L284 TraceCheckUtils]: 13: Hoare quadruple {40753#true} {40753#true} #1076#return; {40753#true} is VALID [2022-02-20 22:06:20,514 INFO L290 TraceCheckUtils]: 14: Hoare triple {40753#true} #res.base, #res.offset := ~p~2.base, ~p~2.offset; {40753#true} is VALID [2022-02-20 22:06:20,514 INFO L290 TraceCheckUtils]: 15: Hoare triple {40753#true} assume true; {40753#true} is VALID [2022-02-20 22:06:20,514 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {40753#true} {40753#true} #1084#return; {40753#true} is VALID [2022-02-20 22:06:20,514 INFO L290 TraceCheckUtils]: 17: Hoare triple {40753#true} main_~tmp~25#1.base, main_~tmp~25#1.offset := main_#t~ret370#1.base, main_#t~ret370#1.offset;havoc main_#t~ret370#1.base, main_#t~ret370#1.offset;main_~ldvarg0~0#1.base, main_~ldvarg0~0#1.offset := main_~tmp~25#1.base, main_~tmp~25#1.offset;assume { :begin_inline_ldv_initialize } true; {40753#true} is VALID [2022-02-20 22:06:20,515 INFO L290 TraceCheckUtils]: 18: Hoare triple {40753#true} assume { :end_inline_ldv_initialize } true; {40753#true} is VALID [2022-02-20 22:06:20,515 INFO L272 TraceCheckUtils]: 19: Hoare triple {40753#true} call main_#t~ret371#1.base, main_#t~ret371#1.offset := ldv_memset(main_~#ldvarg1~0#1.base, main_~#ldvarg1~0#1.offset, 0, 8); {40845#(and (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2022-02-20 22:06:20,516 INFO L290 TraceCheckUtils]: 20: Hoare triple {40845#(and (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~s#1.base, ~s#1.offset := #in~s#1.base, #in~s#1.offset;~c#1 := #in~c#1;~n#1 := #in~n#1;havoc ~tmp~5#1.base, ~tmp~5#1.offset;assume { :begin_inline_#Ultimate.C_memset } true;#Ultimate.C_memset_#ptr#1.base, #Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#value#1, #Ultimate.C_memset_#amount#1 := ~s#1.base, ~s#1.offset, ~c#1, ~n#1;havoc #Ultimate.C_memset_#res#1.base, #Ultimate.C_memset_#res#1.offset;havoc #Ultimate.C_memset_#t~loopctr416#1;#Ultimate.C_memset_#t~loopctr416#1 := 0; {40753#true} is VALID [2022-02-20 22:06:20,516 INFO L290 TraceCheckUtils]: 21: Hoare triple {40753#true} assume !(#Ultimate.C_memset_#t~loopctr416#1 % 18446744073709551616 < #Ultimate.C_memset_#amount#1 % 18446744073709551616); {40753#true} is VALID [2022-02-20 22:06:20,516 INFO L290 TraceCheckUtils]: 22: Hoare triple {40753#true} assume #Ultimate.C_memset_#res#1.base == #Ultimate.C_memset_#ptr#1.base && #Ultimate.C_memset_#res#1.offset == #Ultimate.C_memset_#ptr#1.offset;#t~memset~res110#1.base, #t~memset~res110#1.offset := #Ultimate.C_memset_#res#1.base, #Ultimate.C_memset_#res#1.offset;assume { :end_inline_#Ultimate.C_memset } true;~tmp~5#1.base, ~tmp~5#1.offset := ~s#1.base, ~s#1.offset;havoc #t~memset~res110#1.base, #t~memset~res110#1.offset;#res#1.base, #res#1.offset := ~tmp~5#1.base, ~tmp~5#1.offset; {40753#true} is VALID [2022-02-20 22:06:20,516 INFO L290 TraceCheckUtils]: 23: Hoare triple {40753#true} assume true; {40753#true} is VALID [2022-02-20 22:06:20,516 INFO L284 TraceCheckUtils]: 24: Hoare quadruple {40753#true} {40753#true} #1086#return; {40753#true} is VALID [2022-02-20 22:06:20,516 INFO L290 TraceCheckUtils]: 25: Hoare triple {40753#true} havoc main_#t~ret371#1.base, main_#t~ret371#1.offset; {40753#true} is VALID [2022-02-20 22:06:20,517 INFO L272 TraceCheckUtils]: 26: Hoare triple {40753#true} call main_#t~ret372#1.base, main_#t~ret372#1.offset := ldv_memset(main_~#ldvarg3~0#1.base, main_~#ldvarg3~0#1.offset, 0, 4); {40845#(and (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2022-02-20 22:06:20,517 INFO L290 TraceCheckUtils]: 27: Hoare triple {40845#(and (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~s#1.base, ~s#1.offset := #in~s#1.base, #in~s#1.offset;~c#1 := #in~c#1;~n#1 := #in~n#1;havoc ~tmp~5#1.base, ~tmp~5#1.offset;assume { :begin_inline_#Ultimate.C_memset } true;#Ultimate.C_memset_#ptr#1.base, #Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#value#1, #Ultimate.C_memset_#amount#1 := ~s#1.base, ~s#1.offset, ~c#1, ~n#1;havoc #Ultimate.C_memset_#res#1.base, #Ultimate.C_memset_#res#1.offset;havoc #Ultimate.C_memset_#t~loopctr416#1;#Ultimate.C_memset_#t~loopctr416#1 := 0; {40753#true} is VALID [2022-02-20 22:06:20,517 INFO L290 TraceCheckUtils]: 28: Hoare triple {40753#true} assume !(#Ultimate.C_memset_#t~loopctr416#1 % 18446744073709551616 < #Ultimate.C_memset_#amount#1 % 18446744073709551616); {40753#true} is VALID [2022-02-20 22:06:20,517 INFO L290 TraceCheckUtils]: 29: Hoare triple {40753#true} assume #Ultimate.C_memset_#res#1.base == #Ultimate.C_memset_#ptr#1.base && #Ultimate.C_memset_#res#1.offset == #Ultimate.C_memset_#ptr#1.offset;#t~memset~res110#1.base, #t~memset~res110#1.offset := #Ultimate.C_memset_#res#1.base, #Ultimate.C_memset_#res#1.offset;assume { :end_inline_#Ultimate.C_memset } true;~tmp~5#1.base, ~tmp~5#1.offset := ~s#1.base, ~s#1.offset;havoc #t~memset~res110#1.base, #t~memset~res110#1.offset;#res#1.base, #res#1.offset := ~tmp~5#1.base, ~tmp~5#1.offset; {40753#true} is VALID [2022-02-20 22:06:20,517 INFO L290 TraceCheckUtils]: 30: Hoare triple {40753#true} assume true; {40753#true} is VALID [2022-02-20 22:06:20,518 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {40753#true} {40753#true} #1088#return; {40753#true} is VALID [2022-02-20 22:06:20,518 INFO L290 TraceCheckUtils]: 32: Hoare triple {40753#true} havoc main_#t~ret372#1.base, main_#t~ret372#1.offset;main_~ldvarg2~0#1 := main_#t~nondet373#1;havoc main_#t~nondet373#1;~ldv_state_variable_1~0 := 0;~ref_cnt~0 := 0;~ldv_state_variable_0~0 := 1;~ldv_state_variable_2~0 := 0; {40753#true} is VALID [2022-02-20 22:06:20,518 INFO L290 TraceCheckUtils]: 33: Hoare triple {40753#true} assume -2147483648 <= main_#t~nondet374#1 && main_#t~nondet374#1 <= 2147483647;main_~tmp___0~12#1 := main_#t~nondet374#1;havoc main_#t~nondet374#1;main_#t~switch375#1 := 0 == main_~tmp___0~12#1; {40753#true} is VALID [2022-02-20 22:06:20,518 INFO L290 TraceCheckUtils]: 34: Hoare triple {40753#true} assume !main_#t~switch375#1;main_#t~switch375#1 := main_#t~switch375#1 || 1 == main_~tmp___0~12#1; {40753#true} is VALID [2022-02-20 22:06:20,518 INFO L290 TraceCheckUtils]: 35: Hoare triple {40753#true} assume main_#t~switch375#1; {40753#true} is VALID [2022-02-20 22:06:20,518 INFO L290 TraceCheckUtils]: 36: Hoare triple {40753#true} assume 0 != ~ldv_state_variable_0~0;assume -2147483648 <= main_#t~nondet379#1 && main_#t~nondet379#1 <= 2147483647;main_~tmp___2~4#1 := main_#t~nondet379#1;havoc main_#t~nondet379#1;main_#t~switch380#1 := 0 == main_~tmp___2~4#1; {40753#true} is VALID [2022-02-20 22:06:20,518 INFO L290 TraceCheckUtils]: 37: Hoare triple {40753#true} assume !main_#t~switch380#1;main_#t~switch380#1 := main_#t~switch380#1 || 1 == main_~tmp___2~4#1; {40753#true} is VALID [2022-02-20 22:06:20,518 INFO L290 TraceCheckUtils]: 38: Hoare triple {40753#true} assume main_#t~switch380#1; {40753#true} is VALID [2022-02-20 22:06:20,519 INFO L290 TraceCheckUtils]: 39: Hoare triple {40753#true} assume 1 == ~ldv_state_variable_0~0;assume { :begin_inline_init } true;havoc init_#res#1;havoc init_#t~ret366#1, init_#t~ret367#1, init_~tmp~22#1;havoc init_~tmp~22#1;assume { :begin_inline_register_blkdev } true;register_blkdev_#in~arg0#1, register_blkdev_#in~arg1#1.base, register_blkdev_#in~arg1#1.offset := 0, 9, 0;havoc register_blkdev_#res#1;havoc register_blkdev_#t~nondet409#1, register_blkdev_~arg0#1, register_blkdev_~arg1#1.base, register_blkdev_~arg1#1.offset;register_blkdev_~arg0#1 := register_blkdev_#in~arg0#1;register_blkdev_~arg1#1.base, register_blkdev_~arg1#1.offset := register_blkdev_#in~arg1#1.base, register_blkdev_#in~arg1#1.offset;assume -2147483648 <= register_blkdev_#t~nondet409#1 && register_blkdev_#t~nondet409#1 <= 2147483647;register_blkdev_#res#1 := register_blkdev_#t~nondet409#1;havoc register_blkdev_#t~nondet409#1; {40753#true} is VALID [2022-02-20 22:06:20,519 INFO L290 TraceCheckUtils]: 40: Hoare triple {40753#true} init_#t~ret366#1 := register_blkdev_#res#1;assume { :end_inline_register_blkdev } true;assume -2147483648 <= init_#t~ret366#1 && init_#t~ret366#1 <= 2147483647;~major~0 := init_#t~ret366#1;havoc init_#t~ret366#1; {40753#true} is VALID [2022-02-20 22:06:20,519 INFO L290 TraceCheckUtils]: 41: Hoare triple {40753#true} assume ~major~0 < 0;init_#res#1 := ~major~0; {40779#(<= (+ |ULTIMATE.start_init_#res#1| 1) 0)} is VALID [2022-02-20 22:06:20,520 INFO L290 TraceCheckUtils]: 42: Hoare triple {40779#(<= (+ |ULTIMATE.start_init_#res#1| 1) 0)} main_#t~ret381#1 := init_#res#1;assume { :end_inline_init } true;assume -2147483648 <= main_#t~ret381#1 && main_#t~ret381#1 <= 2147483647;~ldv_retval_1~0 := main_#t~ret381#1;havoc main_#t~ret381#1; {40780#(<= (+ ~ldv_retval_1~0 1) 0)} is VALID [2022-02-20 22:06:20,520 INFO L290 TraceCheckUtils]: 43: Hoare triple {40780#(<= (+ ~ldv_retval_1~0 1) 0)} assume 0 == ~ldv_retval_1~0;~ldv_state_variable_0~0 := 3;~ldv_state_variable_2~0 := 1;assume { :begin_inline_ldv_initialize_block_device_operations_2 } true;havoc ldv_initialize_block_device_operations_2_#t~ret369#1.base, ldv_initialize_block_device_operations_2_#t~ret369#1.offset, ldv_initialize_block_device_operations_2_~tmp~24#1.base, ldv_initialize_block_device_operations_2_~tmp~24#1.offset;havoc ldv_initialize_block_device_operations_2_~tmp~24#1.base, ldv_initialize_block_device_operations_2_~tmp~24#1.offset; {40754#false} is VALID [2022-02-20 22:06:20,520 INFO L272 TraceCheckUtils]: 44: Hoare triple {40754#false} call ldv_initialize_block_device_operations_2_#t~ret369#1.base, ldv_initialize_block_device_operations_2_#t~ret369#1.offset := ldv_init_zalloc(464); {40836#(and (= |old(#length)| |#length|) (= |#memory_int| |old(#memory_int)|) (= |old(#valid)| |#valid|))} is VALID [2022-02-20 22:06:20,520 INFO L290 TraceCheckUtils]: 45: Hoare triple {40836#(and (= |old(#length)| |#length|) (= |#memory_int| |old(#memory_int)|) (= |old(#valid)| |#valid|))} ~size := #in~size;havoc ~p~2.base, ~p~2.offset;havoc ~tmp~4.base, ~tmp~4.offset;call #t~malloc109.base, #t~malloc109.offset := #Ultimate.allocOnHeap(~size); {40753#true} is VALID [2022-02-20 22:06:20,521 INFO L272 TraceCheckUtils]: 46: Hoare triple {40753#true} call #Ultimate.meminit(#t~malloc109.base, #t~malloc109.offset, 1, ~size, ~size); {40844#(= |#memory_int| |old(#memory_int)|)} is VALID [2022-02-20 22:06:20,521 INFO L290 TraceCheckUtils]: 47: Hoare triple {40844#(= |#memory_int| |old(#memory_int)|)} #memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, #ptr.base); {40753#true} is VALID [2022-02-20 22:06:20,521 INFO L290 TraceCheckUtils]: 48: Hoare triple {40753#true} assume true; {40753#true} is VALID [2022-02-20 22:06:20,522 INFO L284 TraceCheckUtils]: 49: Hoare quadruple {40753#true} {40753#true} #1074#return; {40753#true} is VALID [2022-02-20 22:06:20,522 INFO L290 TraceCheckUtils]: 50: Hoare triple {40753#true} ~tmp~4.base, ~tmp~4.offset := #t~malloc109.base, #t~malloc109.offset;~p~2.base, ~p~2.offset := ~tmp~4.base, ~tmp~4.offset; {40753#true} is VALID [2022-02-20 22:06:20,522 INFO L272 TraceCheckUtils]: 51: Hoare triple {40753#true} call assume_abort_if_not((if 0 != (~p~2.base + ~p~2.offset) % 18446744073709551616 then 1 else 0)); {40753#true} is VALID [2022-02-20 22:06:20,522 INFO L290 TraceCheckUtils]: 52: Hoare triple {40753#true} ~cond := #in~cond; {40753#true} is VALID [2022-02-20 22:06:20,522 INFO L290 TraceCheckUtils]: 53: Hoare triple {40753#true} assume !(0 == ~cond); {40753#true} is VALID [2022-02-20 22:06:20,522 INFO L290 TraceCheckUtils]: 54: Hoare triple {40753#true} assume true; {40753#true} is VALID [2022-02-20 22:06:20,522 INFO L284 TraceCheckUtils]: 55: Hoare quadruple {40753#true} {40753#true} #1076#return; {40753#true} is VALID [2022-02-20 22:06:20,522 INFO L290 TraceCheckUtils]: 56: Hoare triple {40753#true} #res.base, #res.offset := ~p~2.base, ~p~2.offset; {40753#true} is VALID [2022-02-20 22:06:20,523 INFO L290 TraceCheckUtils]: 57: Hoare triple {40753#true} assume true; {40753#true} is VALID [2022-02-20 22:06:20,523 INFO L284 TraceCheckUtils]: 58: Hoare quadruple {40753#true} {40754#false} #1150#return; {40754#false} is VALID [2022-02-20 22:06:20,523 INFO L290 TraceCheckUtils]: 59: Hoare triple {40754#false} ldv_initialize_block_device_operations_2_~tmp~24#1.base, ldv_initialize_block_device_operations_2_~tmp~24#1.offset := ldv_initialize_block_device_operations_2_#t~ret369#1.base, ldv_initialize_block_device_operations_2_#t~ret369#1.offset;havoc ldv_initialize_block_device_operations_2_#t~ret369#1.base, ldv_initialize_block_device_operations_2_#t~ret369#1.offset;~virtblk_fops_group0~0.base, ~virtblk_fops_group0~0.offset := ldv_initialize_block_device_operations_2_~tmp~24#1.base, ldv_initialize_block_device_operations_2_~tmp~24#1.offset; {40754#false} is VALID [2022-02-20 22:06:20,523 INFO L290 TraceCheckUtils]: 60: Hoare triple {40754#false} assume { :end_inline_ldv_initialize_block_device_operations_2 } true;~ldv_state_variable_1~0 := 1;assume { :begin_inline_ldv_initialize_virtio_driver_1 } true;havoc ldv_initialize_virtio_driver_1_#t~ret368#1.base, ldv_initialize_virtio_driver_1_#t~ret368#1.offset, ldv_initialize_virtio_driver_1_~tmp~23#1.base, ldv_initialize_virtio_driver_1_~tmp~23#1.offset;havoc ldv_initialize_virtio_driver_1_~tmp~23#1.base, ldv_initialize_virtio_driver_1_~tmp~23#1.offset; {40754#false} is VALID [2022-02-20 22:06:20,523 INFO L272 TraceCheckUtils]: 61: Hoare triple {40754#false} call ldv_initialize_virtio_driver_1_#t~ret368#1.base, ldv_initialize_virtio_driver_1_#t~ret368#1.offset := ldv_init_zalloc(1048); {40836#(and (= |old(#length)| |#length|) (= |#memory_int| |old(#memory_int)|) (= |old(#valid)| |#valid|))} is VALID [2022-02-20 22:06:20,523 INFO L290 TraceCheckUtils]: 62: Hoare triple {40836#(and (= |old(#length)| |#length|) (= |#memory_int| |old(#memory_int)|) (= |old(#valid)| |#valid|))} ~size := #in~size;havoc ~p~2.base, ~p~2.offset;havoc ~tmp~4.base, ~tmp~4.offset;call #t~malloc109.base, #t~malloc109.offset := #Ultimate.allocOnHeap(~size); {40753#true} is VALID [2022-02-20 22:06:20,524 INFO L272 TraceCheckUtils]: 63: Hoare triple {40753#true} call #Ultimate.meminit(#t~malloc109.base, #t~malloc109.offset, 1, ~size, ~size); {40844#(= |#memory_int| |old(#memory_int)|)} is VALID [2022-02-20 22:06:20,524 INFO L290 TraceCheckUtils]: 64: Hoare triple {40844#(= |#memory_int| |old(#memory_int)|)} #memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, #ptr.base); {40753#true} is VALID [2022-02-20 22:06:20,524 INFO L290 TraceCheckUtils]: 65: Hoare triple {40753#true} assume true; {40753#true} is VALID [2022-02-20 22:06:20,524 INFO L284 TraceCheckUtils]: 66: Hoare quadruple {40753#true} {40753#true} #1074#return; {40753#true} is VALID [2022-02-20 22:06:20,525 INFO L290 TraceCheckUtils]: 67: Hoare triple {40753#true} ~tmp~4.base, ~tmp~4.offset := #t~malloc109.base, #t~malloc109.offset;~p~2.base, ~p~2.offset := ~tmp~4.base, ~tmp~4.offset; {40753#true} is VALID [2022-02-20 22:06:20,525 INFO L272 TraceCheckUtils]: 68: Hoare triple {40753#true} call assume_abort_if_not((if 0 != (~p~2.base + ~p~2.offset) % 18446744073709551616 then 1 else 0)); {40753#true} is VALID [2022-02-20 22:06:20,525 INFO L290 TraceCheckUtils]: 69: Hoare triple {40753#true} ~cond := #in~cond; {40753#true} is VALID [2022-02-20 22:06:20,525 INFO L290 TraceCheckUtils]: 70: Hoare triple {40753#true} assume !(0 == ~cond); {40753#true} is VALID [2022-02-20 22:06:20,525 INFO L290 TraceCheckUtils]: 71: Hoare triple {40753#true} assume true; {40753#true} is VALID [2022-02-20 22:06:20,525 INFO L284 TraceCheckUtils]: 72: Hoare quadruple {40753#true} {40753#true} #1076#return; {40753#true} is VALID [2022-02-20 22:06:20,525 INFO L290 TraceCheckUtils]: 73: Hoare triple {40753#true} #res.base, #res.offset := ~p~2.base, ~p~2.offset; {40753#true} is VALID [2022-02-20 22:06:20,525 INFO L290 TraceCheckUtils]: 74: Hoare triple {40753#true} assume true; {40753#true} is VALID [2022-02-20 22:06:20,525 INFO L284 TraceCheckUtils]: 75: Hoare quadruple {40753#true} {40754#false} #1152#return; {40754#false} is VALID [2022-02-20 22:06:20,526 INFO L290 TraceCheckUtils]: 76: Hoare triple {40754#false} ldv_initialize_virtio_driver_1_~tmp~23#1.base, ldv_initialize_virtio_driver_1_~tmp~23#1.offset := ldv_initialize_virtio_driver_1_#t~ret368#1.base, ldv_initialize_virtio_driver_1_#t~ret368#1.offset;havoc ldv_initialize_virtio_driver_1_#t~ret368#1.base, ldv_initialize_virtio_driver_1_#t~ret368#1.offset;~virtio_blk_group0~0.base, ~virtio_blk_group0~0.offset := ldv_initialize_virtio_driver_1_~tmp~23#1.base, ldv_initialize_virtio_driver_1_~tmp~23#1.offset; {40754#false} is VALID [2022-02-20 22:06:20,526 INFO L290 TraceCheckUtils]: 77: Hoare triple {40754#false} assume { :end_inline_ldv_initialize_virtio_driver_1 } true; {40754#false} is VALID [2022-02-20 22:06:20,526 INFO L290 TraceCheckUtils]: 78: Hoare triple {40754#false} assume !(0 != ~ldv_retval_1~0); {40754#false} is VALID [2022-02-20 22:06:20,526 INFO L290 TraceCheckUtils]: 79: Hoare triple {40754#false} assume -2147483648 <= main_#t~nondet374#1 && main_#t~nondet374#1 <= 2147483647;main_~tmp___0~12#1 := main_#t~nondet374#1;havoc main_#t~nondet374#1;main_#t~switch375#1 := 0 == main_~tmp___0~12#1; {40754#false} is VALID [2022-02-20 22:06:20,526 INFO L290 TraceCheckUtils]: 80: Hoare triple {40754#false} assume !main_#t~switch375#1;main_#t~switch375#1 := main_#t~switch375#1 || 1 == main_~tmp___0~12#1; {40754#false} is VALID [2022-02-20 22:06:20,526 INFO L290 TraceCheckUtils]: 81: Hoare triple {40754#false} assume !main_#t~switch375#1;main_#t~switch375#1 := main_#t~switch375#1 || 2 == main_~tmp___0~12#1; {40754#false} is VALID [2022-02-20 22:06:20,526 INFO L290 TraceCheckUtils]: 82: Hoare triple {40754#false} assume main_#t~switch375#1; {40754#false} is VALID [2022-02-20 22:06:20,527 INFO L290 TraceCheckUtils]: 83: Hoare triple {40754#false} assume 0 != ~ldv_state_variable_2~0;assume -2147483648 <= main_#t~nondet382#1 && main_#t~nondet382#1 <= 2147483647;main_~tmp___3~3#1 := main_#t~nondet382#1;havoc main_#t~nondet382#1;main_#t~switch383#1 := 0 == main_~tmp___3~3#1; {40754#false} is VALID [2022-02-20 22:06:20,527 INFO L290 TraceCheckUtils]: 84: Hoare triple {40754#false} assume main_#t~switch383#1; {40754#false} is VALID [2022-02-20 22:06:20,527 INFO L290 TraceCheckUtils]: 85: Hoare triple {40754#false} assume 1 == ~ldv_state_variable_2~0;call main_#t~mem384#1 := read~int(main_~#ldvarg3~0#1.base, main_~#ldvarg3~0#1.offset, 4);call main_#t~mem385#1 := read~int(main_~#ldvarg1~0#1.base, main_~#ldvarg1~0#1.offset, 8);assume { :begin_inline_virtblk_ioctl } true;virtblk_ioctl_#in~bdev#1.base, virtblk_ioctl_#in~bdev#1.offset, virtblk_ioctl_#in~mode#1, virtblk_ioctl_#in~cmd#1, virtblk_ioctl_#in~data#1 := ~virtblk_fops_group0~0.base, ~virtblk_fops_group0~0.offset, main_#t~mem384#1, main_~ldvarg2~0#1, main_#t~mem385#1;havoc virtblk_ioctl_#res#1;havoc virtblk_ioctl_#t~mem248#1.base, virtblk_ioctl_#t~mem248#1.offset, virtblk_ioctl_#t~mem249#1.base, virtblk_ioctl_#t~mem249#1.offset, virtblk_ioctl_#t~ret250#1, virtblk_ioctl_#t~ret251#1, virtblk_ioctl_#t~mem252#1.base, virtblk_ioctl_#t~mem252#1.offset, virtblk_ioctl_#t~ret253#1, virtblk_ioctl_#t~mem254#1.base, virtblk_ioctl_#t~mem254#1.offset, virtblk_ioctl_#t~ret255#1, virtblk_ioctl_~bdev#1.base, virtblk_ioctl_~bdev#1.offset, virtblk_ioctl_~mode#1, virtblk_ioctl_~cmd#1, virtblk_ioctl_~data#1, virtblk_ioctl_~disk~0#1.base, virtblk_ioctl_~disk~0#1.offset, virtblk_ioctl_~vblk~3#1.base, virtblk_ioctl_~vblk~3#1.offset, virtblk_ioctl_~usr_data~0#1.base, virtblk_ioctl_~usr_data~0#1.offset, virtblk_ioctl_~#id_str~0#1.base, virtblk_ioctl_~#id_str~0#1.offset, virtblk_ioctl_~err~1#1, virtblk_ioctl_~tmp~18#1, virtblk_ioctl_~tmp___0~9#1, virtblk_ioctl_~tmp___1~5#1, virtblk_ioctl_~tmp___2~2#1;virtblk_ioctl_~bdev#1.base, virtblk_ioctl_~bdev#1.offset := virtblk_ioctl_#in~bdev#1.base, virtblk_ioctl_#in~bdev#1.offset;virtblk_ioctl_~mode#1 := virtblk_ioctl_#in~mode#1;virtblk_ioctl_~cmd#1 := virtblk_ioctl_#in~cmd#1;virtblk_ioctl_~data#1 := virtblk_ioctl_#in~data#1;havoc virtblk_ioctl_~disk~0#1.base, virtblk_ioctl_~disk~0#1.offset;havoc virtblk_ioctl_~vblk~3#1.base, virtblk_ioctl_~vblk~3#1.offset;havoc virtblk_ioctl_~usr_data~0#1.base, virtblk_ioctl_~usr_data~0#1.offset;call virtblk_ioctl_~#id_str~0#1.base, virtblk_ioctl_~#id_str~0#1.offset := #Ultimate.allocOnStack(20);havoc virtblk_ioctl_~err~1#1;havoc virtblk_ioctl_~tmp~18#1;havoc virtblk_ioctl_~tmp___0~9#1;havoc virtblk_ioctl_~tmp___1~5#1;havoc virtblk_ioctl_~tmp___2~2#1;call virtblk_ioctl_#t~mem248#1.base, virtblk_ioctl_#t~mem248#1.offset := read~$Pointer$(virtblk_ioctl_~bdev#1.base, 240 + virtblk_ioctl_~bdev#1.offset, 8);virtblk_ioctl_~disk~0#1.base, virtblk_ioctl_~disk~0#1.offset := virtblk_ioctl_#t~mem248#1.base, virtblk_ioctl_#t~mem248#1.offset;havoc virtblk_ioctl_#t~mem248#1.base, virtblk_ioctl_#t~mem248#1.offset;call virtblk_ioctl_#t~mem249#1.base, virtblk_ioctl_#t~mem249#1.offset := read~$Pointer$(virtblk_ioctl_~disk~0#1.base, 1075 + virtblk_ioctl_~disk~0#1.offset, 8);virtblk_ioctl_~vblk~3#1.base, virtblk_ioctl_~vblk~3#1.offset := virtblk_ioctl_#t~mem249#1.base, virtblk_ioctl_#t~mem249#1.offset;havoc virtblk_ioctl_#t~mem249#1.base, virtblk_ioctl_#t~mem249#1.offset; {40754#false} is VALID [2022-02-20 22:06:20,527 INFO L290 TraceCheckUtils]: 86: Hoare triple {40754#false} assume 1447184708 == virtblk_ioctl_~cmd#1 % 4294967296;virtblk_ioctl_~usr_data~0#1.base, virtblk_ioctl_~usr_data~0#1.offset := 0, (if virtblk_ioctl_~data#1 % 18446744073709551616 % 18446744073709551616 <= 9223372036854775807 then virtblk_ioctl_~data#1 % 18446744073709551616 % 18446744073709551616 else virtblk_ioctl_~data#1 % 18446744073709551616 % 18446744073709551616 - 18446744073709551616);assume { :begin_inline_virtblk_get_id } true;virtblk_get_id_#in~disk#1.base, virtblk_get_id_#in~disk#1.offset, virtblk_get_id_#in~id_str#1.base, virtblk_get_id_#in~id_str#1.offset := virtblk_ioctl_~disk~0#1.base, virtblk_ioctl_~disk~0#1.offset, virtblk_ioctl_~#id_str~0#1.base, virtblk_ioctl_~#id_str~0#1.offset;havoc virtblk_get_id_#res#1;havoc virtblk_get_id_#t~mem233#1.base, virtblk_get_id_#t~mem233#1.offset, virtblk_get_id_#t~mem234#1.base, virtblk_get_id_#t~mem234#1.offset, virtblk_get_id_#t~mem235#1.base, virtblk_get_id_#t~mem235#1.offset, virtblk_get_id_#t~ret236#1.base, virtblk_get_id_#t~ret236#1.offset, virtblk_get_id_#t~ret237#1, virtblk_get_id_#t~ret238#1, virtblk_get_id_#t~mem239#1.base, virtblk_get_id_#t~mem239#1.offset, virtblk_get_id_#t~mem240#1.base, virtblk_get_id_#t~mem240#1.offset, virtblk_get_id_#t~ret241#1.base, virtblk_get_id_#t~ret241#1.offset, virtblk_get_id_#t~ret242#1, virtblk_get_id_#t~ret243#1, virtblk_get_id_#t~mem244#1.base, virtblk_get_id_#t~mem244#1.offset, virtblk_get_id_#t~mem245#1.base, virtblk_get_id_#t~mem245#1.offset, virtblk_get_id_#t~mem246#1.base, virtblk_get_id_#t~mem246#1.offset, virtblk_get_id_#t~ret247#1, virtblk_get_id_~disk#1.base, virtblk_get_id_~disk#1.offset, virtblk_get_id_~id_str#1.base, virtblk_get_id_~id_str#1.offset, virtblk_get_id_~vblk~2#1.base, virtblk_get_id_~vblk~2#1.offset, virtblk_get_id_~req~1#1.base, virtblk_get_id_~req~1#1.offset, virtblk_get_id_~bio~0#1.base, virtblk_get_id_~bio~0#1.offset, virtblk_get_id_~tmp~17#1, virtblk_get_id_~tmp___0~8#1, virtblk_get_id_~tmp___1~4#1, virtblk_get_id_~tmp___2~1#1, virtblk_get_id_~tmp___3~1#1;virtblk_get_id_~disk#1.base, virtblk_get_id_~disk#1.offset := virtblk_get_id_#in~disk#1.base, virtblk_get_id_#in~disk#1.offset;virtblk_get_id_~id_str#1.base, virtblk_get_id_~id_str#1.offset := virtblk_get_id_#in~id_str#1.base, virtblk_get_id_#in~id_str#1.offset;havoc virtblk_get_id_~vblk~2#1.base, virtblk_get_id_~vblk~2#1.offset;havoc virtblk_get_id_~req~1#1.base, virtblk_get_id_~req~1#1.offset;havoc virtblk_get_id_~bio~0#1.base, virtblk_get_id_~bio~0#1.offset;havoc virtblk_get_id_~tmp~17#1;havoc virtblk_get_id_~tmp___0~8#1;havoc virtblk_get_id_~tmp___1~4#1;havoc virtblk_get_id_~tmp___2~1#1;havoc virtblk_get_id_~tmp___3~1#1;call virtblk_get_id_#t~mem233#1.base, virtblk_get_id_#t~mem233#1.offset := read~$Pointer$(virtblk_get_id_~disk#1.base, 1075 + virtblk_get_id_~disk#1.offset, 8);virtblk_get_id_~vblk~2#1.base, virtblk_get_id_~vblk~2#1.offset := virtblk_get_id_#t~mem233#1.base, virtblk_get_id_#t~mem233#1.offset;havoc virtblk_get_id_#t~mem233#1.base, virtblk_get_id_#t~mem233#1.offset;call virtblk_get_id_#t~mem234#1.base, virtblk_get_id_#t~mem234#1.offset := read~$Pointer$(virtblk_get_id_~vblk~2#1.base, 72 + virtblk_get_id_~vblk~2#1.offset, 8);call virtblk_get_id_#t~mem235#1.base, virtblk_get_id_#t~mem235#1.offset := read~$Pointer$(virtblk_get_id_#t~mem234#1.base, 1067 + virtblk_get_id_#t~mem234#1.offset, 8);assume { :begin_inline_bio_map_kern } true;bio_map_kern_#in~arg0#1.base, bio_map_kern_#in~arg0#1.offset, bio_map_kern_#in~arg1#1.base, bio_map_kern_#in~arg1#1.offset, bio_map_kern_#in~arg2#1, bio_map_kern_#in~arg3#1 := virtblk_get_id_#t~mem235#1.base, virtblk_get_id_#t~mem235#1.offset, virtblk_get_id_~id_str#1.base, virtblk_get_id_~id_str#1.offset, 20, 208;havoc bio_map_kern_#res#1.base, bio_map_kern_#res#1.offset;havoc bio_map_kern_#t~ret401#1.base, bio_map_kern_#t~ret401#1.offset, bio_map_kern_~arg0#1.base, bio_map_kern_~arg0#1.offset, bio_map_kern_~arg1#1.base, bio_map_kern_~arg1#1.offset, bio_map_kern_~arg2#1, bio_map_kern_~arg3#1;bio_map_kern_~arg0#1.base, bio_map_kern_~arg0#1.offset := bio_map_kern_#in~arg0#1.base, bio_map_kern_#in~arg0#1.offset;bio_map_kern_~arg1#1.base, bio_map_kern_~arg1#1.offset := bio_map_kern_#in~arg1#1.base, bio_map_kern_#in~arg1#1.offset;bio_map_kern_~arg2#1 := bio_map_kern_#in~arg2#1;bio_map_kern_~arg3#1 := bio_map_kern_#in~arg3#1; {40754#false} is VALID [2022-02-20 22:06:20,527 INFO L272 TraceCheckUtils]: 87: Hoare triple {40754#false} call bio_map_kern_#t~ret401#1.base, bio_map_kern_#t~ret401#1.offset := ldv_malloc(112); {40860#(and (= |old(#length)| |#length|) (= |old(#valid)| |#valid|))} is VALID [2022-02-20 22:06:20,527 INFO L290 TraceCheckUtils]: 88: Hoare triple {40860#(and (= |old(#length)| |#length|) (= |old(#valid)| |#valid|))} ~size := #in~size;havoc ~p~0.base, ~p~0.offset;havoc ~tmp~2.base, ~tmp~2.offset;havoc ~tmp___0~0;assume -2147483648 <= #t~nondet103 && #t~nondet103 <= 2147483647;~tmp___0~0 := #t~nondet103;havoc #t~nondet103; {40753#true} is VALID [2022-02-20 22:06:20,527 INFO L290 TraceCheckUtils]: 89: Hoare triple {40753#true} assume 0 != ~tmp___0~0;#res.base, #res.offset := 0, 0; {40753#true} is VALID [2022-02-20 22:06:20,527 INFO L290 TraceCheckUtils]: 90: Hoare triple {40753#true} assume true; {40753#true} is VALID [2022-02-20 22:06:20,528 INFO L284 TraceCheckUtils]: 91: Hoare quadruple {40753#true} {40754#false} #1156#return; {40754#false} is VALID [2022-02-20 22:06:20,528 INFO L290 TraceCheckUtils]: 92: Hoare triple {40754#false} bio_map_kern_#res#1.base, bio_map_kern_#res#1.offset := bio_map_kern_#t~ret401#1.base, bio_map_kern_#t~ret401#1.offset;havoc bio_map_kern_#t~ret401#1.base, bio_map_kern_#t~ret401#1.offset; {40754#false} is VALID [2022-02-20 22:06:20,528 INFO L290 TraceCheckUtils]: 93: Hoare triple {40754#false} virtblk_get_id_#t~ret236#1.base, virtblk_get_id_#t~ret236#1.offset := bio_map_kern_#res#1.base, bio_map_kern_#res#1.offset;assume { :end_inline_bio_map_kern } true;virtblk_get_id_~bio~0#1.base, virtblk_get_id_~bio~0#1.offset := virtblk_get_id_#t~ret236#1.base, virtblk_get_id_#t~ret236#1.offset;havoc virtblk_get_id_#t~mem234#1.base, virtblk_get_id_#t~mem234#1.offset;havoc virtblk_get_id_#t~mem235#1.base, virtblk_get_id_#t~mem235#1.offset;havoc virtblk_get_id_#t~ret236#1.base, virtblk_get_id_#t~ret236#1.offset; {40754#false} is VALID [2022-02-20 22:06:20,528 INFO L272 TraceCheckUtils]: 94: Hoare triple {40754#false} call virtblk_get_id_#t~ret237#1 := IS_ERR(virtblk_get_id_~bio~0#1.base, virtblk_get_id_~bio~0#1.offset); {40753#true} is VALID [2022-02-20 22:06:20,528 INFO L290 TraceCheckUtils]: 95: Hoare triple {40753#true} ~ptr.base, ~ptr.offset := #in~ptr.base, #in~ptr.offset;havoc ~tmp~28; {40753#true} is VALID [2022-02-20 22:06:20,528 INFO L272 TraceCheckUtils]: 96: Hoare triple {40753#true} call #t~ret390 := ldv_is_err(~ptr.base, ~ptr.offset); {40753#true} is VALID [2022-02-20 22:06:20,528 INFO L290 TraceCheckUtils]: 97: Hoare triple {40753#true} ~ptr.base, ~ptr.offset := #in~ptr.base, #in~ptr.offset;#res := (if 0 == (if (~ptr.base + ~ptr.offset) % 18446744073709551616 > 2012 then 1 else 0) then 0 else 1); {40753#true} is VALID [2022-02-20 22:06:20,528 INFO L290 TraceCheckUtils]: 98: Hoare triple {40753#true} assume true; {40753#true} is VALID [2022-02-20 22:06:20,529 INFO L284 TraceCheckUtils]: 99: Hoare quadruple {40753#true} {40753#true} #1184#return; {40753#true} is VALID [2022-02-20 22:06:20,530 INFO L290 TraceCheckUtils]: 100: Hoare triple {40753#true} ~tmp~28 := #t~ret390;havoc #t~ret390;#res := ~tmp~28 % 256; {40753#true} is VALID [2022-02-20 22:06:20,530 INFO L290 TraceCheckUtils]: 101: Hoare triple {40753#true} assume true; {40753#true} is VALID [2022-02-20 22:06:20,530 INFO L284 TraceCheckUtils]: 102: Hoare quadruple {40753#true} {40754#false} #1158#return; {40754#false} is VALID [2022-02-20 22:06:20,530 INFO L290 TraceCheckUtils]: 103: Hoare triple {40754#false} assume -9223372036854775808 <= virtblk_get_id_#t~ret237#1 && virtblk_get_id_#t~ret237#1 <= 9223372036854775807;virtblk_get_id_~tmp___0~8#1 := virtblk_get_id_#t~ret237#1;havoc virtblk_get_id_#t~ret237#1; {40754#false} is VALID [2022-02-20 22:06:20,530 INFO L290 TraceCheckUtils]: 104: Hoare triple {40754#false} assume !(0 != virtblk_get_id_~tmp___0~8#1);call virtblk_get_id_#t~mem239#1.base, virtblk_get_id_#t~mem239#1.offset := read~$Pointer$(virtblk_get_id_~vblk~2#1.base, 72 + virtblk_get_id_~vblk~2#1.offset, 8);call virtblk_get_id_#t~mem240#1.base, virtblk_get_id_#t~mem240#1.offset := read~$Pointer$(virtblk_get_id_#t~mem239#1.base, 1067 + virtblk_get_id_#t~mem239#1.offset, 8);assume { :begin_inline_ldv_blk_make_request_5 } true;ldv_blk_make_request_5_#in~ldv_func_arg1#1.base, ldv_blk_make_request_5_#in~ldv_func_arg1#1.offset, ldv_blk_make_request_5_#in~ldv_func_arg2#1.base, ldv_blk_make_request_5_#in~ldv_func_arg2#1.offset, ldv_blk_make_request_5_#in~ldv_func_arg3#1 := virtblk_get_id_#t~mem240#1.base, virtblk_get_id_#t~mem240#1.offset, virtblk_get_id_~bio~0#1.base, virtblk_get_id_~bio~0#1.offset, 208;havoc ldv_blk_make_request_5_#res#1.base, ldv_blk_make_request_5_#res#1.offset;havoc ldv_blk_make_request_5_#t~ret391#1.base, ldv_blk_make_request_5_#t~ret391#1.offset, ldv_blk_make_request_5_~ldv_func_arg1#1.base, ldv_blk_make_request_5_~ldv_func_arg1#1.offset, ldv_blk_make_request_5_~ldv_func_arg2#1.base, ldv_blk_make_request_5_~ldv_func_arg2#1.offset, ldv_blk_make_request_5_~ldv_func_arg3#1, ldv_blk_make_request_5_~tmp~29#1.base, ldv_blk_make_request_5_~tmp~29#1.offset;ldv_blk_make_request_5_~ldv_func_arg1#1.base, ldv_blk_make_request_5_~ldv_func_arg1#1.offset := ldv_blk_make_request_5_#in~ldv_func_arg1#1.base, ldv_blk_make_request_5_#in~ldv_func_arg1#1.offset;ldv_blk_make_request_5_~ldv_func_arg2#1.base, ldv_blk_make_request_5_~ldv_func_arg2#1.offset := ldv_blk_make_request_5_#in~ldv_func_arg2#1.base, ldv_blk_make_request_5_#in~ldv_func_arg2#1.offset;ldv_blk_make_request_5_~ldv_func_arg3#1 := ldv_blk_make_request_5_#in~ldv_func_arg3#1;havoc ldv_blk_make_request_5_~tmp~29#1.base, ldv_blk_make_request_5_~tmp~29#1.offset;assume { :begin_inline_ldv_blk_make_request } true;ldv_blk_make_request_#in~mask#1 := ldv_blk_make_request_5_~ldv_func_arg3#1;havoc ldv_blk_make_request_#res#1.base, ldv_blk_make_request_#res#1.offset;havoc ldv_blk_make_request_#t~ret395#1.base, ldv_blk_make_request_#t~ret395#1.offset, ldv_blk_make_request_#t~ret396#1, ldv_blk_make_request_~mask#1, ldv_blk_make_request_~res~1#1.base, ldv_blk_make_request_~res~1#1.offset, ldv_blk_make_request_~tmp___0~14#1;ldv_blk_make_request_~mask#1 := ldv_blk_make_request_#in~mask#1;havoc ldv_blk_make_request_~res~1#1.base, ldv_blk_make_request_~res~1#1.offset;havoc ldv_blk_make_request_~tmp___0~14#1; {40754#false} is VALID [2022-02-20 22:06:20,530 INFO L290 TraceCheckUtils]: 105: Hoare triple {40754#false} assume !(0 != ~ldv_blk_rq~0); {40754#false} is VALID [2022-02-20 22:06:20,530 INFO L272 TraceCheckUtils]: 106: Hoare triple {40754#false} call ldv_blk_make_request_#t~ret395#1.base, ldv_blk_make_request_#t~ret395#1.offset := ldv_malloc(322); {40860#(and (= |old(#length)| |#length|) (= |old(#valid)| |#valid|))} is VALID [2022-02-20 22:06:20,531 INFO L290 TraceCheckUtils]: 107: Hoare triple {40860#(and (= |old(#length)| |#length|) (= |old(#valid)| |#valid|))} ~size := #in~size;havoc ~p~0.base, ~p~0.offset;havoc ~tmp~2.base, ~tmp~2.offset;havoc ~tmp___0~0;assume -2147483648 <= #t~nondet103 && #t~nondet103 <= 2147483647;~tmp___0~0 := #t~nondet103;havoc #t~nondet103; {40753#true} is VALID [2022-02-20 22:06:20,531 INFO L290 TraceCheckUtils]: 108: Hoare triple {40753#true} assume 0 != ~tmp___0~0;#res.base, #res.offset := 0, 0; {40753#true} is VALID [2022-02-20 22:06:20,531 INFO L290 TraceCheckUtils]: 109: Hoare triple {40753#true} assume true; {40753#true} is VALID [2022-02-20 22:06:20,531 INFO L284 TraceCheckUtils]: 110: Hoare quadruple {40753#true} {40754#false} #1164#return; {40754#false} is VALID [2022-02-20 22:06:20,531 INFO L290 TraceCheckUtils]: 111: Hoare triple {40754#false} ldv_blk_make_request_~res~1#1.base, ldv_blk_make_request_~res~1#1.offset := ldv_blk_make_request_#t~ret395#1.base, ldv_blk_make_request_#t~ret395#1.offset;havoc ldv_blk_make_request_#t~ret395#1.base, ldv_blk_make_request_#t~ret395#1.offset; {40754#false} is VALID [2022-02-20 22:06:20,531 INFO L290 TraceCheckUtils]: 112: Hoare triple {40754#false} assume !(0 == (ldv_blk_make_request_~res~1#1.base + ldv_blk_make_request_~res~1#1.offset) % 18446744073709551616); {40754#false} is VALID [2022-02-20 22:06:20,531 INFO L290 TraceCheckUtils]: 113: Hoare triple {40754#false} assume { :begin_inline_IS_ERR___0 } true;IS_ERR___0_#in~ptr#1.base, IS_ERR___0_#in~ptr#1.offset := ldv_blk_make_request_~res~1#1.base, ldv_blk_make_request_~res~1#1.offset;havoc IS_ERR___0_#res#1;havoc IS_ERR___0_#t~ret393#1, IS_ERR___0_~ptr#1.base, IS_ERR___0_~ptr#1.offset, IS_ERR___0_~tmp~31#1;IS_ERR___0_~ptr#1.base, IS_ERR___0_~ptr#1.offset := IS_ERR___0_#in~ptr#1.base, IS_ERR___0_#in~ptr#1.offset;havoc IS_ERR___0_~tmp~31#1; {40754#false} is VALID [2022-02-20 22:06:20,531 INFO L272 TraceCheckUtils]: 114: Hoare triple {40754#false} call IS_ERR___0_#t~ret393#1 := ldv__builtin_expect((if (IS_ERR___0_~ptr#1.base + IS_ERR___0_~ptr#1.offset) % 18446744073709551616 > 18446744073709547520 then 1 else 0), 0); {40753#true} is VALID [2022-02-20 22:06:20,532 INFO L290 TraceCheckUtils]: 115: Hoare triple {40753#true} ~exp := #in~exp;~c := #in~c;#res := ~exp; {40753#true} is VALID [2022-02-20 22:06:20,532 INFO L290 TraceCheckUtils]: 116: Hoare triple {40753#true} assume true; {40753#true} is VALID [2022-02-20 22:06:20,532 INFO L284 TraceCheckUtils]: 117: Hoare quadruple {40753#true} {40754#false} #1168#return; {40754#false} is VALID [2022-02-20 22:06:20,532 INFO L290 TraceCheckUtils]: 118: Hoare triple {40754#false} assume -9223372036854775808 <= IS_ERR___0_#t~ret393#1 && IS_ERR___0_#t~ret393#1 <= 9223372036854775807;IS_ERR___0_~tmp~31#1 := IS_ERR___0_#t~ret393#1;havoc IS_ERR___0_#t~ret393#1;IS_ERR___0_#res#1 := IS_ERR___0_~tmp~31#1; {40754#false} is VALID [2022-02-20 22:06:20,532 INFO L290 TraceCheckUtils]: 119: Hoare triple {40754#false} ldv_blk_make_request_#t~ret396#1 := IS_ERR___0_#res#1;assume { :end_inline_IS_ERR___0 } true;assume -9223372036854775808 <= ldv_blk_make_request_#t~ret396#1 && ldv_blk_make_request_#t~ret396#1 <= 9223372036854775807;ldv_blk_make_request_~tmp___0~14#1 := ldv_blk_make_request_#t~ret396#1;havoc ldv_blk_make_request_#t~ret396#1; {40754#false} is VALID [2022-02-20 22:06:20,532 INFO L290 TraceCheckUtils]: 120: Hoare triple {40754#false} assume 0 == ldv_blk_make_request_~tmp___0~14#1;~ldv_blk_rq~0 := 1; {40754#false} is VALID [2022-02-20 22:06:20,532 INFO L290 TraceCheckUtils]: 121: Hoare triple {40754#false} ldv_blk_make_request_#res#1.base, ldv_blk_make_request_#res#1.offset := ldv_blk_make_request_~res~1#1.base, ldv_blk_make_request_~res~1#1.offset; {40754#false} is VALID [2022-02-20 22:06:20,532 INFO L290 TraceCheckUtils]: 122: Hoare triple {40754#false} ldv_blk_make_request_5_#t~ret391#1.base, ldv_blk_make_request_5_#t~ret391#1.offset := ldv_blk_make_request_#res#1.base, ldv_blk_make_request_#res#1.offset;assume { :end_inline_ldv_blk_make_request } true;ldv_blk_make_request_5_~tmp~29#1.base, ldv_blk_make_request_5_~tmp~29#1.offset := ldv_blk_make_request_5_#t~ret391#1.base, ldv_blk_make_request_5_#t~ret391#1.offset;havoc ldv_blk_make_request_5_#t~ret391#1.base, ldv_blk_make_request_5_#t~ret391#1.offset;ldv_blk_make_request_5_#res#1.base, ldv_blk_make_request_5_#res#1.offset := ldv_blk_make_request_5_~tmp~29#1.base, ldv_blk_make_request_5_~tmp~29#1.offset; {40754#false} is VALID [2022-02-20 22:06:20,533 INFO L290 TraceCheckUtils]: 123: Hoare triple {40754#false} virtblk_get_id_#t~ret241#1.base, virtblk_get_id_#t~ret241#1.offset := ldv_blk_make_request_5_#res#1.base, ldv_blk_make_request_5_#res#1.offset;assume { :end_inline_ldv_blk_make_request_5 } true;virtblk_get_id_~req~1#1.base, virtblk_get_id_~req~1#1.offset := virtblk_get_id_#t~ret241#1.base, virtblk_get_id_#t~ret241#1.offset;havoc virtblk_get_id_#t~mem239#1.base, virtblk_get_id_#t~mem239#1.offset;havoc virtblk_get_id_#t~mem240#1.base, virtblk_get_id_#t~mem240#1.offset;havoc virtblk_get_id_#t~ret241#1.base, virtblk_get_id_#t~ret241#1.offset; {40754#false} is VALID [2022-02-20 22:06:20,533 INFO L272 TraceCheckUtils]: 124: Hoare triple {40754#false} call virtblk_get_id_#t~ret242#1 := IS_ERR(virtblk_get_id_~req~1#1.base, virtblk_get_id_~req~1#1.offset); {40753#true} is VALID [2022-02-20 22:06:20,533 INFO L290 TraceCheckUtils]: 125: Hoare triple {40753#true} ~ptr.base, ~ptr.offset := #in~ptr.base, #in~ptr.offset;havoc ~tmp~28; {40753#true} is VALID [2022-02-20 22:06:20,533 INFO L272 TraceCheckUtils]: 126: Hoare triple {40753#true} call #t~ret390 := ldv_is_err(~ptr.base, ~ptr.offset); {40753#true} is VALID [2022-02-20 22:06:20,533 INFO L290 TraceCheckUtils]: 127: Hoare triple {40753#true} ~ptr.base, ~ptr.offset := #in~ptr.base, #in~ptr.offset;#res := (if 0 == (if (~ptr.base + ~ptr.offset) % 18446744073709551616 > 2012 then 1 else 0) then 0 else 1); {40753#true} is VALID [2022-02-20 22:06:20,533 INFO L290 TraceCheckUtils]: 128: Hoare triple {40753#true} assume true; {40753#true} is VALID [2022-02-20 22:06:20,533 INFO L284 TraceCheckUtils]: 129: Hoare quadruple {40753#true} {40753#true} #1184#return; {40753#true} is VALID [2022-02-20 22:06:20,533 INFO L290 TraceCheckUtils]: 130: Hoare triple {40753#true} ~tmp~28 := #t~ret390;havoc #t~ret390;#res := ~tmp~28 % 256; {40753#true} is VALID [2022-02-20 22:06:20,534 INFO L290 TraceCheckUtils]: 131: Hoare triple {40753#true} assume true; {40753#true} is VALID [2022-02-20 22:06:20,534 INFO L284 TraceCheckUtils]: 132: Hoare quadruple {40753#true} {40754#false} #1170#return; {40754#false} is VALID [2022-02-20 22:06:20,534 INFO L290 TraceCheckUtils]: 133: Hoare triple {40754#false} assume -9223372036854775808 <= virtblk_get_id_#t~ret242#1 && virtblk_get_id_#t~ret242#1 <= 9223372036854775807;virtblk_get_id_~tmp___2~1#1 := virtblk_get_id_#t~ret242#1;havoc virtblk_get_id_#t~ret242#1; {40754#false} is VALID [2022-02-20 22:06:20,534 INFO L290 TraceCheckUtils]: 134: Hoare triple {40754#false} assume !(0 != virtblk_get_id_~tmp___2~1#1);call write~int(7, virtblk_get_id_~req~1#1.base, 64 + virtblk_get_id_~req~1#1.offset, 4);call virtblk_get_id_#t~mem244#1.base, virtblk_get_id_#t~mem244#1.offset := read~$Pointer$(virtblk_get_id_~vblk~2#1.base, 72 + virtblk_get_id_~vblk~2#1.offset, 8);call virtblk_get_id_#t~mem245#1.base, virtblk_get_id_#t~mem245#1.offset := read~$Pointer$(virtblk_get_id_#t~mem244#1.base, 1067 + virtblk_get_id_#t~mem244#1.offset, 8);call virtblk_get_id_#t~mem246#1.base, virtblk_get_id_#t~mem246#1.offset := read~$Pointer$(virtblk_get_id_~vblk~2#1.base, 72 + virtblk_get_id_~vblk~2#1.offset, 8);assume { :begin_inline_blk_execute_rq } true;blk_execute_rq_#in~arg0#1.base, blk_execute_rq_#in~arg0#1.offset, blk_execute_rq_#in~arg1#1.base, blk_execute_rq_#in~arg1#1.offset, blk_execute_rq_#in~arg2#1.base, blk_execute_rq_#in~arg2#1.offset, blk_execute_rq_#in~arg3#1 := virtblk_get_id_#t~mem245#1.base, virtblk_get_id_#t~mem245#1.offset, virtblk_get_id_#t~mem246#1.base, virtblk_get_id_#t~mem246#1.offset, virtblk_get_id_~req~1#1.base, virtblk_get_id_~req~1#1.offset, 0;havoc blk_execute_rq_#res#1;havoc blk_execute_rq_#t~nondet402#1, blk_execute_rq_~arg0#1.base, blk_execute_rq_~arg0#1.offset, blk_execute_rq_~arg1#1.base, blk_execute_rq_~arg1#1.offset, blk_execute_rq_~arg2#1.base, blk_execute_rq_~arg2#1.offset, blk_execute_rq_~arg3#1;blk_execute_rq_~arg0#1.base, blk_execute_rq_~arg0#1.offset := blk_execute_rq_#in~arg0#1.base, blk_execute_rq_#in~arg0#1.offset;blk_execute_rq_~arg1#1.base, blk_execute_rq_~arg1#1.offset := blk_execute_rq_#in~arg1#1.base, blk_execute_rq_#in~arg1#1.offset;blk_execute_rq_~arg2#1.base, blk_execute_rq_~arg2#1.offset := blk_execute_rq_#in~arg2#1.base, blk_execute_rq_#in~arg2#1.offset;blk_execute_rq_~arg3#1 := blk_execute_rq_#in~arg3#1;assume -2147483648 <= blk_execute_rq_#t~nondet402#1 && blk_execute_rq_#t~nondet402#1 <= 2147483647;blk_execute_rq_#res#1 := blk_execute_rq_#t~nondet402#1;havoc blk_execute_rq_#t~nondet402#1; {40754#false} is VALID [2022-02-20 22:06:20,534 INFO L290 TraceCheckUtils]: 135: Hoare triple {40754#false} virtblk_get_id_#t~ret247#1 := blk_execute_rq_#res#1;assume { :end_inline_blk_execute_rq } true;assume -2147483648 <= virtblk_get_id_#t~ret247#1 && virtblk_get_id_#t~ret247#1 <= 2147483647;virtblk_get_id_~tmp___3~1#1 := virtblk_get_id_#t~ret247#1;havoc virtblk_get_id_#t~mem244#1.base, virtblk_get_id_#t~mem244#1.offset;havoc virtblk_get_id_#t~mem245#1.base, virtblk_get_id_#t~mem245#1.offset;havoc virtblk_get_id_#t~mem246#1.base, virtblk_get_id_#t~mem246#1.offset;havoc virtblk_get_id_#t~ret247#1;virtblk_get_id_#res#1 := virtblk_get_id_~tmp___3~1#1; {40754#false} is VALID [2022-02-20 22:06:20,534 INFO L290 TraceCheckUtils]: 136: Hoare triple {40754#false} virtblk_ioctl_#t~ret250#1 := virtblk_get_id_#res#1;assume { :end_inline_virtblk_get_id } true;assume -2147483648 <= virtblk_ioctl_#t~ret250#1 && virtblk_ioctl_#t~ret250#1 <= 2147483647;virtblk_ioctl_~err~1#1 := virtblk_ioctl_#t~ret250#1;havoc virtblk_ioctl_#t~ret250#1; {40754#false} is VALID [2022-02-20 22:06:20,535 INFO L290 TraceCheckUtils]: 137: Hoare triple {40754#false} assume !(0 == virtblk_ioctl_~err~1#1); {40754#false} is VALID [2022-02-20 22:06:20,535 INFO L290 TraceCheckUtils]: 138: Hoare triple {40754#false} virtblk_ioctl_#res#1 := virtblk_ioctl_~err~1#1;call ULTIMATE.dealloc(virtblk_ioctl_~#id_str~0#1.base, virtblk_ioctl_~#id_str~0#1.offset);havoc virtblk_ioctl_~#id_str~0#1.base, virtblk_ioctl_~#id_str~0#1.offset; {40754#false} is VALID [2022-02-20 22:06:20,535 INFO L290 TraceCheckUtils]: 139: Hoare triple {40754#false} main_#t~ret386#1 := virtblk_ioctl_#res#1;assume { :end_inline_virtblk_ioctl } true;assume -2147483648 <= main_#t~ret386#1 && main_#t~ret386#1 <= 2147483647;havoc main_#t~mem384#1;havoc main_#t~mem385#1;havoc main_#t~ret386#1;~ldv_state_variable_2~0 := 1; {40754#false} is VALID [2022-02-20 22:06:20,535 INFO L290 TraceCheckUtils]: 140: Hoare triple {40754#false} assume -2147483648 <= main_#t~nondet374#1 && main_#t~nondet374#1 <= 2147483647;main_~tmp___0~12#1 := main_#t~nondet374#1;havoc main_#t~nondet374#1;main_#t~switch375#1 := 0 == main_~tmp___0~12#1; {40754#false} is VALID [2022-02-20 22:06:20,535 INFO L290 TraceCheckUtils]: 141: Hoare triple {40754#false} assume !main_#t~switch375#1;main_#t~switch375#1 := main_#t~switch375#1 || 1 == main_~tmp___0~12#1; {40754#false} is VALID [2022-02-20 22:06:20,535 INFO L290 TraceCheckUtils]: 142: Hoare triple {40754#false} assume main_#t~switch375#1; {40754#false} is VALID [2022-02-20 22:06:20,535 INFO L290 TraceCheckUtils]: 143: Hoare triple {40754#false} assume 0 != ~ldv_state_variable_0~0;assume -2147483648 <= main_#t~nondet379#1 && main_#t~nondet379#1 <= 2147483647;main_~tmp___2~4#1 := main_#t~nondet379#1;havoc main_#t~nondet379#1;main_#t~switch380#1 := 0 == main_~tmp___2~4#1; {40754#false} is VALID [2022-02-20 22:06:20,535 INFO L290 TraceCheckUtils]: 144: Hoare triple {40754#false} assume main_#t~switch380#1; {40754#false} is VALID [2022-02-20 22:06:20,536 INFO L290 TraceCheckUtils]: 145: Hoare triple {40754#false} assume 3 == ~ldv_state_variable_0~0 && 0 == ~ref_cnt~0;assume { :begin_inline_fini } true;assume { :begin_inline_unregister_blkdev } true;unregister_blkdev_#in~arg0#1, unregister_blkdev_#in~arg1#1.base, unregister_blkdev_#in~arg1#1.offset := ~major~0, 10, 0;havoc unregister_blkdev_~arg0#1, unregister_blkdev_~arg1#1.base, unregister_blkdev_~arg1#1.offset;unregister_blkdev_~arg0#1 := unregister_blkdev_#in~arg0#1;unregister_blkdev_~arg1#1.base, unregister_blkdev_~arg1#1.offset := unregister_blkdev_#in~arg1#1.base, unregister_blkdev_#in~arg1#1.offset; {40754#false} is VALID [2022-02-20 22:06:20,536 INFO L290 TraceCheckUtils]: 146: Hoare triple {40754#false} assume { :end_inline_unregister_blkdev } true;assume { :begin_inline_unregister_virtio_driver } true;unregister_virtio_driver_#in~arg0#1.base, unregister_virtio_driver_#in~arg0#1.offset := ~#virtio_blk~0.base, ~#virtio_blk~0.offset;havoc unregister_virtio_driver_~arg0#1.base, unregister_virtio_driver_~arg0#1.offset;unregister_virtio_driver_~arg0#1.base, unregister_virtio_driver_~arg0#1.offset := unregister_virtio_driver_#in~arg0#1.base, unregister_virtio_driver_#in~arg0#1.offset; {40754#false} is VALID [2022-02-20 22:06:20,536 INFO L290 TraceCheckUtils]: 147: Hoare triple {40754#false} assume { :end_inline_unregister_virtio_driver } true; {40754#false} is VALID [2022-02-20 22:06:20,536 INFO L290 TraceCheckUtils]: 148: Hoare triple {40754#false} assume { :end_inline_fini } true;~ldv_state_variable_0~0 := 2; {40754#false} is VALID [2022-02-20 22:06:20,536 INFO L290 TraceCheckUtils]: 149: Hoare triple {40754#false} assume { :begin_inline_ldv_check_final_state } true; {40754#false} is VALID [2022-02-20 22:06:20,536 INFO L290 TraceCheckUtils]: 150: Hoare triple {40754#false} assume 0 != ~ldv_blk_rq~0; {40754#false} is VALID [2022-02-20 22:06:20,536 INFO L272 TraceCheckUtils]: 151: Hoare triple {40754#false} call ldv_error(); {40754#false} is VALID [2022-02-20 22:06:20,536 INFO L290 TraceCheckUtils]: 152: Hoare triple {40754#false} assume !false; {40754#false} is VALID [2022-02-20 22:06:20,537 INFO L134 CoverageAnalysis]: Checked inductivity of 70 backedges. 8 proven. 0 refuted. 0 times theorem prover too weak. 62 trivial. 0 not checked. [2022-02-20 22:06:20,537 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 22:06:20,537 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [858784662] [2022-02-20 22:06:20,538 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [858784662] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 22:06:20,538 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 22:06:20,538 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-02-20 22:06:20,538 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [396369067] [2022-02-20 22:06:20,538 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 22:06:20,539 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 10.5) internal successors, (84), 4 states have internal predecessors, (84), 2 states have call successors, (14), 6 states have call predecessors, (14), 1 states have return successors, (13), 2 states have call predecessors, (13), 2 states have call successors, (13) Word has length 153 [2022-02-20 22:06:20,540 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 22:06:20,540 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 10.5) internal successors, (84), 4 states have internal predecessors, (84), 2 states have call successors, (14), 6 states have call predecessors, (14), 1 states have return successors, (13), 2 states have call predecessors, (13), 2 states have call successors, (13) [2022-02-20 22:06:20,628 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 111 edges. 111 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 22:06:20,628 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-02-20 22:06:20,629 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 22:06:20,629 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-02-20 22:06:20,630 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=16, Invalid=40, Unknown=0, NotChecked=0, Total=56 [2022-02-20 22:06:20,630 INFO L87 Difference]: Start difference. First operand 3063 states and 4034 transitions. Second operand has 8 states, 8 states have (on average 10.5) internal successors, (84), 4 states have internal predecessors, (84), 2 states have call successors, (14), 6 states have call predecessors, (14), 1 states have return successors, (13), 2 states have call predecessors, (13), 2 states have call successors, (13) [2022-02-20 22:06:28,086 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 22:06:28,087 INFO L93 Difference]: Finished difference Result 7475 states and 10179 transitions. [2022-02-20 22:06:28,087 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-02-20 22:06:28,087 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 10.5) internal successors, (84), 4 states have internal predecessors, (84), 2 states have call successors, (14), 6 states have call predecessors, (14), 1 states have return successors, (13), 2 states have call predecessors, (13), 2 states have call successors, (13) Word has length 153 [2022-02-20 22:06:28,088 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 22:06:28,088 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 10.5) internal successors, (84), 4 states have internal predecessors, (84), 2 states have call successors, (14), 6 states have call predecessors, (14), 1 states have return successors, (13), 2 states have call predecessors, (13), 2 states have call successors, (13) [2022-02-20 22:06:28,101 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 1435 transitions. [2022-02-20 22:06:28,102 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 10.5) internal successors, (84), 4 states have internal predecessors, (84), 2 states have call successors, (14), 6 states have call predecessors, (14), 1 states have return successors, (13), 2 states have call predecessors, (13), 2 states have call successors, (13) [2022-02-20 22:06:28,127 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 1435 transitions. [2022-02-20 22:06:28,131 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 8 states and 1435 transitions. [2022-02-20 22:06:29,318 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 1435 edges. 1435 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 22:06:30,235 INFO L225 Difference]: With dead ends: 7475 [2022-02-20 22:06:30,235 INFO L226 Difference]: Without dead ends: 4430 [2022-02-20 22:06:30,243 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 44 GetRequests, 35 SyntacticMatches, 0 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 5 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=34, Invalid=76, Unknown=0, NotChecked=0, Total=110 [2022-02-20 22:06:30,244 INFO L933 BasicCegarLoop]: 553 mSDtfsCounter, 634 mSDsluCounter, 1422 mSDsCounter, 0 mSdLazyCounter, 820 mSolverCounterSat, 529 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 662 SdHoareTripleChecker+Valid, 1975 SdHoareTripleChecker+Invalid, 1349 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 529 IncrementalHoareTripleChecker+Valid, 820 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.4s IncrementalHoareTripleChecker+Time [2022-02-20 22:06:30,245 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [662 Valid, 1975 Invalid, 1349 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [529 Valid, 820 Invalid, 0 Unknown, 0 Unchecked, 1.4s Time] [2022-02-20 22:06:30,249 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 4430 states. [2022-02-20 22:06:30,396 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 4430 to 3066. [2022-02-20 22:06:30,396 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 22:06:30,402 INFO L82 GeneralOperation]: Start isEquivalent. First operand 4430 states. Second operand has 3066 states, 2355 states have (on average 1.259872611464968) internal successors, (2967), 2388 states have internal predecessors, (2967), 535 states have call successors, (535), 176 states have call predecessors, (535), 175 states have return successors, (533), 533 states have call predecessors, (533), 533 states have call successors, (533) [2022-02-20 22:06:30,407 INFO L74 IsIncluded]: Start isIncluded. First operand 4430 states. Second operand has 3066 states, 2355 states have (on average 1.259872611464968) internal successors, (2967), 2388 states have internal predecessors, (2967), 535 states have call successors, (535), 176 states have call predecessors, (535), 175 states have return successors, (533), 533 states have call predecessors, (533), 533 states have call successors, (533) [2022-02-20 22:06:30,412 INFO L87 Difference]: Start difference. First operand 4430 states. Second operand has 3066 states, 2355 states have (on average 1.259872611464968) internal successors, (2967), 2388 states have internal predecessors, (2967), 535 states have call successors, (535), 176 states have call predecessors, (535), 175 states have return successors, (533), 533 states have call predecessors, (533), 533 states have call successors, (533) [2022-02-20 22:06:31,039 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 22:06:31,040 INFO L93 Difference]: Finished difference Result 4430 states and 6158 transitions. [2022-02-20 22:06:31,040 INFO L276 IsEmpty]: Start isEmpty. Operand 4430 states and 6158 transitions. [2022-02-20 22:06:31,053 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 22:06:31,053 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 22:06:31,057 INFO L74 IsIncluded]: Start isIncluded. First operand has 3066 states, 2355 states have (on average 1.259872611464968) internal successors, (2967), 2388 states have internal predecessors, (2967), 535 states have call successors, (535), 176 states have call predecessors, (535), 175 states have return successors, (533), 533 states have call predecessors, (533), 533 states have call successors, (533) Second operand 4430 states. [2022-02-20 22:06:31,062 INFO L87 Difference]: Start difference. First operand has 3066 states, 2355 states have (on average 1.259872611464968) internal successors, (2967), 2388 states have internal predecessors, (2967), 535 states have call successors, (535), 176 states have call predecessors, (535), 175 states have return successors, (533), 533 states have call predecessors, (533), 533 states have call successors, (533) Second operand 4430 states. [2022-02-20 22:06:31,702 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 22:06:31,703 INFO L93 Difference]: Finished difference Result 4430 states and 6158 transitions. [2022-02-20 22:06:31,703 INFO L276 IsEmpty]: Start isEmpty. Operand 4430 states and 6158 transitions. [2022-02-20 22:06:31,715 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 22:06:31,716 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 22:06:31,716 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 22:06:31,716 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 22:06:31,720 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3066 states, 2355 states have (on average 1.259872611464968) internal successors, (2967), 2388 states have internal predecessors, (2967), 535 states have call successors, (535), 176 states have call predecessors, (535), 175 states have return successors, (533), 533 states have call predecessors, (533), 533 states have call successors, (533) [2022-02-20 22:06:32,279 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3066 states to 3066 states and 4035 transitions. [2022-02-20 22:06:32,280 INFO L78 Accepts]: Start accepts. Automaton has 3066 states and 4035 transitions. Word has length 153 [2022-02-20 22:06:32,280 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 22:06:32,280 INFO L470 AbstractCegarLoop]: Abstraction has 3066 states and 4035 transitions. [2022-02-20 22:06:32,281 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 10.5) internal successors, (84), 4 states have internal predecessors, (84), 2 states have call successors, (14), 6 states have call predecessors, (14), 1 states have return successors, (13), 2 states have call predecessors, (13), 2 states have call successors, (13) [2022-02-20 22:06:32,281 INFO L276 IsEmpty]: Start isEmpty. Operand 3066 states and 4035 transitions. [2022-02-20 22:06:32,283 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 155 [2022-02-20 22:06:32,283 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 22:06:32,284 INFO L514 BasicCegarLoop]: trace histogram [3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 22:06:32,284 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4 [2022-02-20 22:06:32,284 INFO L402 AbstractCegarLoop]: === Iteration 6 === Targeting ldv_errorErr0ASSERT_VIOLATIONERROR_FUNCTION === [ldv_errorErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 22:06:32,284 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 22:06:32,284 INFO L85 PathProgramCache]: Analyzing trace with hash -2012347474, now seen corresponding path program 1 times [2022-02-20 22:06:32,284 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 22:06:32,285 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1800474185] [2022-02-20 22:06:32,285 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 22:06:32,285 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 22:06:32,343 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 22:06:32,428 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2022-02-20 22:06:32,431 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 22:06:32,440 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 1 [2022-02-20 22:06:32,442 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 22:06:32,445 INFO L290 TraceCheckUtils]: 0: Hoare triple {65024#(= |#memory_int| |old(#memory_int)|)} #memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, #ptr.base); {64933#true} is VALID [2022-02-20 22:06:32,445 INFO L290 TraceCheckUtils]: 1: Hoare triple {64933#true} assume true; {64933#true} is VALID [2022-02-20 22:06:32,446 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {64933#true} {64933#true} #1074#return; {64933#true} is VALID [2022-02-20 22:06:32,446 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-02-20 22:06:32,447 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 22:06:32,450 INFO L290 TraceCheckUtils]: 0: Hoare triple {64933#true} ~cond := #in~cond; {64933#true} is VALID [2022-02-20 22:06:32,450 INFO L290 TraceCheckUtils]: 1: Hoare triple {64933#true} assume !(0 == ~cond); {64933#true} is VALID [2022-02-20 22:06:32,450 INFO L290 TraceCheckUtils]: 2: Hoare triple {64933#true} assume true; {64933#true} is VALID [2022-02-20 22:06:32,451 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {64933#true} {64933#true} #1076#return; {64933#true} is VALID [2022-02-20 22:06:32,451 INFO L290 TraceCheckUtils]: 0: Hoare triple {65016#(and (= |old(#length)| |#length|) (= |#memory_int| |old(#memory_int)|) (= |old(#valid)| |#valid|))} ~size := #in~size;havoc ~p~2.base, ~p~2.offset;havoc ~tmp~4.base, ~tmp~4.offset;call #t~malloc109.base, #t~malloc109.offset := #Ultimate.allocOnHeap(~size); {64933#true} is VALID [2022-02-20 22:06:32,451 INFO L272 TraceCheckUtils]: 1: Hoare triple {64933#true} call #Ultimate.meminit(#t~malloc109.base, #t~malloc109.offset, 1, ~size, ~size); {65024#(= |#memory_int| |old(#memory_int)|)} is VALID [2022-02-20 22:06:32,452 INFO L290 TraceCheckUtils]: 2: Hoare triple {65024#(= |#memory_int| |old(#memory_int)|)} #memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, #ptr.base); {64933#true} is VALID [2022-02-20 22:06:32,452 INFO L290 TraceCheckUtils]: 3: Hoare triple {64933#true} assume true; {64933#true} is VALID [2022-02-20 22:06:32,452 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {64933#true} {64933#true} #1074#return; {64933#true} is VALID [2022-02-20 22:06:32,452 INFO L290 TraceCheckUtils]: 5: Hoare triple {64933#true} ~tmp~4.base, ~tmp~4.offset := #t~malloc109.base, #t~malloc109.offset;~p~2.base, ~p~2.offset := ~tmp~4.base, ~tmp~4.offset; {64933#true} is VALID [2022-02-20 22:06:32,452 INFO L272 TraceCheckUtils]: 6: Hoare triple {64933#true} call assume_abort_if_not((if 0 != (~p~2.base + ~p~2.offset) % 18446744073709551616 then 1 else 0)); {64933#true} is VALID [2022-02-20 22:06:32,452 INFO L290 TraceCheckUtils]: 7: Hoare triple {64933#true} ~cond := #in~cond; {64933#true} is VALID [2022-02-20 22:06:32,452 INFO L290 TraceCheckUtils]: 8: Hoare triple {64933#true} assume !(0 == ~cond); {64933#true} is VALID [2022-02-20 22:06:32,452 INFO L290 TraceCheckUtils]: 9: Hoare triple {64933#true} assume true; {64933#true} is VALID [2022-02-20 22:06:32,453 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {64933#true} {64933#true} #1076#return; {64933#true} is VALID [2022-02-20 22:06:32,453 INFO L290 TraceCheckUtils]: 11: Hoare triple {64933#true} #res.base, #res.offset := ~p~2.base, ~p~2.offset; {64933#true} is VALID [2022-02-20 22:06:32,453 INFO L290 TraceCheckUtils]: 12: Hoare triple {64933#true} assume true; {64933#true} is VALID [2022-02-20 22:06:32,453 INFO L284 TraceCheckUtils]: 13: Hoare quadruple {64933#true} {64933#true} #1084#return; {64933#true} is VALID [2022-02-20 22:06:32,460 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 19 [2022-02-20 22:06:32,462 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 22:06:32,472 INFO L290 TraceCheckUtils]: 0: Hoare triple {65025#(and (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~s#1.base, ~s#1.offset := #in~s#1.base, #in~s#1.offset;~c#1 := #in~c#1;~n#1 := #in~n#1;havoc ~tmp~5#1.base, ~tmp~5#1.offset;assume { :begin_inline_#Ultimate.C_memset } true;#Ultimate.C_memset_#ptr#1.base, #Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#value#1, #Ultimate.C_memset_#amount#1 := ~s#1.base, ~s#1.offset, ~c#1, ~n#1;havoc #Ultimate.C_memset_#res#1.base, #Ultimate.C_memset_#res#1.offset;havoc #Ultimate.C_memset_#t~loopctr416#1;#Ultimate.C_memset_#t~loopctr416#1 := 0; {64933#true} is VALID [2022-02-20 22:06:32,472 INFO L290 TraceCheckUtils]: 1: Hoare triple {64933#true} assume !(#Ultimate.C_memset_#t~loopctr416#1 % 18446744073709551616 < #Ultimate.C_memset_#amount#1 % 18446744073709551616); {64933#true} is VALID [2022-02-20 22:06:32,472 INFO L290 TraceCheckUtils]: 2: Hoare triple {64933#true} assume #Ultimate.C_memset_#res#1.base == #Ultimate.C_memset_#ptr#1.base && #Ultimate.C_memset_#res#1.offset == #Ultimate.C_memset_#ptr#1.offset;#t~memset~res110#1.base, #t~memset~res110#1.offset := #Ultimate.C_memset_#res#1.base, #Ultimate.C_memset_#res#1.offset;assume { :end_inline_#Ultimate.C_memset } true;~tmp~5#1.base, ~tmp~5#1.offset := ~s#1.base, ~s#1.offset;havoc #t~memset~res110#1.base, #t~memset~res110#1.offset;#res#1.base, #res#1.offset := ~tmp~5#1.base, ~tmp~5#1.offset; {64933#true} is VALID [2022-02-20 22:06:32,473 INFO L290 TraceCheckUtils]: 3: Hoare triple {64933#true} assume true; {64933#true} is VALID [2022-02-20 22:06:32,473 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {64933#true} {64933#true} #1086#return; {64933#true} is VALID [2022-02-20 22:06:32,473 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 26 [2022-02-20 22:06:32,476 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 22:06:32,480 INFO L290 TraceCheckUtils]: 0: Hoare triple {65025#(and (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~s#1.base, ~s#1.offset := #in~s#1.base, #in~s#1.offset;~c#1 := #in~c#1;~n#1 := #in~n#1;havoc ~tmp~5#1.base, ~tmp~5#1.offset;assume { :begin_inline_#Ultimate.C_memset } true;#Ultimate.C_memset_#ptr#1.base, #Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#value#1, #Ultimate.C_memset_#amount#1 := ~s#1.base, ~s#1.offset, ~c#1, ~n#1;havoc #Ultimate.C_memset_#res#1.base, #Ultimate.C_memset_#res#1.offset;havoc #Ultimate.C_memset_#t~loopctr416#1;#Ultimate.C_memset_#t~loopctr416#1 := 0; {64933#true} is VALID [2022-02-20 22:06:32,480 INFO L290 TraceCheckUtils]: 1: Hoare triple {64933#true} assume !(#Ultimate.C_memset_#t~loopctr416#1 % 18446744073709551616 < #Ultimate.C_memset_#amount#1 % 18446744073709551616); {64933#true} is VALID [2022-02-20 22:06:32,481 INFO L290 TraceCheckUtils]: 2: Hoare triple {64933#true} assume #Ultimate.C_memset_#res#1.base == #Ultimate.C_memset_#ptr#1.base && #Ultimate.C_memset_#res#1.offset == #Ultimate.C_memset_#ptr#1.offset;#t~memset~res110#1.base, #t~memset~res110#1.offset := #Ultimate.C_memset_#res#1.base, #Ultimate.C_memset_#res#1.offset;assume { :end_inline_#Ultimate.C_memset } true;~tmp~5#1.base, ~tmp~5#1.offset := ~s#1.base, ~s#1.offset;havoc #t~memset~res110#1.base, #t~memset~res110#1.offset;#res#1.base, #res#1.offset := ~tmp~5#1.base, ~tmp~5#1.offset; {64933#true} is VALID [2022-02-20 22:06:32,481 INFO L290 TraceCheckUtils]: 3: Hoare triple {64933#true} assume true; {64933#true} is VALID [2022-02-20 22:06:32,481 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {64933#true} {64933#true} #1088#return; {64933#true} is VALID [2022-02-20 22:06:32,481 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 45 [2022-02-20 22:06:32,483 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 22:06:32,487 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 1 [2022-02-20 22:06:32,488 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 22:06:32,490 INFO L290 TraceCheckUtils]: 0: Hoare triple {65024#(= |#memory_int| |old(#memory_int)|)} #memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, #ptr.base); {64933#true} is VALID [2022-02-20 22:06:32,502 INFO L290 TraceCheckUtils]: 1: Hoare triple {64933#true} assume true; {64933#true} is VALID [2022-02-20 22:06:32,508 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {64933#true} {64933#true} #1074#return; {64933#true} is VALID [2022-02-20 22:06:32,509 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-02-20 22:06:32,509 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 22:06:32,516 INFO L290 TraceCheckUtils]: 0: Hoare triple {64933#true} ~cond := #in~cond; {64933#true} is VALID [2022-02-20 22:06:32,517 INFO L290 TraceCheckUtils]: 1: Hoare triple {64933#true} assume !(0 == ~cond); {64933#true} is VALID [2022-02-20 22:06:32,517 INFO L290 TraceCheckUtils]: 2: Hoare triple {64933#true} assume true; {64933#true} is VALID [2022-02-20 22:06:32,517 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {64933#true} {64933#true} #1076#return; {64933#true} is VALID [2022-02-20 22:06:32,517 INFO L290 TraceCheckUtils]: 0: Hoare triple {65016#(and (= |old(#length)| |#length|) (= |#memory_int| |old(#memory_int)|) (= |old(#valid)| |#valid|))} ~size := #in~size;havoc ~p~2.base, ~p~2.offset;havoc ~tmp~4.base, ~tmp~4.offset;call #t~malloc109.base, #t~malloc109.offset := #Ultimate.allocOnHeap(~size); {64933#true} is VALID [2022-02-20 22:06:32,518 INFO L272 TraceCheckUtils]: 1: Hoare triple {64933#true} call #Ultimate.meminit(#t~malloc109.base, #t~malloc109.offset, 1, ~size, ~size); {65024#(= |#memory_int| |old(#memory_int)|)} is VALID [2022-02-20 22:06:32,518 INFO L290 TraceCheckUtils]: 2: Hoare triple {65024#(= |#memory_int| |old(#memory_int)|)} #memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, #ptr.base); {64933#true} is VALID [2022-02-20 22:06:32,518 INFO L290 TraceCheckUtils]: 3: Hoare triple {64933#true} assume true; {64933#true} is VALID [2022-02-20 22:06:32,518 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {64933#true} {64933#true} #1074#return; {64933#true} is VALID [2022-02-20 22:06:32,518 INFO L290 TraceCheckUtils]: 5: Hoare triple {64933#true} ~tmp~4.base, ~tmp~4.offset := #t~malloc109.base, #t~malloc109.offset;~p~2.base, ~p~2.offset := ~tmp~4.base, ~tmp~4.offset; {64933#true} is VALID [2022-02-20 22:06:32,519 INFO L272 TraceCheckUtils]: 6: Hoare triple {64933#true} call assume_abort_if_not((if 0 != (~p~2.base + ~p~2.offset) % 18446744073709551616 then 1 else 0)); {64933#true} is VALID [2022-02-20 22:06:32,519 INFO L290 TraceCheckUtils]: 7: Hoare triple {64933#true} ~cond := #in~cond; {64933#true} is VALID [2022-02-20 22:06:32,519 INFO L290 TraceCheckUtils]: 8: Hoare triple {64933#true} assume !(0 == ~cond); {64933#true} is VALID [2022-02-20 22:06:32,519 INFO L290 TraceCheckUtils]: 9: Hoare triple {64933#true} assume true; {64933#true} is VALID [2022-02-20 22:06:32,519 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {64933#true} {64933#true} #1076#return; {64933#true} is VALID [2022-02-20 22:06:32,519 INFO L290 TraceCheckUtils]: 11: Hoare triple {64933#true} #res.base, #res.offset := ~p~2.base, ~p~2.offset; {64933#true} is VALID [2022-02-20 22:06:32,519 INFO L290 TraceCheckUtils]: 12: Hoare triple {64933#true} assume true; {64933#true} is VALID [2022-02-20 22:06:32,519 INFO L284 TraceCheckUtils]: 13: Hoare quadruple {64933#true} {64933#true} #1150#return; {64933#true} is VALID [2022-02-20 22:06:32,520 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 62 [2022-02-20 22:06:32,522 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 22:06:32,527 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 1 [2022-02-20 22:06:32,528 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 22:06:32,531 INFO L290 TraceCheckUtils]: 0: Hoare triple {65024#(= |#memory_int| |old(#memory_int)|)} #memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, #ptr.base); {64933#true} is VALID [2022-02-20 22:06:32,531 INFO L290 TraceCheckUtils]: 1: Hoare triple {64933#true} assume true; {64933#true} is VALID [2022-02-20 22:06:32,531 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {64933#true} {64933#true} #1074#return; {64933#true} is VALID [2022-02-20 22:06:32,531 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-02-20 22:06:32,532 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 22:06:32,535 INFO L290 TraceCheckUtils]: 0: Hoare triple {64933#true} ~cond := #in~cond; {64933#true} is VALID [2022-02-20 22:06:32,535 INFO L290 TraceCheckUtils]: 1: Hoare triple {64933#true} assume !(0 == ~cond); {64933#true} is VALID [2022-02-20 22:06:32,536 INFO L290 TraceCheckUtils]: 2: Hoare triple {64933#true} assume true; {64933#true} is VALID [2022-02-20 22:06:32,536 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {64933#true} {64933#true} #1076#return; {64933#true} is VALID [2022-02-20 22:06:32,536 INFO L290 TraceCheckUtils]: 0: Hoare triple {65016#(and (= |old(#length)| |#length|) (= |#memory_int| |old(#memory_int)|) (= |old(#valid)| |#valid|))} ~size := #in~size;havoc ~p~2.base, ~p~2.offset;havoc ~tmp~4.base, ~tmp~4.offset;call #t~malloc109.base, #t~malloc109.offset := #Ultimate.allocOnHeap(~size); {64933#true} is VALID [2022-02-20 22:06:32,537 INFO L272 TraceCheckUtils]: 1: Hoare triple {64933#true} call #Ultimate.meminit(#t~malloc109.base, #t~malloc109.offset, 1, ~size, ~size); {65024#(= |#memory_int| |old(#memory_int)|)} is VALID [2022-02-20 22:06:32,537 INFO L290 TraceCheckUtils]: 2: Hoare triple {65024#(= |#memory_int| |old(#memory_int)|)} #memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, #ptr.base); {64933#true} is VALID [2022-02-20 22:06:32,537 INFO L290 TraceCheckUtils]: 3: Hoare triple {64933#true} assume true; {64933#true} is VALID [2022-02-20 22:06:32,537 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {64933#true} {64933#true} #1074#return; {64933#true} is VALID [2022-02-20 22:06:32,537 INFO L290 TraceCheckUtils]: 5: Hoare triple {64933#true} ~tmp~4.base, ~tmp~4.offset := #t~malloc109.base, #t~malloc109.offset;~p~2.base, ~p~2.offset := ~tmp~4.base, ~tmp~4.offset; {64933#true} is VALID [2022-02-20 22:06:32,537 INFO L272 TraceCheckUtils]: 6: Hoare triple {64933#true} call assume_abort_if_not((if 0 != (~p~2.base + ~p~2.offset) % 18446744073709551616 then 1 else 0)); {64933#true} is VALID [2022-02-20 22:06:32,537 INFO L290 TraceCheckUtils]: 7: Hoare triple {64933#true} ~cond := #in~cond; {64933#true} is VALID [2022-02-20 22:06:32,537 INFO L290 TraceCheckUtils]: 8: Hoare triple {64933#true} assume !(0 == ~cond); {64933#true} is VALID [2022-02-20 22:06:32,538 INFO L290 TraceCheckUtils]: 9: Hoare triple {64933#true} assume true; {64933#true} is VALID [2022-02-20 22:06:32,538 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {64933#true} {64933#true} #1076#return; {64933#true} is VALID [2022-02-20 22:06:32,538 INFO L290 TraceCheckUtils]: 11: Hoare triple {64933#true} #res.base, #res.offset := ~p~2.base, ~p~2.offset; {64933#true} is VALID [2022-02-20 22:06:32,538 INFO L290 TraceCheckUtils]: 12: Hoare triple {64933#true} assume true; {64933#true} is VALID [2022-02-20 22:06:32,538 INFO L284 TraceCheckUtils]: 13: Hoare quadruple {64933#true} {64933#true} #1152#return; {64933#true} is VALID [2022-02-20 22:06:32,544 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 88 [2022-02-20 22:06:32,545 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 22:06:32,549 INFO L290 TraceCheckUtils]: 0: Hoare triple {65040#(and (= |old(#length)| |#length|) (= |old(#valid)| |#valid|))} ~size := #in~size;havoc ~p~0.base, ~p~0.offset;havoc ~tmp~2.base, ~tmp~2.offset;havoc ~tmp___0~0;assume -2147483648 <= #t~nondet103 && #t~nondet103 <= 2147483647;~tmp___0~0 := #t~nondet103;havoc #t~nondet103; {64933#true} is VALID [2022-02-20 22:06:32,549 INFO L290 TraceCheckUtils]: 1: Hoare triple {64933#true} assume 0 != ~tmp___0~0;#res.base, #res.offset := 0, 0; {64933#true} is VALID [2022-02-20 22:06:32,549 INFO L290 TraceCheckUtils]: 2: Hoare triple {64933#true} assume true; {64933#true} is VALID [2022-02-20 22:06:32,549 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {64933#true} {64933#true} #1156#return; {64933#true} is VALID [2022-02-20 22:06:32,550 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 95 [2022-02-20 22:06:32,551 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 22:06:32,557 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 1 [2022-02-20 22:06:32,558 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 22:06:32,562 INFO L290 TraceCheckUtils]: 0: Hoare triple {64933#true} ~ptr.base, ~ptr.offset := #in~ptr.base, #in~ptr.offset;#res := (if 0 == (if (~ptr.base + ~ptr.offset) % 18446744073709551616 > 2012 then 1 else 0) then 0 else 1); {64933#true} is VALID [2022-02-20 22:06:32,562 INFO L290 TraceCheckUtils]: 1: Hoare triple {64933#true} assume true; {64933#true} is VALID [2022-02-20 22:06:32,562 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {64933#true} {64933#true} #1184#return; {64933#true} is VALID [2022-02-20 22:06:32,562 INFO L290 TraceCheckUtils]: 0: Hoare triple {64933#true} ~ptr.base, ~ptr.offset := #in~ptr.base, #in~ptr.offset;havoc ~tmp~28; {64933#true} is VALID [2022-02-20 22:06:32,562 INFO L272 TraceCheckUtils]: 1: Hoare triple {64933#true} call #t~ret390 := ldv_is_err(~ptr.base, ~ptr.offset); {64933#true} is VALID [2022-02-20 22:06:32,562 INFO L290 TraceCheckUtils]: 2: Hoare triple {64933#true} ~ptr.base, ~ptr.offset := #in~ptr.base, #in~ptr.offset;#res := (if 0 == (if (~ptr.base + ~ptr.offset) % 18446744073709551616 > 2012 then 1 else 0) then 0 else 1); {64933#true} is VALID [2022-02-20 22:06:32,562 INFO L290 TraceCheckUtils]: 3: Hoare triple {64933#true} assume true; {64933#true} is VALID [2022-02-20 22:06:32,563 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {64933#true} {64933#true} #1184#return; {64933#true} is VALID [2022-02-20 22:06:32,563 INFO L290 TraceCheckUtils]: 5: Hoare triple {64933#true} ~tmp~28 := #t~ret390;havoc #t~ret390;#res := ~tmp~28 % 256; {64933#true} is VALID [2022-02-20 22:06:32,563 INFO L290 TraceCheckUtils]: 6: Hoare triple {64933#true} assume true; {64933#true} is VALID [2022-02-20 22:06:32,563 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {64933#true} {64933#true} #1158#return; {64933#true} is VALID [2022-02-20 22:06:32,563 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 107 [2022-02-20 22:06:32,567 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 22:06:32,592 INFO L290 TraceCheckUtils]: 0: Hoare triple {65040#(and (= |old(#length)| |#length|) (= |old(#valid)| |#valid|))} ~size := #in~size;havoc ~p~0.base, ~p~0.offset;havoc ~tmp~2.base, ~tmp~2.offset;havoc ~tmp___0~0;assume -2147483648 <= #t~nondet103 && #t~nondet103 <= 2147483647;~tmp___0~0 := #t~nondet103;havoc #t~nondet103; {64933#true} is VALID [2022-02-20 22:06:32,593 INFO L290 TraceCheckUtils]: 1: Hoare triple {64933#true} assume 0 != ~tmp___0~0;#res.base, #res.offset := 0, 0; {65044#(and (<= 0 |ldv_malloc_#res.base|) (<= |ldv_malloc_#res.offset| 0) (<= |ldv_malloc_#res.base| 0) (<= 0 |ldv_malloc_#res.offset|))} is VALID [2022-02-20 22:06:32,593 INFO L290 TraceCheckUtils]: 2: Hoare triple {65044#(and (<= 0 |ldv_malloc_#res.base|) (<= |ldv_malloc_#res.offset| 0) (<= |ldv_malloc_#res.base| 0) (<= 0 |ldv_malloc_#res.offset|))} assume true; {65044#(and (<= 0 |ldv_malloc_#res.base|) (<= |ldv_malloc_#res.offset| 0) (<= |ldv_malloc_#res.base| 0) (<= 0 |ldv_malloc_#res.offset|))} is VALID [2022-02-20 22:06:32,594 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {65044#(and (<= 0 |ldv_malloc_#res.base|) (<= |ldv_malloc_#res.offset| 0) (<= |ldv_malloc_#res.base| 0) (<= 0 |ldv_malloc_#res.offset|))} {64933#true} #1164#return; {65003#(and (= |ULTIMATE.start_ldv_blk_make_request_#t~ret395#1.offset| 0) (= |ULTIMATE.start_ldv_blk_make_request_#t~ret395#1.base| 0))} is VALID [2022-02-20 22:06:32,594 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 115 [2022-02-20 22:06:32,596 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 22:06:32,602 INFO L290 TraceCheckUtils]: 0: Hoare triple {64933#true} ~exp := #in~exp;~c := #in~c;#res := ~exp; {64933#true} is VALID [2022-02-20 22:06:32,602 INFO L290 TraceCheckUtils]: 1: Hoare triple {64933#true} assume true; {64933#true} is VALID [2022-02-20 22:06:32,602 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {64933#true} {64934#false} #1168#return; {64934#false} is VALID [2022-02-20 22:06:32,602 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 125 [2022-02-20 22:06:32,604 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 22:06:32,607 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 1 [2022-02-20 22:06:32,608 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 22:06:32,611 INFO L290 TraceCheckUtils]: 0: Hoare triple {64933#true} ~ptr.base, ~ptr.offset := #in~ptr.base, #in~ptr.offset;#res := (if 0 == (if (~ptr.base + ~ptr.offset) % 18446744073709551616 > 2012 then 1 else 0) then 0 else 1); {64933#true} is VALID [2022-02-20 22:06:32,611 INFO L290 TraceCheckUtils]: 1: Hoare triple {64933#true} assume true; {64933#true} is VALID [2022-02-20 22:06:32,612 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {64933#true} {64933#true} #1184#return; {64933#true} is VALID [2022-02-20 22:06:32,612 INFO L290 TraceCheckUtils]: 0: Hoare triple {64933#true} ~ptr.base, ~ptr.offset := #in~ptr.base, #in~ptr.offset;havoc ~tmp~28; {64933#true} is VALID [2022-02-20 22:06:32,612 INFO L272 TraceCheckUtils]: 1: Hoare triple {64933#true} call #t~ret390 := ldv_is_err(~ptr.base, ~ptr.offset); {64933#true} is VALID [2022-02-20 22:06:32,612 INFO L290 TraceCheckUtils]: 2: Hoare triple {64933#true} ~ptr.base, ~ptr.offset := #in~ptr.base, #in~ptr.offset;#res := (if 0 == (if (~ptr.base + ~ptr.offset) % 18446744073709551616 > 2012 then 1 else 0) then 0 else 1); {64933#true} is VALID [2022-02-20 22:06:32,612 INFO L290 TraceCheckUtils]: 3: Hoare triple {64933#true} assume true; {64933#true} is VALID [2022-02-20 22:06:32,612 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {64933#true} {64933#true} #1184#return; {64933#true} is VALID [2022-02-20 22:06:32,612 INFO L290 TraceCheckUtils]: 5: Hoare triple {64933#true} ~tmp~28 := #t~ret390;havoc #t~ret390;#res := ~tmp~28 % 256; {64933#true} is VALID [2022-02-20 22:06:32,612 INFO L290 TraceCheckUtils]: 6: Hoare triple {64933#true} assume true; {64933#true} is VALID [2022-02-20 22:06:32,613 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {64933#true} {64934#false} #1170#return; {64934#false} is VALID [2022-02-20 22:06:32,613 INFO L290 TraceCheckUtils]: 0: Hoare triple {64933#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(95, 2);call #Ultimate.allocInit(22, 3);call #Ultimate.allocInit(9, 4);call #Ultimate.allocInit(5, 5);call write~init~int(118, 5, 0, 1);call write~init~int(100, 5, 1, 1);call write~init~int(37, 5, 2, 1);call write~init~int(99, 5, 3, 1);call write~init~int(0, 5, 4, 1);call #Ultimate.allocInit(7, 6);call write~init~int(118, 6, 0, 1);call write~init~int(100, 6, 1, 1);call write~init~int(37, 6, 2, 1);call write~init~int(99, 6, 3, 1);call write~init~int(37, 6, 4, 1);call write~init~int(99, 6, 5, 1);call write~init~int(0, 6, 6, 1);call #Ultimate.allocInit(9, 7);call #Ultimate.allocInit(11, 8);call #Ultimate.allocInit(8, 9);call #Ultimate.allocInit(8, 10);~LDV_IN_INTERRUPT~0 := 1;~virtblk_fops_group0~0.base, ~virtblk_fops_group0~0.offset := 0, 0;~ldv_state_variable_2~0 := 0;~ref_cnt~0 := 0;~ldv_state_variable_1~0 := 0;~virtio_blk_group0~0.base, ~virtio_blk_group0~0.offset := 0, 0;~ldv_state_variable_0~0 := 0;~major~0 := 0;~index~0 := 0;~#virtblk_fops~0.base, ~#virtblk_fops~0.offset := 11, 0;call #Ultimate.allocInit(96, 11);call write~init~$Pointer$(0, 0, ~#virtblk_fops~0.base, ~#virtblk_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtblk_fops~0.base, 8 + ~#virtblk_fops~0.offset, 8);call write~init~$Pointer$(#funAddr~virtblk_ioctl.base, #funAddr~virtblk_ioctl.offset, ~#virtblk_fops~0.base, 16 + ~#virtblk_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtblk_fops~0.base, 24 + ~#virtblk_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtblk_fops~0.base, 32 + ~#virtblk_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtblk_fops~0.base, 40 + ~#virtblk_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtblk_fops~0.base, 48 + ~#virtblk_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtblk_fops~0.base, 56 + ~#virtblk_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtblk_fops~0.base, 64 + ~#virtblk_fops~0.offset, 8);call write~init~$Pointer$(#funAddr~virtblk_getgeo.base, #funAddr~virtblk_getgeo.offset, ~#virtblk_fops~0.base, 72 + ~#virtblk_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtblk_fops~0.base, 80 + ~#virtblk_fops~0.offset, 8);call write~init~$Pointer$(~#__this_module~0.base, ~#__this_module~0.offset, ~#virtblk_fops~0.base, 88 + ~#virtblk_fops~0.offset, 8);~#id_table~0.base, ~#id_table~0.offset := 12, 0;call #Ultimate.allocInit(16, 12);call write~init~int(2, ~#id_table~0.base, ~#id_table~0.offset, 4);call write~init~int(4294967295, ~#id_table~0.base, 4 + ~#id_table~0.offset, 4);call write~init~int(0, ~#id_table~0.base, 8 + ~#id_table~0.offset, 4);call write~init~int(0, ~#id_table~0.base, 12 + ~#id_table~0.offset, 4);~#features~0.base, ~#features~0.offset := 13, 0;call #Ultimate.allocInit(36, 13);call write~init~int(0, ~#features~0.base, ~#features~0.offset, 4);call write~init~int(2, ~#features~0.base, 4 + ~#features~0.offset, 4);call write~init~int(1, ~#features~0.base, 8 + ~#features~0.offset, 4);call write~init~int(4, ~#features~0.base, 12 + ~#features~0.offset, 4);call write~init~int(5, ~#features~0.base, 16 + ~#features~0.offset, 4);call write~init~int(6, ~#features~0.base, 20 + ~#features~0.offset, 4);call write~init~int(7, ~#features~0.base, 24 + ~#features~0.offset, 4);call write~init~int(9, ~#features~0.base, 28 + ~#features~0.offset, 4);call write~init~int(10, ~#features~0.base, 32 + ~#features~0.offset, 4);~#virtio_blk~0.base, ~#virtio_blk~0.offset := 14, 0;call #Ultimate.allocInit(141, 14);call write~init~$Pointer$(8, 0, ~#virtio_blk~0.base, ~#virtio_blk~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtio_blk~0.base, 8 + ~#virtio_blk~0.offset, 8);call write~init~$Pointer$(~#__this_module~0.base, ~#__this_module~0.offset, ~#virtio_blk~0.base, 16 + ~#virtio_blk~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtio_blk~0.base, 24 + ~#virtio_blk~0.offset, 8);call write~init~int(0, ~#virtio_blk~0.base, 32 + ~#virtio_blk~0.offset, 1);call write~init~$Pointer$(0, 0, ~#virtio_blk~0.base, 33 + ~#virtio_blk~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtio_blk~0.base, 41 + ~#virtio_blk~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtio_blk~0.base, 49 + ~#virtio_blk~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtio_blk~0.base, 57 + ~#virtio_blk~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtio_blk~0.base, 65 + ~#virtio_blk~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtio_blk~0.base, 73 + ~#virtio_blk~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtio_blk~0.base, 81 + ~#virtio_blk~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtio_blk~0.base, 89 + ~#virtio_blk~0.offset, 8);call write~init~$Pointer$(~#id_table~0.base, ~#id_table~0.offset, ~#virtio_blk~0.base, 97 + ~#virtio_blk~0.offset, 8);call write~init~$Pointer$(~#features~0.base, ~#features~0.offset, ~#virtio_blk~0.base, 105 + ~#virtio_blk~0.offset, 8);call write~init~int(9, ~#virtio_blk~0.base, 113 + ~#virtio_blk~0.offset, 4);call write~init~$Pointer$(#funAddr~virtblk_probe.base, #funAddr~virtblk_probe.offset, ~#virtio_blk~0.base, 117 + ~#virtio_blk~0.offset, 8);call write~init~$Pointer$(#funAddr~virtblk_remove.base, #funAddr~virtblk_remove.offset, ~#virtio_blk~0.base, 125 + ~#virtio_blk~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtio_blk~0.base, 133 + ~#virtio_blk~0.offset, 8);~__mod_virtio_device_table~0.device := 0;~__mod_virtio_device_table~0.vendor := 0;~ldv_retval_0~0 := 0;~ldv_retval_1~0 := 0;~ldv_blk_rq~0 := 0; {64933#true} is VALID [2022-02-20 22:06:32,613 INFO L290 TraceCheckUtils]: 1: Hoare triple {64933#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret370#1.base, main_#t~ret370#1.offset, main_#t~ret371#1.base, main_#t~ret371#1.offset, main_#t~ret372#1.base, main_#t~ret372#1.offset, main_#t~nondet373#1, main_#t~nondet374#1, main_#t~switch375#1, main_#t~nondet376#1, main_#t~switch377#1, main_#t~ret378#1, main_#t~nondet379#1, main_#t~switch380#1, main_#t~ret381#1, main_#t~nondet382#1, main_#t~switch383#1, main_#t~mem384#1, main_#t~mem385#1, main_#t~ret386#1, main_#t~ret387#1, main_~#ldvarg1~0#1.base, main_~#ldvarg1~0#1.offset, main_~#ldvarg3~0#1.base, main_~#ldvarg3~0#1.offset, main_~ldvarg0~0#1.base, main_~ldvarg0~0#1.offset, main_~tmp~25#1.base, main_~tmp~25#1.offset, main_~ldvarg2~0#1, main_~tmp___0~12#1, main_~tmp___1~7#1, main_~tmp___2~4#1, main_~tmp___3~3#1;call main_~#ldvarg1~0#1.base, main_~#ldvarg1~0#1.offset := #Ultimate.allocOnStack(8);call main_~#ldvarg3~0#1.base, main_~#ldvarg3~0#1.offset := #Ultimate.allocOnStack(4);havoc main_~ldvarg0~0#1.base, main_~ldvarg0~0#1.offset;havoc main_~tmp~25#1.base, main_~tmp~25#1.offset;havoc main_~ldvarg2~0#1;havoc main_~tmp___0~12#1;havoc main_~tmp___1~7#1;havoc main_~tmp___2~4#1;havoc main_~tmp___3~3#1; {64933#true} is VALID [2022-02-20 22:06:32,613 INFO L272 TraceCheckUtils]: 2: Hoare triple {64933#true} call main_#t~ret370#1.base, main_#t~ret370#1.offset := ldv_init_zalloc(16); {65016#(and (= |old(#length)| |#length|) (= |#memory_int| |old(#memory_int)|) (= |old(#valid)| |#valid|))} is VALID [2022-02-20 22:06:32,614 INFO L290 TraceCheckUtils]: 3: Hoare triple {65016#(and (= |old(#length)| |#length|) (= |#memory_int| |old(#memory_int)|) (= |old(#valid)| |#valid|))} ~size := #in~size;havoc ~p~2.base, ~p~2.offset;havoc ~tmp~4.base, ~tmp~4.offset;call #t~malloc109.base, #t~malloc109.offset := #Ultimate.allocOnHeap(~size); {64933#true} is VALID [2022-02-20 22:06:32,614 INFO L272 TraceCheckUtils]: 4: Hoare triple {64933#true} call #Ultimate.meminit(#t~malloc109.base, #t~malloc109.offset, 1, ~size, ~size); {65024#(= |#memory_int| |old(#memory_int)|)} is VALID [2022-02-20 22:06:32,615 INFO L290 TraceCheckUtils]: 5: Hoare triple {65024#(= |#memory_int| |old(#memory_int)|)} #memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, #ptr.base); {64933#true} is VALID [2022-02-20 22:06:32,615 INFO L290 TraceCheckUtils]: 6: Hoare triple {64933#true} assume true; {64933#true} is VALID [2022-02-20 22:06:32,616 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {64933#true} {64933#true} #1074#return; {64933#true} is VALID [2022-02-20 22:06:32,616 INFO L290 TraceCheckUtils]: 8: Hoare triple {64933#true} ~tmp~4.base, ~tmp~4.offset := #t~malloc109.base, #t~malloc109.offset;~p~2.base, ~p~2.offset := ~tmp~4.base, ~tmp~4.offset; {64933#true} is VALID [2022-02-20 22:06:32,616 INFO L272 TraceCheckUtils]: 9: Hoare triple {64933#true} call assume_abort_if_not((if 0 != (~p~2.base + ~p~2.offset) % 18446744073709551616 then 1 else 0)); {64933#true} is VALID [2022-02-20 22:06:32,616 INFO L290 TraceCheckUtils]: 10: Hoare triple {64933#true} ~cond := #in~cond; {64933#true} is VALID [2022-02-20 22:06:32,616 INFO L290 TraceCheckUtils]: 11: Hoare triple {64933#true} assume !(0 == ~cond); {64933#true} is VALID [2022-02-20 22:06:32,616 INFO L290 TraceCheckUtils]: 12: Hoare triple {64933#true} assume true; {64933#true} is VALID [2022-02-20 22:06:32,616 INFO L284 TraceCheckUtils]: 13: Hoare quadruple {64933#true} {64933#true} #1076#return; {64933#true} is VALID [2022-02-20 22:06:32,616 INFO L290 TraceCheckUtils]: 14: Hoare triple {64933#true} #res.base, #res.offset := ~p~2.base, ~p~2.offset; {64933#true} is VALID [2022-02-20 22:06:32,616 INFO L290 TraceCheckUtils]: 15: Hoare triple {64933#true} assume true; {64933#true} is VALID [2022-02-20 22:06:32,641 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {64933#true} {64933#true} #1084#return; {64933#true} is VALID [2022-02-20 22:06:32,641 INFO L290 TraceCheckUtils]: 17: Hoare triple {64933#true} main_~tmp~25#1.base, main_~tmp~25#1.offset := main_#t~ret370#1.base, main_#t~ret370#1.offset;havoc main_#t~ret370#1.base, main_#t~ret370#1.offset;main_~ldvarg0~0#1.base, main_~ldvarg0~0#1.offset := main_~tmp~25#1.base, main_~tmp~25#1.offset;assume { :begin_inline_ldv_initialize } true; {64933#true} is VALID [2022-02-20 22:06:32,647 INFO L290 TraceCheckUtils]: 18: Hoare triple {64933#true} assume { :end_inline_ldv_initialize } true; {64933#true} is VALID [2022-02-20 22:06:32,649 INFO L272 TraceCheckUtils]: 19: Hoare triple {64933#true} call main_#t~ret371#1.base, main_#t~ret371#1.offset := ldv_memset(main_~#ldvarg1~0#1.base, main_~#ldvarg1~0#1.offset, 0, 8); {65025#(and (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2022-02-20 22:06:32,649 INFO L290 TraceCheckUtils]: 20: Hoare triple {65025#(and (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~s#1.base, ~s#1.offset := #in~s#1.base, #in~s#1.offset;~c#1 := #in~c#1;~n#1 := #in~n#1;havoc ~tmp~5#1.base, ~tmp~5#1.offset;assume { :begin_inline_#Ultimate.C_memset } true;#Ultimate.C_memset_#ptr#1.base, #Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#value#1, #Ultimate.C_memset_#amount#1 := ~s#1.base, ~s#1.offset, ~c#1, ~n#1;havoc #Ultimate.C_memset_#res#1.base, #Ultimate.C_memset_#res#1.offset;havoc #Ultimate.C_memset_#t~loopctr416#1;#Ultimate.C_memset_#t~loopctr416#1 := 0; {64933#true} is VALID [2022-02-20 22:06:32,650 INFO L290 TraceCheckUtils]: 21: Hoare triple {64933#true} assume !(#Ultimate.C_memset_#t~loopctr416#1 % 18446744073709551616 < #Ultimate.C_memset_#amount#1 % 18446744073709551616); {64933#true} is VALID [2022-02-20 22:06:32,650 INFO L290 TraceCheckUtils]: 22: Hoare triple {64933#true} assume #Ultimate.C_memset_#res#1.base == #Ultimate.C_memset_#ptr#1.base && #Ultimate.C_memset_#res#1.offset == #Ultimate.C_memset_#ptr#1.offset;#t~memset~res110#1.base, #t~memset~res110#1.offset := #Ultimate.C_memset_#res#1.base, #Ultimate.C_memset_#res#1.offset;assume { :end_inline_#Ultimate.C_memset } true;~tmp~5#1.base, ~tmp~5#1.offset := ~s#1.base, ~s#1.offset;havoc #t~memset~res110#1.base, #t~memset~res110#1.offset;#res#1.base, #res#1.offset := ~tmp~5#1.base, ~tmp~5#1.offset; {64933#true} is VALID [2022-02-20 22:06:32,650 INFO L290 TraceCheckUtils]: 23: Hoare triple {64933#true} assume true; {64933#true} is VALID [2022-02-20 22:06:32,650 INFO L284 TraceCheckUtils]: 24: Hoare quadruple {64933#true} {64933#true} #1086#return; {64933#true} is VALID [2022-02-20 22:06:32,650 INFO L290 TraceCheckUtils]: 25: Hoare triple {64933#true} havoc main_#t~ret371#1.base, main_#t~ret371#1.offset; {64933#true} is VALID [2022-02-20 22:06:32,651 INFO L272 TraceCheckUtils]: 26: Hoare triple {64933#true} call main_#t~ret372#1.base, main_#t~ret372#1.offset := ldv_memset(main_~#ldvarg3~0#1.base, main_~#ldvarg3~0#1.offset, 0, 4); {65025#(and (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2022-02-20 22:06:32,651 INFO L290 TraceCheckUtils]: 27: Hoare triple {65025#(and (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~s#1.base, ~s#1.offset := #in~s#1.base, #in~s#1.offset;~c#1 := #in~c#1;~n#1 := #in~n#1;havoc ~tmp~5#1.base, ~tmp~5#1.offset;assume { :begin_inline_#Ultimate.C_memset } true;#Ultimate.C_memset_#ptr#1.base, #Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#value#1, #Ultimate.C_memset_#amount#1 := ~s#1.base, ~s#1.offset, ~c#1, ~n#1;havoc #Ultimate.C_memset_#res#1.base, #Ultimate.C_memset_#res#1.offset;havoc #Ultimate.C_memset_#t~loopctr416#1;#Ultimate.C_memset_#t~loopctr416#1 := 0; {64933#true} is VALID [2022-02-20 22:06:32,651 INFO L290 TraceCheckUtils]: 28: Hoare triple {64933#true} assume !(#Ultimate.C_memset_#t~loopctr416#1 % 18446744073709551616 < #Ultimate.C_memset_#amount#1 % 18446744073709551616); {64933#true} is VALID [2022-02-20 22:06:32,651 INFO L290 TraceCheckUtils]: 29: Hoare triple {64933#true} assume #Ultimate.C_memset_#res#1.base == #Ultimate.C_memset_#ptr#1.base && #Ultimate.C_memset_#res#1.offset == #Ultimate.C_memset_#ptr#1.offset;#t~memset~res110#1.base, #t~memset~res110#1.offset := #Ultimate.C_memset_#res#1.base, #Ultimate.C_memset_#res#1.offset;assume { :end_inline_#Ultimate.C_memset } true;~tmp~5#1.base, ~tmp~5#1.offset := ~s#1.base, ~s#1.offset;havoc #t~memset~res110#1.base, #t~memset~res110#1.offset;#res#1.base, #res#1.offset := ~tmp~5#1.base, ~tmp~5#1.offset; {64933#true} is VALID [2022-02-20 22:06:32,651 INFO L290 TraceCheckUtils]: 30: Hoare triple {64933#true} assume true; {64933#true} is VALID [2022-02-20 22:06:32,651 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {64933#true} {64933#true} #1088#return; {64933#true} is VALID [2022-02-20 22:06:32,652 INFO L290 TraceCheckUtils]: 32: Hoare triple {64933#true} havoc main_#t~ret372#1.base, main_#t~ret372#1.offset;main_~ldvarg2~0#1 := main_#t~nondet373#1;havoc main_#t~nondet373#1;~ldv_state_variable_1~0 := 0;~ref_cnt~0 := 0;~ldv_state_variable_0~0 := 1;~ldv_state_variable_2~0 := 0; {64933#true} is VALID [2022-02-20 22:06:32,652 INFO L290 TraceCheckUtils]: 33: Hoare triple {64933#true} assume -2147483648 <= main_#t~nondet374#1 && main_#t~nondet374#1 <= 2147483647;main_~tmp___0~12#1 := main_#t~nondet374#1;havoc main_#t~nondet374#1;main_#t~switch375#1 := 0 == main_~tmp___0~12#1; {64933#true} is VALID [2022-02-20 22:06:32,652 INFO L290 TraceCheckUtils]: 34: Hoare triple {64933#true} assume !main_#t~switch375#1;main_#t~switch375#1 := main_#t~switch375#1 || 1 == main_~tmp___0~12#1; {64933#true} is VALID [2022-02-20 22:06:32,652 INFO L290 TraceCheckUtils]: 35: Hoare triple {64933#true} assume main_#t~switch375#1; {64933#true} is VALID [2022-02-20 22:06:32,652 INFO L290 TraceCheckUtils]: 36: Hoare triple {64933#true} assume 0 != ~ldv_state_variable_0~0;assume -2147483648 <= main_#t~nondet379#1 && main_#t~nondet379#1 <= 2147483647;main_~tmp___2~4#1 := main_#t~nondet379#1;havoc main_#t~nondet379#1;main_#t~switch380#1 := 0 == main_~tmp___2~4#1; {64933#true} is VALID [2022-02-20 22:06:32,652 INFO L290 TraceCheckUtils]: 37: Hoare triple {64933#true} assume !main_#t~switch380#1;main_#t~switch380#1 := main_#t~switch380#1 || 1 == main_~tmp___2~4#1; {64933#true} is VALID [2022-02-20 22:06:32,652 INFO L290 TraceCheckUtils]: 38: Hoare triple {64933#true} assume main_#t~switch380#1; {64933#true} is VALID [2022-02-20 22:06:32,652 INFO L290 TraceCheckUtils]: 39: Hoare triple {64933#true} assume 1 == ~ldv_state_variable_0~0;assume { :begin_inline_init } true;havoc init_#res#1;havoc init_#t~ret366#1, init_#t~ret367#1, init_~tmp~22#1;havoc init_~tmp~22#1;assume { :begin_inline_register_blkdev } true;register_blkdev_#in~arg0#1, register_blkdev_#in~arg1#1.base, register_blkdev_#in~arg1#1.offset := 0, 9, 0;havoc register_blkdev_#res#1;havoc register_blkdev_#t~nondet409#1, register_blkdev_~arg0#1, register_blkdev_~arg1#1.base, register_blkdev_~arg1#1.offset;register_blkdev_~arg0#1 := register_blkdev_#in~arg0#1;register_blkdev_~arg1#1.base, register_blkdev_~arg1#1.offset := register_blkdev_#in~arg1#1.base, register_blkdev_#in~arg1#1.offset;assume -2147483648 <= register_blkdev_#t~nondet409#1 && register_blkdev_#t~nondet409#1 <= 2147483647;register_blkdev_#res#1 := register_blkdev_#t~nondet409#1;havoc register_blkdev_#t~nondet409#1; {64933#true} is VALID [2022-02-20 22:06:32,652 INFO L290 TraceCheckUtils]: 40: Hoare triple {64933#true} init_#t~ret366#1 := register_blkdev_#res#1;assume { :end_inline_register_blkdev } true;assume -2147483648 <= init_#t~ret366#1 && init_#t~ret366#1 <= 2147483647;~major~0 := init_#t~ret366#1;havoc init_#t~ret366#1; {64933#true} is VALID [2022-02-20 22:06:32,653 INFO L290 TraceCheckUtils]: 41: Hoare triple {64933#true} assume !(~major~0 < 0);assume { :begin_inline_register_virtio_driver } true;register_virtio_driver_#in~arg0#1.base, register_virtio_driver_#in~arg0#1.offset := ~#virtio_blk~0.base, ~#virtio_blk~0.offset;havoc register_virtio_driver_#res#1;havoc register_virtio_driver_#t~nondet410#1, register_virtio_driver_~arg0#1.base, register_virtio_driver_~arg0#1.offset;register_virtio_driver_~arg0#1.base, register_virtio_driver_~arg0#1.offset := register_virtio_driver_#in~arg0#1.base, register_virtio_driver_#in~arg0#1.offset;assume -2147483648 <= register_virtio_driver_#t~nondet410#1 && register_virtio_driver_#t~nondet410#1 <= 2147483647;register_virtio_driver_#res#1 := register_virtio_driver_#t~nondet410#1;havoc register_virtio_driver_#t~nondet410#1; {64933#true} is VALID [2022-02-20 22:06:32,653 INFO L290 TraceCheckUtils]: 42: Hoare triple {64933#true} init_#t~ret367#1 := register_virtio_driver_#res#1;assume { :end_inline_register_virtio_driver } true;assume -2147483648 <= init_#t~ret367#1 && init_#t~ret367#1 <= 2147483647;init_~tmp~22#1 := init_#t~ret367#1;havoc init_#t~ret367#1;init_#res#1 := init_~tmp~22#1; {64933#true} is VALID [2022-02-20 22:06:32,653 INFO L290 TraceCheckUtils]: 43: Hoare triple {64933#true} main_#t~ret381#1 := init_#res#1;assume { :end_inline_init } true;assume -2147483648 <= main_#t~ret381#1 && main_#t~ret381#1 <= 2147483647;~ldv_retval_1~0 := main_#t~ret381#1;havoc main_#t~ret381#1; {64933#true} is VALID [2022-02-20 22:06:32,653 INFO L290 TraceCheckUtils]: 44: Hoare triple {64933#true} assume 0 == ~ldv_retval_1~0;~ldv_state_variable_0~0 := 3;~ldv_state_variable_2~0 := 1;assume { :begin_inline_ldv_initialize_block_device_operations_2 } true;havoc ldv_initialize_block_device_operations_2_#t~ret369#1.base, ldv_initialize_block_device_operations_2_#t~ret369#1.offset, ldv_initialize_block_device_operations_2_~tmp~24#1.base, ldv_initialize_block_device_operations_2_~tmp~24#1.offset;havoc ldv_initialize_block_device_operations_2_~tmp~24#1.base, ldv_initialize_block_device_operations_2_~tmp~24#1.offset; {64933#true} is VALID [2022-02-20 22:06:32,654 INFO L272 TraceCheckUtils]: 45: Hoare triple {64933#true} call ldv_initialize_block_device_operations_2_#t~ret369#1.base, ldv_initialize_block_device_operations_2_#t~ret369#1.offset := ldv_init_zalloc(464); {65016#(and (= |old(#length)| |#length|) (= |#memory_int| |old(#memory_int)|) (= |old(#valid)| |#valid|))} is VALID [2022-02-20 22:06:32,654 INFO L290 TraceCheckUtils]: 46: Hoare triple {65016#(and (= |old(#length)| |#length|) (= |#memory_int| |old(#memory_int)|) (= |old(#valid)| |#valid|))} ~size := #in~size;havoc ~p~2.base, ~p~2.offset;havoc ~tmp~4.base, ~tmp~4.offset;call #t~malloc109.base, #t~malloc109.offset := #Ultimate.allocOnHeap(~size); {64933#true} is VALID [2022-02-20 22:06:32,654 INFO L272 TraceCheckUtils]: 47: Hoare triple {64933#true} call #Ultimate.meminit(#t~malloc109.base, #t~malloc109.offset, 1, ~size, ~size); {65024#(= |#memory_int| |old(#memory_int)|)} is VALID [2022-02-20 22:06:32,655 INFO L290 TraceCheckUtils]: 48: Hoare triple {65024#(= |#memory_int| |old(#memory_int)|)} #memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, #ptr.base); {64933#true} is VALID [2022-02-20 22:06:32,655 INFO L290 TraceCheckUtils]: 49: Hoare triple {64933#true} assume true; {64933#true} is VALID [2022-02-20 22:06:32,655 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {64933#true} {64933#true} #1074#return; {64933#true} is VALID [2022-02-20 22:06:32,655 INFO L290 TraceCheckUtils]: 51: Hoare triple {64933#true} ~tmp~4.base, ~tmp~4.offset := #t~malloc109.base, #t~malloc109.offset;~p~2.base, ~p~2.offset := ~tmp~4.base, ~tmp~4.offset; {64933#true} is VALID [2022-02-20 22:06:32,655 INFO L272 TraceCheckUtils]: 52: Hoare triple {64933#true} call assume_abort_if_not((if 0 != (~p~2.base + ~p~2.offset) % 18446744073709551616 then 1 else 0)); {64933#true} is VALID [2022-02-20 22:06:32,655 INFO L290 TraceCheckUtils]: 53: Hoare triple {64933#true} ~cond := #in~cond; {64933#true} is VALID [2022-02-20 22:06:32,655 INFO L290 TraceCheckUtils]: 54: Hoare triple {64933#true} assume !(0 == ~cond); {64933#true} is VALID [2022-02-20 22:06:32,655 INFO L290 TraceCheckUtils]: 55: Hoare triple {64933#true} assume true; {64933#true} is VALID [2022-02-20 22:06:32,656 INFO L284 TraceCheckUtils]: 56: Hoare quadruple {64933#true} {64933#true} #1076#return; {64933#true} is VALID [2022-02-20 22:06:32,656 INFO L290 TraceCheckUtils]: 57: Hoare triple {64933#true} #res.base, #res.offset := ~p~2.base, ~p~2.offset; {64933#true} is VALID [2022-02-20 22:06:32,656 INFO L290 TraceCheckUtils]: 58: Hoare triple {64933#true} assume true; {64933#true} is VALID [2022-02-20 22:06:32,656 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {64933#true} {64933#true} #1150#return; {64933#true} is VALID [2022-02-20 22:06:32,656 INFO L290 TraceCheckUtils]: 60: Hoare triple {64933#true} ldv_initialize_block_device_operations_2_~tmp~24#1.base, ldv_initialize_block_device_operations_2_~tmp~24#1.offset := ldv_initialize_block_device_operations_2_#t~ret369#1.base, ldv_initialize_block_device_operations_2_#t~ret369#1.offset;havoc ldv_initialize_block_device_operations_2_#t~ret369#1.base, ldv_initialize_block_device_operations_2_#t~ret369#1.offset;~virtblk_fops_group0~0.base, ~virtblk_fops_group0~0.offset := ldv_initialize_block_device_operations_2_~tmp~24#1.base, ldv_initialize_block_device_operations_2_~tmp~24#1.offset; {64933#true} is VALID [2022-02-20 22:06:32,656 INFO L290 TraceCheckUtils]: 61: Hoare triple {64933#true} assume { :end_inline_ldv_initialize_block_device_operations_2 } true;~ldv_state_variable_1~0 := 1;assume { :begin_inline_ldv_initialize_virtio_driver_1 } true;havoc ldv_initialize_virtio_driver_1_#t~ret368#1.base, ldv_initialize_virtio_driver_1_#t~ret368#1.offset, ldv_initialize_virtio_driver_1_~tmp~23#1.base, ldv_initialize_virtio_driver_1_~tmp~23#1.offset;havoc ldv_initialize_virtio_driver_1_~tmp~23#1.base, ldv_initialize_virtio_driver_1_~tmp~23#1.offset; {64933#true} is VALID [2022-02-20 22:06:32,657 INFO L272 TraceCheckUtils]: 62: Hoare triple {64933#true} call ldv_initialize_virtio_driver_1_#t~ret368#1.base, ldv_initialize_virtio_driver_1_#t~ret368#1.offset := ldv_init_zalloc(1048); {65016#(and (= |old(#length)| |#length|) (= |#memory_int| |old(#memory_int)|) (= |old(#valid)| |#valid|))} is VALID [2022-02-20 22:06:32,657 INFO L290 TraceCheckUtils]: 63: Hoare triple {65016#(and (= |old(#length)| |#length|) (= |#memory_int| |old(#memory_int)|) (= |old(#valid)| |#valid|))} ~size := #in~size;havoc ~p~2.base, ~p~2.offset;havoc ~tmp~4.base, ~tmp~4.offset;call #t~malloc109.base, #t~malloc109.offset := #Ultimate.allocOnHeap(~size); {64933#true} is VALID [2022-02-20 22:06:32,657 INFO L272 TraceCheckUtils]: 64: Hoare triple {64933#true} call #Ultimate.meminit(#t~malloc109.base, #t~malloc109.offset, 1, ~size, ~size); {65024#(= |#memory_int| |old(#memory_int)|)} is VALID [2022-02-20 22:06:32,658 INFO L290 TraceCheckUtils]: 65: Hoare triple {65024#(= |#memory_int| |old(#memory_int)|)} #memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, #ptr.base); {64933#true} is VALID [2022-02-20 22:06:32,658 INFO L290 TraceCheckUtils]: 66: Hoare triple {64933#true} assume true; {64933#true} is VALID [2022-02-20 22:06:32,658 INFO L284 TraceCheckUtils]: 67: Hoare quadruple {64933#true} {64933#true} #1074#return; {64933#true} is VALID [2022-02-20 22:06:32,658 INFO L290 TraceCheckUtils]: 68: Hoare triple {64933#true} ~tmp~4.base, ~tmp~4.offset := #t~malloc109.base, #t~malloc109.offset;~p~2.base, ~p~2.offset := ~tmp~4.base, ~tmp~4.offset; {64933#true} is VALID [2022-02-20 22:06:32,658 INFO L272 TraceCheckUtils]: 69: Hoare triple {64933#true} call assume_abort_if_not((if 0 != (~p~2.base + ~p~2.offset) % 18446744073709551616 then 1 else 0)); {64933#true} is VALID [2022-02-20 22:06:32,658 INFO L290 TraceCheckUtils]: 70: Hoare triple {64933#true} ~cond := #in~cond; {64933#true} is VALID [2022-02-20 22:06:32,658 INFO L290 TraceCheckUtils]: 71: Hoare triple {64933#true} assume !(0 == ~cond); {64933#true} is VALID [2022-02-20 22:06:32,658 INFO L290 TraceCheckUtils]: 72: Hoare triple {64933#true} assume true; {64933#true} is VALID [2022-02-20 22:06:32,659 INFO L284 TraceCheckUtils]: 73: Hoare quadruple {64933#true} {64933#true} #1076#return; {64933#true} is VALID [2022-02-20 22:06:32,659 INFO L290 TraceCheckUtils]: 74: Hoare triple {64933#true} #res.base, #res.offset := ~p~2.base, ~p~2.offset; {64933#true} is VALID [2022-02-20 22:06:32,659 INFO L290 TraceCheckUtils]: 75: Hoare triple {64933#true} assume true; {64933#true} is VALID [2022-02-20 22:06:32,659 INFO L284 TraceCheckUtils]: 76: Hoare quadruple {64933#true} {64933#true} #1152#return; {64933#true} is VALID [2022-02-20 22:06:32,659 INFO L290 TraceCheckUtils]: 77: Hoare triple {64933#true} ldv_initialize_virtio_driver_1_~tmp~23#1.base, ldv_initialize_virtio_driver_1_~tmp~23#1.offset := ldv_initialize_virtio_driver_1_#t~ret368#1.base, ldv_initialize_virtio_driver_1_#t~ret368#1.offset;havoc ldv_initialize_virtio_driver_1_#t~ret368#1.base, ldv_initialize_virtio_driver_1_#t~ret368#1.offset;~virtio_blk_group0~0.base, ~virtio_blk_group0~0.offset := ldv_initialize_virtio_driver_1_~tmp~23#1.base, ldv_initialize_virtio_driver_1_~tmp~23#1.offset; {64933#true} is VALID [2022-02-20 22:06:32,659 INFO L290 TraceCheckUtils]: 78: Hoare triple {64933#true} assume { :end_inline_ldv_initialize_virtio_driver_1 } true; {64933#true} is VALID [2022-02-20 22:06:32,659 INFO L290 TraceCheckUtils]: 79: Hoare triple {64933#true} assume !(0 != ~ldv_retval_1~0); {64933#true} is VALID [2022-02-20 22:06:32,659 INFO L290 TraceCheckUtils]: 80: Hoare triple {64933#true} assume -2147483648 <= main_#t~nondet374#1 && main_#t~nondet374#1 <= 2147483647;main_~tmp___0~12#1 := main_#t~nondet374#1;havoc main_#t~nondet374#1;main_#t~switch375#1 := 0 == main_~tmp___0~12#1; {64933#true} is VALID [2022-02-20 22:06:32,660 INFO L290 TraceCheckUtils]: 81: Hoare triple {64933#true} assume !main_#t~switch375#1;main_#t~switch375#1 := main_#t~switch375#1 || 1 == main_~tmp___0~12#1; {64933#true} is VALID [2022-02-20 22:06:32,660 INFO L290 TraceCheckUtils]: 82: Hoare triple {64933#true} assume !main_#t~switch375#1;main_#t~switch375#1 := main_#t~switch375#1 || 2 == main_~tmp___0~12#1; {64933#true} is VALID [2022-02-20 22:06:32,660 INFO L290 TraceCheckUtils]: 83: Hoare triple {64933#true} assume main_#t~switch375#1; {64933#true} is VALID [2022-02-20 22:06:32,660 INFO L290 TraceCheckUtils]: 84: Hoare triple {64933#true} assume 0 != ~ldv_state_variable_2~0;assume -2147483648 <= main_#t~nondet382#1 && main_#t~nondet382#1 <= 2147483647;main_~tmp___3~3#1 := main_#t~nondet382#1;havoc main_#t~nondet382#1;main_#t~switch383#1 := 0 == main_~tmp___3~3#1; {64933#true} is VALID [2022-02-20 22:06:32,660 INFO L290 TraceCheckUtils]: 85: Hoare triple {64933#true} assume main_#t~switch383#1; {64933#true} is VALID [2022-02-20 22:06:32,660 INFO L290 TraceCheckUtils]: 86: Hoare triple {64933#true} assume 1 == ~ldv_state_variable_2~0;call main_#t~mem384#1 := read~int(main_~#ldvarg3~0#1.base, main_~#ldvarg3~0#1.offset, 4);call main_#t~mem385#1 := read~int(main_~#ldvarg1~0#1.base, main_~#ldvarg1~0#1.offset, 8);assume { :begin_inline_virtblk_ioctl } true;virtblk_ioctl_#in~bdev#1.base, virtblk_ioctl_#in~bdev#1.offset, virtblk_ioctl_#in~mode#1, virtblk_ioctl_#in~cmd#1, virtblk_ioctl_#in~data#1 := ~virtblk_fops_group0~0.base, ~virtblk_fops_group0~0.offset, main_#t~mem384#1, main_~ldvarg2~0#1, main_#t~mem385#1;havoc virtblk_ioctl_#res#1;havoc virtblk_ioctl_#t~mem248#1.base, virtblk_ioctl_#t~mem248#1.offset, virtblk_ioctl_#t~mem249#1.base, virtblk_ioctl_#t~mem249#1.offset, virtblk_ioctl_#t~ret250#1, virtblk_ioctl_#t~ret251#1, virtblk_ioctl_#t~mem252#1.base, virtblk_ioctl_#t~mem252#1.offset, virtblk_ioctl_#t~ret253#1, virtblk_ioctl_#t~mem254#1.base, virtblk_ioctl_#t~mem254#1.offset, virtblk_ioctl_#t~ret255#1, virtblk_ioctl_~bdev#1.base, virtblk_ioctl_~bdev#1.offset, virtblk_ioctl_~mode#1, virtblk_ioctl_~cmd#1, virtblk_ioctl_~data#1, virtblk_ioctl_~disk~0#1.base, virtblk_ioctl_~disk~0#1.offset, virtblk_ioctl_~vblk~3#1.base, virtblk_ioctl_~vblk~3#1.offset, virtblk_ioctl_~usr_data~0#1.base, virtblk_ioctl_~usr_data~0#1.offset, virtblk_ioctl_~#id_str~0#1.base, virtblk_ioctl_~#id_str~0#1.offset, virtblk_ioctl_~err~1#1, virtblk_ioctl_~tmp~18#1, virtblk_ioctl_~tmp___0~9#1, virtblk_ioctl_~tmp___1~5#1, virtblk_ioctl_~tmp___2~2#1;virtblk_ioctl_~bdev#1.base, virtblk_ioctl_~bdev#1.offset := virtblk_ioctl_#in~bdev#1.base, virtblk_ioctl_#in~bdev#1.offset;virtblk_ioctl_~mode#1 := virtblk_ioctl_#in~mode#1;virtblk_ioctl_~cmd#1 := virtblk_ioctl_#in~cmd#1;virtblk_ioctl_~data#1 := virtblk_ioctl_#in~data#1;havoc virtblk_ioctl_~disk~0#1.base, virtblk_ioctl_~disk~0#1.offset;havoc virtblk_ioctl_~vblk~3#1.base, virtblk_ioctl_~vblk~3#1.offset;havoc virtblk_ioctl_~usr_data~0#1.base, virtblk_ioctl_~usr_data~0#1.offset;call virtblk_ioctl_~#id_str~0#1.base, virtblk_ioctl_~#id_str~0#1.offset := #Ultimate.allocOnStack(20);havoc virtblk_ioctl_~err~1#1;havoc virtblk_ioctl_~tmp~18#1;havoc virtblk_ioctl_~tmp___0~9#1;havoc virtblk_ioctl_~tmp___1~5#1;havoc virtblk_ioctl_~tmp___2~2#1;call virtblk_ioctl_#t~mem248#1.base, virtblk_ioctl_#t~mem248#1.offset := read~$Pointer$(virtblk_ioctl_~bdev#1.base, 240 + virtblk_ioctl_~bdev#1.offset, 8);virtblk_ioctl_~disk~0#1.base, virtblk_ioctl_~disk~0#1.offset := virtblk_ioctl_#t~mem248#1.base, virtblk_ioctl_#t~mem248#1.offset;havoc virtblk_ioctl_#t~mem248#1.base, virtblk_ioctl_#t~mem248#1.offset;call virtblk_ioctl_#t~mem249#1.base, virtblk_ioctl_#t~mem249#1.offset := read~$Pointer$(virtblk_ioctl_~disk~0#1.base, 1075 + virtblk_ioctl_~disk~0#1.offset, 8);virtblk_ioctl_~vblk~3#1.base, virtblk_ioctl_~vblk~3#1.offset := virtblk_ioctl_#t~mem249#1.base, virtblk_ioctl_#t~mem249#1.offset;havoc virtblk_ioctl_#t~mem249#1.base, virtblk_ioctl_#t~mem249#1.offset; {64933#true} is VALID [2022-02-20 22:06:32,660 INFO L290 TraceCheckUtils]: 87: Hoare triple {64933#true} assume 1447184708 == virtblk_ioctl_~cmd#1 % 4294967296;virtblk_ioctl_~usr_data~0#1.base, virtblk_ioctl_~usr_data~0#1.offset := 0, (if virtblk_ioctl_~data#1 % 18446744073709551616 % 18446744073709551616 <= 9223372036854775807 then virtblk_ioctl_~data#1 % 18446744073709551616 % 18446744073709551616 else virtblk_ioctl_~data#1 % 18446744073709551616 % 18446744073709551616 - 18446744073709551616);assume { :begin_inline_virtblk_get_id } true;virtblk_get_id_#in~disk#1.base, virtblk_get_id_#in~disk#1.offset, virtblk_get_id_#in~id_str#1.base, virtblk_get_id_#in~id_str#1.offset := virtblk_ioctl_~disk~0#1.base, virtblk_ioctl_~disk~0#1.offset, virtblk_ioctl_~#id_str~0#1.base, virtblk_ioctl_~#id_str~0#1.offset;havoc virtblk_get_id_#res#1;havoc virtblk_get_id_#t~mem233#1.base, virtblk_get_id_#t~mem233#1.offset, virtblk_get_id_#t~mem234#1.base, virtblk_get_id_#t~mem234#1.offset, virtblk_get_id_#t~mem235#1.base, virtblk_get_id_#t~mem235#1.offset, virtblk_get_id_#t~ret236#1.base, virtblk_get_id_#t~ret236#1.offset, virtblk_get_id_#t~ret237#1, virtblk_get_id_#t~ret238#1, virtblk_get_id_#t~mem239#1.base, virtblk_get_id_#t~mem239#1.offset, virtblk_get_id_#t~mem240#1.base, virtblk_get_id_#t~mem240#1.offset, virtblk_get_id_#t~ret241#1.base, virtblk_get_id_#t~ret241#1.offset, virtblk_get_id_#t~ret242#1, virtblk_get_id_#t~ret243#1, virtblk_get_id_#t~mem244#1.base, virtblk_get_id_#t~mem244#1.offset, virtblk_get_id_#t~mem245#1.base, virtblk_get_id_#t~mem245#1.offset, virtblk_get_id_#t~mem246#1.base, virtblk_get_id_#t~mem246#1.offset, virtblk_get_id_#t~ret247#1, virtblk_get_id_~disk#1.base, virtblk_get_id_~disk#1.offset, virtblk_get_id_~id_str#1.base, virtblk_get_id_~id_str#1.offset, virtblk_get_id_~vblk~2#1.base, virtblk_get_id_~vblk~2#1.offset, virtblk_get_id_~req~1#1.base, virtblk_get_id_~req~1#1.offset, virtblk_get_id_~bio~0#1.base, virtblk_get_id_~bio~0#1.offset, virtblk_get_id_~tmp~17#1, virtblk_get_id_~tmp___0~8#1, virtblk_get_id_~tmp___1~4#1, virtblk_get_id_~tmp___2~1#1, virtblk_get_id_~tmp___3~1#1;virtblk_get_id_~disk#1.base, virtblk_get_id_~disk#1.offset := virtblk_get_id_#in~disk#1.base, virtblk_get_id_#in~disk#1.offset;virtblk_get_id_~id_str#1.base, virtblk_get_id_~id_str#1.offset := virtblk_get_id_#in~id_str#1.base, virtblk_get_id_#in~id_str#1.offset;havoc virtblk_get_id_~vblk~2#1.base, virtblk_get_id_~vblk~2#1.offset;havoc virtblk_get_id_~req~1#1.base, virtblk_get_id_~req~1#1.offset;havoc virtblk_get_id_~bio~0#1.base, virtblk_get_id_~bio~0#1.offset;havoc virtblk_get_id_~tmp~17#1;havoc virtblk_get_id_~tmp___0~8#1;havoc virtblk_get_id_~tmp___1~4#1;havoc virtblk_get_id_~tmp___2~1#1;havoc virtblk_get_id_~tmp___3~1#1;call virtblk_get_id_#t~mem233#1.base, virtblk_get_id_#t~mem233#1.offset := read~$Pointer$(virtblk_get_id_~disk#1.base, 1075 + virtblk_get_id_~disk#1.offset, 8);virtblk_get_id_~vblk~2#1.base, virtblk_get_id_~vblk~2#1.offset := virtblk_get_id_#t~mem233#1.base, virtblk_get_id_#t~mem233#1.offset;havoc virtblk_get_id_#t~mem233#1.base, virtblk_get_id_#t~mem233#1.offset;call virtblk_get_id_#t~mem234#1.base, virtblk_get_id_#t~mem234#1.offset := read~$Pointer$(virtblk_get_id_~vblk~2#1.base, 72 + virtblk_get_id_~vblk~2#1.offset, 8);call virtblk_get_id_#t~mem235#1.base, virtblk_get_id_#t~mem235#1.offset := read~$Pointer$(virtblk_get_id_#t~mem234#1.base, 1067 + virtblk_get_id_#t~mem234#1.offset, 8);assume { :begin_inline_bio_map_kern } true;bio_map_kern_#in~arg0#1.base, bio_map_kern_#in~arg0#1.offset, bio_map_kern_#in~arg1#1.base, bio_map_kern_#in~arg1#1.offset, bio_map_kern_#in~arg2#1, bio_map_kern_#in~arg3#1 := virtblk_get_id_#t~mem235#1.base, virtblk_get_id_#t~mem235#1.offset, virtblk_get_id_~id_str#1.base, virtblk_get_id_~id_str#1.offset, 20, 208;havoc bio_map_kern_#res#1.base, bio_map_kern_#res#1.offset;havoc bio_map_kern_#t~ret401#1.base, bio_map_kern_#t~ret401#1.offset, bio_map_kern_~arg0#1.base, bio_map_kern_~arg0#1.offset, bio_map_kern_~arg1#1.base, bio_map_kern_~arg1#1.offset, bio_map_kern_~arg2#1, bio_map_kern_~arg3#1;bio_map_kern_~arg0#1.base, bio_map_kern_~arg0#1.offset := bio_map_kern_#in~arg0#1.base, bio_map_kern_#in~arg0#1.offset;bio_map_kern_~arg1#1.base, bio_map_kern_~arg1#1.offset := bio_map_kern_#in~arg1#1.base, bio_map_kern_#in~arg1#1.offset;bio_map_kern_~arg2#1 := bio_map_kern_#in~arg2#1;bio_map_kern_~arg3#1 := bio_map_kern_#in~arg3#1; {64933#true} is VALID [2022-02-20 22:06:32,661 INFO L272 TraceCheckUtils]: 88: Hoare triple {64933#true} call bio_map_kern_#t~ret401#1.base, bio_map_kern_#t~ret401#1.offset := ldv_malloc(112); {65040#(and (= |old(#length)| |#length|) (= |old(#valid)| |#valid|))} is VALID [2022-02-20 22:06:32,661 INFO L290 TraceCheckUtils]: 89: Hoare triple {65040#(and (= |old(#length)| |#length|) (= |old(#valid)| |#valid|))} ~size := #in~size;havoc ~p~0.base, ~p~0.offset;havoc ~tmp~2.base, ~tmp~2.offset;havoc ~tmp___0~0;assume -2147483648 <= #t~nondet103 && #t~nondet103 <= 2147483647;~tmp___0~0 := #t~nondet103;havoc #t~nondet103; {64933#true} is VALID [2022-02-20 22:06:32,661 INFO L290 TraceCheckUtils]: 90: Hoare triple {64933#true} assume 0 != ~tmp___0~0;#res.base, #res.offset := 0, 0; {64933#true} is VALID [2022-02-20 22:06:32,661 INFO L290 TraceCheckUtils]: 91: Hoare triple {64933#true} assume true; {64933#true} is VALID [2022-02-20 22:06:32,661 INFO L284 TraceCheckUtils]: 92: Hoare quadruple {64933#true} {64933#true} #1156#return; {64933#true} is VALID [2022-02-20 22:06:32,661 INFO L290 TraceCheckUtils]: 93: Hoare triple {64933#true} bio_map_kern_#res#1.base, bio_map_kern_#res#1.offset := bio_map_kern_#t~ret401#1.base, bio_map_kern_#t~ret401#1.offset;havoc bio_map_kern_#t~ret401#1.base, bio_map_kern_#t~ret401#1.offset; {64933#true} is VALID [2022-02-20 22:06:32,662 INFO L290 TraceCheckUtils]: 94: Hoare triple {64933#true} virtblk_get_id_#t~ret236#1.base, virtblk_get_id_#t~ret236#1.offset := bio_map_kern_#res#1.base, bio_map_kern_#res#1.offset;assume { :end_inline_bio_map_kern } true;virtblk_get_id_~bio~0#1.base, virtblk_get_id_~bio~0#1.offset := virtblk_get_id_#t~ret236#1.base, virtblk_get_id_#t~ret236#1.offset;havoc virtblk_get_id_#t~mem234#1.base, virtblk_get_id_#t~mem234#1.offset;havoc virtblk_get_id_#t~mem235#1.base, virtblk_get_id_#t~mem235#1.offset;havoc virtblk_get_id_#t~ret236#1.base, virtblk_get_id_#t~ret236#1.offset; {64933#true} is VALID [2022-02-20 22:06:32,662 INFO L272 TraceCheckUtils]: 95: Hoare triple {64933#true} call virtblk_get_id_#t~ret237#1 := IS_ERR(virtblk_get_id_~bio~0#1.base, virtblk_get_id_~bio~0#1.offset); {64933#true} is VALID [2022-02-20 22:06:32,662 INFO L290 TraceCheckUtils]: 96: Hoare triple {64933#true} ~ptr.base, ~ptr.offset := #in~ptr.base, #in~ptr.offset;havoc ~tmp~28; {64933#true} is VALID [2022-02-20 22:06:32,662 INFO L272 TraceCheckUtils]: 97: Hoare triple {64933#true} call #t~ret390 := ldv_is_err(~ptr.base, ~ptr.offset); {64933#true} is VALID [2022-02-20 22:06:32,662 INFO L290 TraceCheckUtils]: 98: Hoare triple {64933#true} ~ptr.base, ~ptr.offset := #in~ptr.base, #in~ptr.offset;#res := (if 0 == (if (~ptr.base + ~ptr.offset) % 18446744073709551616 > 2012 then 1 else 0) then 0 else 1); {64933#true} is VALID [2022-02-20 22:06:32,662 INFO L290 TraceCheckUtils]: 99: Hoare triple {64933#true} assume true; {64933#true} is VALID [2022-02-20 22:06:32,662 INFO L284 TraceCheckUtils]: 100: Hoare quadruple {64933#true} {64933#true} #1184#return; {64933#true} is VALID [2022-02-20 22:06:32,662 INFO L290 TraceCheckUtils]: 101: Hoare triple {64933#true} ~tmp~28 := #t~ret390;havoc #t~ret390;#res := ~tmp~28 % 256; {64933#true} is VALID [2022-02-20 22:06:32,663 INFO L290 TraceCheckUtils]: 102: Hoare triple {64933#true} assume true; {64933#true} is VALID [2022-02-20 22:06:32,663 INFO L284 TraceCheckUtils]: 103: Hoare quadruple {64933#true} {64933#true} #1158#return; {64933#true} is VALID [2022-02-20 22:06:32,663 INFO L290 TraceCheckUtils]: 104: Hoare triple {64933#true} assume -9223372036854775808 <= virtblk_get_id_#t~ret237#1 && virtblk_get_id_#t~ret237#1 <= 9223372036854775807;virtblk_get_id_~tmp___0~8#1 := virtblk_get_id_#t~ret237#1;havoc virtblk_get_id_#t~ret237#1; {64933#true} is VALID [2022-02-20 22:06:32,663 INFO L290 TraceCheckUtils]: 105: Hoare triple {64933#true} assume !(0 != virtblk_get_id_~tmp___0~8#1);call virtblk_get_id_#t~mem239#1.base, virtblk_get_id_#t~mem239#1.offset := read~$Pointer$(virtblk_get_id_~vblk~2#1.base, 72 + virtblk_get_id_~vblk~2#1.offset, 8);call virtblk_get_id_#t~mem240#1.base, virtblk_get_id_#t~mem240#1.offset := read~$Pointer$(virtblk_get_id_#t~mem239#1.base, 1067 + virtblk_get_id_#t~mem239#1.offset, 8);assume { :begin_inline_ldv_blk_make_request_5 } true;ldv_blk_make_request_5_#in~ldv_func_arg1#1.base, ldv_blk_make_request_5_#in~ldv_func_arg1#1.offset, ldv_blk_make_request_5_#in~ldv_func_arg2#1.base, ldv_blk_make_request_5_#in~ldv_func_arg2#1.offset, ldv_blk_make_request_5_#in~ldv_func_arg3#1 := virtblk_get_id_#t~mem240#1.base, virtblk_get_id_#t~mem240#1.offset, virtblk_get_id_~bio~0#1.base, virtblk_get_id_~bio~0#1.offset, 208;havoc ldv_blk_make_request_5_#res#1.base, ldv_blk_make_request_5_#res#1.offset;havoc ldv_blk_make_request_5_#t~ret391#1.base, ldv_blk_make_request_5_#t~ret391#1.offset, ldv_blk_make_request_5_~ldv_func_arg1#1.base, ldv_blk_make_request_5_~ldv_func_arg1#1.offset, ldv_blk_make_request_5_~ldv_func_arg2#1.base, ldv_blk_make_request_5_~ldv_func_arg2#1.offset, ldv_blk_make_request_5_~ldv_func_arg3#1, ldv_blk_make_request_5_~tmp~29#1.base, ldv_blk_make_request_5_~tmp~29#1.offset;ldv_blk_make_request_5_~ldv_func_arg1#1.base, ldv_blk_make_request_5_~ldv_func_arg1#1.offset := ldv_blk_make_request_5_#in~ldv_func_arg1#1.base, ldv_blk_make_request_5_#in~ldv_func_arg1#1.offset;ldv_blk_make_request_5_~ldv_func_arg2#1.base, ldv_blk_make_request_5_~ldv_func_arg2#1.offset := ldv_blk_make_request_5_#in~ldv_func_arg2#1.base, ldv_blk_make_request_5_#in~ldv_func_arg2#1.offset;ldv_blk_make_request_5_~ldv_func_arg3#1 := ldv_blk_make_request_5_#in~ldv_func_arg3#1;havoc ldv_blk_make_request_5_~tmp~29#1.base, ldv_blk_make_request_5_~tmp~29#1.offset;assume { :begin_inline_ldv_blk_make_request } true;ldv_blk_make_request_#in~mask#1 := ldv_blk_make_request_5_~ldv_func_arg3#1;havoc ldv_blk_make_request_#res#1.base, ldv_blk_make_request_#res#1.offset;havoc ldv_blk_make_request_#t~ret395#1.base, ldv_blk_make_request_#t~ret395#1.offset, ldv_blk_make_request_#t~ret396#1, ldv_blk_make_request_~mask#1, ldv_blk_make_request_~res~1#1.base, ldv_blk_make_request_~res~1#1.offset, ldv_blk_make_request_~tmp___0~14#1;ldv_blk_make_request_~mask#1 := ldv_blk_make_request_#in~mask#1;havoc ldv_blk_make_request_~res~1#1.base, ldv_blk_make_request_~res~1#1.offset;havoc ldv_blk_make_request_~tmp___0~14#1; {64933#true} is VALID [2022-02-20 22:06:32,663 INFO L290 TraceCheckUtils]: 106: Hoare triple {64933#true} assume !(0 != ~ldv_blk_rq~0); {64933#true} is VALID [2022-02-20 22:06:32,664 INFO L272 TraceCheckUtils]: 107: Hoare triple {64933#true} call ldv_blk_make_request_#t~ret395#1.base, ldv_blk_make_request_#t~ret395#1.offset := ldv_malloc(322); {65040#(and (= |old(#length)| |#length|) (= |old(#valid)| |#valid|))} is VALID [2022-02-20 22:06:32,664 INFO L290 TraceCheckUtils]: 108: Hoare triple {65040#(and (= |old(#length)| |#length|) (= |old(#valid)| |#valid|))} ~size := #in~size;havoc ~p~0.base, ~p~0.offset;havoc ~tmp~2.base, ~tmp~2.offset;havoc ~tmp___0~0;assume -2147483648 <= #t~nondet103 && #t~nondet103 <= 2147483647;~tmp___0~0 := #t~nondet103;havoc #t~nondet103; {64933#true} is VALID [2022-02-20 22:06:32,664 INFO L290 TraceCheckUtils]: 109: Hoare triple {64933#true} assume 0 != ~tmp___0~0;#res.base, #res.offset := 0, 0; {65044#(and (<= 0 |ldv_malloc_#res.base|) (<= |ldv_malloc_#res.offset| 0) (<= |ldv_malloc_#res.base| 0) (<= 0 |ldv_malloc_#res.offset|))} is VALID [2022-02-20 22:06:32,664 INFO L290 TraceCheckUtils]: 110: Hoare triple {65044#(and (<= 0 |ldv_malloc_#res.base|) (<= |ldv_malloc_#res.offset| 0) (<= |ldv_malloc_#res.base| 0) (<= 0 |ldv_malloc_#res.offset|))} assume true; {65044#(and (<= 0 |ldv_malloc_#res.base|) (<= |ldv_malloc_#res.offset| 0) (<= |ldv_malloc_#res.base| 0) (<= 0 |ldv_malloc_#res.offset|))} is VALID [2022-02-20 22:06:32,665 INFO L284 TraceCheckUtils]: 111: Hoare quadruple {65044#(and (<= 0 |ldv_malloc_#res.base|) (<= |ldv_malloc_#res.offset| 0) (<= |ldv_malloc_#res.base| 0) (<= 0 |ldv_malloc_#res.offset|))} {64933#true} #1164#return; {65003#(and (= |ULTIMATE.start_ldv_blk_make_request_#t~ret395#1.offset| 0) (= |ULTIMATE.start_ldv_blk_make_request_#t~ret395#1.base| 0))} is VALID [2022-02-20 22:06:32,666 INFO L290 TraceCheckUtils]: 112: Hoare triple {65003#(and (= |ULTIMATE.start_ldv_blk_make_request_#t~ret395#1.offset| 0) (= |ULTIMATE.start_ldv_blk_make_request_#t~ret395#1.base| 0))} ldv_blk_make_request_~res~1#1.base, ldv_blk_make_request_~res~1#1.offset := ldv_blk_make_request_#t~ret395#1.base, ldv_blk_make_request_#t~ret395#1.offset;havoc ldv_blk_make_request_#t~ret395#1.base, ldv_blk_make_request_#t~ret395#1.offset; {65004#(and (= |ULTIMATE.start_ldv_blk_make_request_~res~1#1.base| 0) (= |ULTIMATE.start_ldv_blk_make_request_~res~1#1.offset| 0))} is VALID [2022-02-20 22:06:32,666 INFO L290 TraceCheckUtils]: 113: Hoare triple {65004#(and (= |ULTIMATE.start_ldv_blk_make_request_~res~1#1.base| 0) (= |ULTIMATE.start_ldv_blk_make_request_~res~1#1.offset| 0))} assume !(0 == (ldv_blk_make_request_~res~1#1.base + ldv_blk_make_request_~res~1#1.offset) % 18446744073709551616); {64934#false} is VALID [2022-02-20 22:06:32,666 INFO L290 TraceCheckUtils]: 114: Hoare triple {64934#false} assume { :begin_inline_IS_ERR___0 } true;IS_ERR___0_#in~ptr#1.base, IS_ERR___0_#in~ptr#1.offset := ldv_blk_make_request_~res~1#1.base, ldv_blk_make_request_~res~1#1.offset;havoc IS_ERR___0_#res#1;havoc IS_ERR___0_#t~ret393#1, IS_ERR___0_~ptr#1.base, IS_ERR___0_~ptr#1.offset, IS_ERR___0_~tmp~31#1;IS_ERR___0_~ptr#1.base, IS_ERR___0_~ptr#1.offset := IS_ERR___0_#in~ptr#1.base, IS_ERR___0_#in~ptr#1.offset;havoc IS_ERR___0_~tmp~31#1; {64934#false} is VALID [2022-02-20 22:06:32,666 INFO L272 TraceCheckUtils]: 115: Hoare triple {64934#false} call IS_ERR___0_#t~ret393#1 := ldv__builtin_expect((if (IS_ERR___0_~ptr#1.base + IS_ERR___0_~ptr#1.offset) % 18446744073709551616 > 18446744073709547520 then 1 else 0), 0); {64933#true} is VALID [2022-02-20 22:06:32,666 INFO L290 TraceCheckUtils]: 116: Hoare triple {64933#true} ~exp := #in~exp;~c := #in~c;#res := ~exp; {64933#true} is VALID [2022-02-20 22:06:32,666 INFO L290 TraceCheckUtils]: 117: Hoare triple {64933#true} assume true; {64933#true} is VALID [2022-02-20 22:06:32,667 INFO L284 TraceCheckUtils]: 118: Hoare quadruple {64933#true} {64934#false} #1168#return; {64934#false} is VALID [2022-02-20 22:06:32,667 INFO L290 TraceCheckUtils]: 119: Hoare triple {64934#false} assume -9223372036854775808 <= IS_ERR___0_#t~ret393#1 && IS_ERR___0_#t~ret393#1 <= 9223372036854775807;IS_ERR___0_~tmp~31#1 := IS_ERR___0_#t~ret393#1;havoc IS_ERR___0_#t~ret393#1;IS_ERR___0_#res#1 := IS_ERR___0_~tmp~31#1; {64934#false} is VALID [2022-02-20 22:06:32,667 INFO L290 TraceCheckUtils]: 120: Hoare triple {64934#false} ldv_blk_make_request_#t~ret396#1 := IS_ERR___0_#res#1;assume { :end_inline_IS_ERR___0 } true;assume -9223372036854775808 <= ldv_blk_make_request_#t~ret396#1 && ldv_blk_make_request_#t~ret396#1 <= 9223372036854775807;ldv_blk_make_request_~tmp___0~14#1 := ldv_blk_make_request_#t~ret396#1;havoc ldv_blk_make_request_#t~ret396#1; {64934#false} is VALID [2022-02-20 22:06:32,667 INFO L290 TraceCheckUtils]: 121: Hoare triple {64934#false} assume 0 == ldv_blk_make_request_~tmp___0~14#1;~ldv_blk_rq~0 := 1; {64934#false} is VALID [2022-02-20 22:06:32,667 INFO L290 TraceCheckUtils]: 122: Hoare triple {64934#false} ldv_blk_make_request_#res#1.base, ldv_blk_make_request_#res#1.offset := ldv_blk_make_request_~res~1#1.base, ldv_blk_make_request_~res~1#1.offset; {64934#false} is VALID [2022-02-20 22:06:32,667 INFO L290 TraceCheckUtils]: 123: Hoare triple {64934#false} ldv_blk_make_request_5_#t~ret391#1.base, ldv_blk_make_request_5_#t~ret391#1.offset := ldv_blk_make_request_#res#1.base, ldv_blk_make_request_#res#1.offset;assume { :end_inline_ldv_blk_make_request } true;ldv_blk_make_request_5_~tmp~29#1.base, ldv_blk_make_request_5_~tmp~29#1.offset := ldv_blk_make_request_5_#t~ret391#1.base, ldv_blk_make_request_5_#t~ret391#1.offset;havoc ldv_blk_make_request_5_#t~ret391#1.base, ldv_blk_make_request_5_#t~ret391#1.offset;ldv_blk_make_request_5_#res#1.base, ldv_blk_make_request_5_#res#1.offset := ldv_blk_make_request_5_~tmp~29#1.base, ldv_blk_make_request_5_~tmp~29#1.offset; {64934#false} is VALID [2022-02-20 22:06:32,667 INFO L290 TraceCheckUtils]: 124: Hoare triple {64934#false} virtblk_get_id_#t~ret241#1.base, virtblk_get_id_#t~ret241#1.offset := ldv_blk_make_request_5_#res#1.base, ldv_blk_make_request_5_#res#1.offset;assume { :end_inline_ldv_blk_make_request_5 } true;virtblk_get_id_~req~1#1.base, virtblk_get_id_~req~1#1.offset := virtblk_get_id_#t~ret241#1.base, virtblk_get_id_#t~ret241#1.offset;havoc virtblk_get_id_#t~mem239#1.base, virtblk_get_id_#t~mem239#1.offset;havoc virtblk_get_id_#t~mem240#1.base, virtblk_get_id_#t~mem240#1.offset;havoc virtblk_get_id_#t~ret241#1.base, virtblk_get_id_#t~ret241#1.offset; {64934#false} is VALID [2022-02-20 22:06:32,667 INFO L272 TraceCheckUtils]: 125: Hoare triple {64934#false} call virtblk_get_id_#t~ret242#1 := IS_ERR(virtblk_get_id_~req~1#1.base, virtblk_get_id_~req~1#1.offset); {64933#true} is VALID [2022-02-20 22:06:32,667 INFO L290 TraceCheckUtils]: 126: Hoare triple {64933#true} ~ptr.base, ~ptr.offset := #in~ptr.base, #in~ptr.offset;havoc ~tmp~28; {64933#true} is VALID [2022-02-20 22:06:32,668 INFO L272 TraceCheckUtils]: 127: Hoare triple {64933#true} call #t~ret390 := ldv_is_err(~ptr.base, ~ptr.offset); {64933#true} is VALID [2022-02-20 22:06:32,668 INFO L290 TraceCheckUtils]: 128: Hoare triple {64933#true} ~ptr.base, ~ptr.offset := #in~ptr.base, #in~ptr.offset;#res := (if 0 == (if (~ptr.base + ~ptr.offset) % 18446744073709551616 > 2012 then 1 else 0) then 0 else 1); {64933#true} is VALID [2022-02-20 22:06:32,668 INFO L290 TraceCheckUtils]: 129: Hoare triple {64933#true} assume true; {64933#true} is VALID [2022-02-20 22:06:32,668 INFO L284 TraceCheckUtils]: 130: Hoare quadruple {64933#true} {64933#true} #1184#return; {64933#true} is VALID [2022-02-20 22:06:32,668 INFO L290 TraceCheckUtils]: 131: Hoare triple {64933#true} ~tmp~28 := #t~ret390;havoc #t~ret390;#res := ~tmp~28 % 256; {64933#true} is VALID [2022-02-20 22:06:32,668 INFO L290 TraceCheckUtils]: 132: Hoare triple {64933#true} assume true; {64933#true} is VALID [2022-02-20 22:06:32,668 INFO L284 TraceCheckUtils]: 133: Hoare quadruple {64933#true} {64934#false} #1170#return; {64934#false} is VALID [2022-02-20 22:06:32,668 INFO L290 TraceCheckUtils]: 134: Hoare triple {64934#false} assume -9223372036854775808 <= virtblk_get_id_#t~ret242#1 && virtblk_get_id_#t~ret242#1 <= 9223372036854775807;virtblk_get_id_~tmp___2~1#1 := virtblk_get_id_#t~ret242#1;havoc virtblk_get_id_#t~ret242#1; {64934#false} is VALID [2022-02-20 22:06:32,669 INFO L290 TraceCheckUtils]: 135: Hoare triple {64934#false} assume !(0 != virtblk_get_id_~tmp___2~1#1);call write~int(7, virtblk_get_id_~req~1#1.base, 64 + virtblk_get_id_~req~1#1.offset, 4);call virtblk_get_id_#t~mem244#1.base, virtblk_get_id_#t~mem244#1.offset := read~$Pointer$(virtblk_get_id_~vblk~2#1.base, 72 + virtblk_get_id_~vblk~2#1.offset, 8);call virtblk_get_id_#t~mem245#1.base, virtblk_get_id_#t~mem245#1.offset := read~$Pointer$(virtblk_get_id_#t~mem244#1.base, 1067 + virtblk_get_id_#t~mem244#1.offset, 8);call virtblk_get_id_#t~mem246#1.base, virtblk_get_id_#t~mem246#1.offset := read~$Pointer$(virtblk_get_id_~vblk~2#1.base, 72 + virtblk_get_id_~vblk~2#1.offset, 8);assume { :begin_inline_blk_execute_rq } true;blk_execute_rq_#in~arg0#1.base, blk_execute_rq_#in~arg0#1.offset, blk_execute_rq_#in~arg1#1.base, blk_execute_rq_#in~arg1#1.offset, blk_execute_rq_#in~arg2#1.base, blk_execute_rq_#in~arg2#1.offset, blk_execute_rq_#in~arg3#1 := virtblk_get_id_#t~mem245#1.base, virtblk_get_id_#t~mem245#1.offset, virtblk_get_id_#t~mem246#1.base, virtblk_get_id_#t~mem246#1.offset, virtblk_get_id_~req~1#1.base, virtblk_get_id_~req~1#1.offset, 0;havoc blk_execute_rq_#res#1;havoc blk_execute_rq_#t~nondet402#1, blk_execute_rq_~arg0#1.base, blk_execute_rq_~arg0#1.offset, blk_execute_rq_~arg1#1.base, blk_execute_rq_~arg1#1.offset, blk_execute_rq_~arg2#1.base, blk_execute_rq_~arg2#1.offset, blk_execute_rq_~arg3#1;blk_execute_rq_~arg0#1.base, blk_execute_rq_~arg0#1.offset := blk_execute_rq_#in~arg0#1.base, blk_execute_rq_#in~arg0#1.offset;blk_execute_rq_~arg1#1.base, blk_execute_rq_~arg1#1.offset := blk_execute_rq_#in~arg1#1.base, blk_execute_rq_#in~arg1#1.offset;blk_execute_rq_~arg2#1.base, blk_execute_rq_~arg2#1.offset := blk_execute_rq_#in~arg2#1.base, blk_execute_rq_#in~arg2#1.offset;blk_execute_rq_~arg3#1 := blk_execute_rq_#in~arg3#1;assume -2147483648 <= blk_execute_rq_#t~nondet402#1 && blk_execute_rq_#t~nondet402#1 <= 2147483647;blk_execute_rq_#res#1 := blk_execute_rq_#t~nondet402#1;havoc blk_execute_rq_#t~nondet402#1; {64934#false} is VALID [2022-02-20 22:06:32,669 INFO L290 TraceCheckUtils]: 136: Hoare triple {64934#false} virtblk_get_id_#t~ret247#1 := blk_execute_rq_#res#1;assume { :end_inline_blk_execute_rq } true;assume -2147483648 <= virtblk_get_id_#t~ret247#1 && virtblk_get_id_#t~ret247#1 <= 2147483647;virtblk_get_id_~tmp___3~1#1 := virtblk_get_id_#t~ret247#1;havoc virtblk_get_id_#t~mem244#1.base, virtblk_get_id_#t~mem244#1.offset;havoc virtblk_get_id_#t~mem245#1.base, virtblk_get_id_#t~mem245#1.offset;havoc virtblk_get_id_#t~mem246#1.base, virtblk_get_id_#t~mem246#1.offset;havoc virtblk_get_id_#t~ret247#1;virtblk_get_id_#res#1 := virtblk_get_id_~tmp___3~1#1; {64934#false} is VALID [2022-02-20 22:06:32,669 INFO L290 TraceCheckUtils]: 137: Hoare triple {64934#false} virtblk_ioctl_#t~ret250#1 := virtblk_get_id_#res#1;assume { :end_inline_virtblk_get_id } true;assume -2147483648 <= virtblk_ioctl_#t~ret250#1 && virtblk_ioctl_#t~ret250#1 <= 2147483647;virtblk_ioctl_~err~1#1 := virtblk_ioctl_#t~ret250#1;havoc virtblk_ioctl_#t~ret250#1; {64934#false} is VALID [2022-02-20 22:06:32,669 INFO L290 TraceCheckUtils]: 138: Hoare triple {64934#false} assume !(0 == virtblk_ioctl_~err~1#1); {64934#false} is VALID [2022-02-20 22:06:32,669 INFO L290 TraceCheckUtils]: 139: Hoare triple {64934#false} virtblk_ioctl_#res#1 := virtblk_ioctl_~err~1#1;call ULTIMATE.dealloc(virtblk_ioctl_~#id_str~0#1.base, virtblk_ioctl_~#id_str~0#1.offset);havoc virtblk_ioctl_~#id_str~0#1.base, virtblk_ioctl_~#id_str~0#1.offset; {64934#false} is VALID [2022-02-20 22:06:32,669 INFO L290 TraceCheckUtils]: 140: Hoare triple {64934#false} main_#t~ret386#1 := virtblk_ioctl_#res#1;assume { :end_inline_virtblk_ioctl } true;assume -2147483648 <= main_#t~ret386#1 && main_#t~ret386#1 <= 2147483647;havoc main_#t~mem384#1;havoc main_#t~mem385#1;havoc main_#t~ret386#1;~ldv_state_variable_2~0 := 1; {64934#false} is VALID [2022-02-20 22:06:32,669 INFO L290 TraceCheckUtils]: 141: Hoare triple {64934#false} assume -2147483648 <= main_#t~nondet374#1 && main_#t~nondet374#1 <= 2147483647;main_~tmp___0~12#1 := main_#t~nondet374#1;havoc main_#t~nondet374#1;main_#t~switch375#1 := 0 == main_~tmp___0~12#1; {64934#false} is VALID [2022-02-20 22:06:32,669 INFO L290 TraceCheckUtils]: 142: Hoare triple {64934#false} assume !main_#t~switch375#1;main_#t~switch375#1 := main_#t~switch375#1 || 1 == main_~tmp___0~12#1; {64934#false} is VALID [2022-02-20 22:06:32,670 INFO L290 TraceCheckUtils]: 143: Hoare triple {64934#false} assume main_#t~switch375#1; {64934#false} is VALID [2022-02-20 22:06:32,670 INFO L290 TraceCheckUtils]: 144: Hoare triple {64934#false} assume 0 != ~ldv_state_variable_0~0;assume -2147483648 <= main_#t~nondet379#1 && main_#t~nondet379#1 <= 2147483647;main_~tmp___2~4#1 := main_#t~nondet379#1;havoc main_#t~nondet379#1;main_#t~switch380#1 := 0 == main_~tmp___2~4#1; {64934#false} is VALID [2022-02-20 22:06:32,670 INFO L290 TraceCheckUtils]: 145: Hoare triple {64934#false} assume main_#t~switch380#1; {64934#false} is VALID [2022-02-20 22:06:32,670 INFO L290 TraceCheckUtils]: 146: Hoare triple {64934#false} assume 3 == ~ldv_state_variable_0~0 && 0 == ~ref_cnt~0;assume { :begin_inline_fini } true;assume { :begin_inline_unregister_blkdev } true;unregister_blkdev_#in~arg0#1, unregister_blkdev_#in~arg1#1.base, unregister_blkdev_#in~arg1#1.offset := ~major~0, 10, 0;havoc unregister_blkdev_~arg0#1, unregister_blkdev_~arg1#1.base, unregister_blkdev_~arg1#1.offset;unregister_blkdev_~arg0#1 := unregister_blkdev_#in~arg0#1;unregister_blkdev_~arg1#1.base, unregister_blkdev_~arg1#1.offset := unregister_blkdev_#in~arg1#1.base, unregister_blkdev_#in~arg1#1.offset; {64934#false} is VALID [2022-02-20 22:06:32,670 INFO L290 TraceCheckUtils]: 147: Hoare triple {64934#false} assume { :end_inline_unregister_blkdev } true;assume { :begin_inline_unregister_virtio_driver } true;unregister_virtio_driver_#in~arg0#1.base, unregister_virtio_driver_#in~arg0#1.offset := ~#virtio_blk~0.base, ~#virtio_blk~0.offset;havoc unregister_virtio_driver_~arg0#1.base, unregister_virtio_driver_~arg0#1.offset;unregister_virtio_driver_~arg0#1.base, unregister_virtio_driver_~arg0#1.offset := unregister_virtio_driver_#in~arg0#1.base, unregister_virtio_driver_#in~arg0#1.offset; {64934#false} is VALID [2022-02-20 22:06:32,670 INFO L290 TraceCheckUtils]: 148: Hoare triple {64934#false} assume { :end_inline_unregister_virtio_driver } true; {64934#false} is VALID [2022-02-20 22:06:32,670 INFO L290 TraceCheckUtils]: 149: Hoare triple {64934#false} assume { :end_inline_fini } true;~ldv_state_variable_0~0 := 2; {64934#false} is VALID [2022-02-20 22:06:32,670 INFO L290 TraceCheckUtils]: 150: Hoare triple {64934#false} assume { :begin_inline_ldv_check_final_state } true; {64934#false} is VALID [2022-02-20 22:06:32,670 INFO L290 TraceCheckUtils]: 151: Hoare triple {64934#false} assume 0 != ~ldv_blk_rq~0; {64934#false} is VALID [2022-02-20 22:06:32,671 INFO L272 TraceCheckUtils]: 152: Hoare triple {64934#false} call ldv_error(); {64934#false} is VALID [2022-02-20 22:06:32,671 INFO L290 TraceCheckUtils]: 153: Hoare triple {64934#false} assume !false; {64934#false} is VALID [2022-02-20 22:06:32,671 INFO L134 CoverageAnalysis]: Checked inductivity of 70 backedges. 10 proven. 0 refuted. 0 times theorem prover too weak. 60 trivial. 0 not checked. [2022-02-20 22:06:32,672 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 22:06:32,672 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1800474185] [2022-02-20 22:06:32,672 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1800474185] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 22:06:32,672 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 22:06:32,672 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-02-20 22:06:32,672 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [663827839] [2022-02-20 22:06:32,672 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 22:06:32,673 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 9.666666666666666) internal successors, (87), 4 states have internal predecessors, (87), 2 states have call successors, (14), 6 states have call predecessors, (14), 2 states have return successors, (13), 3 states have call predecessors, (13), 2 states have call successors, (13) Word has length 154 [2022-02-20 22:06:32,674 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 22:06:32,674 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 9 states, 9 states have (on average 9.666666666666666) internal successors, (87), 4 states have internal predecessors, (87), 2 states have call successors, (14), 6 states have call predecessors, (14), 2 states have return successors, (13), 3 states have call predecessors, (13), 2 states have call successors, (13) [2022-02-20 22:06:32,766 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 114 edges. 114 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 22:06:32,766 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-02-20 22:06:32,767 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 22:06:32,767 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-02-20 22:06:32,767 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=18, Invalid=54, Unknown=0, NotChecked=0, Total=72 [2022-02-20 22:06:32,767 INFO L87 Difference]: Start difference. First operand 3066 states and 4035 transitions. Second operand has 9 states, 9 states have (on average 9.666666666666666) internal successors, (87), 4 states have internal predecessors, (87), 2 states have call successors, (14), 6 states have call predecessors, (14), 2 states have return successors, (13), 3 states have call predecessors, (13), 2 states have call successors, (13) [2022-02-20 22:06:40,596 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 22:06:40,597 INFO L93 Difference]: Finished difference Result 7468 states and 10163 transitions. [2022-02-20 22:06:40,597 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-02-20 22:06:40,597 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 9.666666666666666) internal successors, (87), 4 states have internal predecessors, (87), 2 states have call successors, (14), 6 states have call predecessors, (14), 2 states have return successors, (13), 3 states have call predecessors, (13), 2 states have call successors, (13) Word has length 154 [2022-02-20 22:06:40,598 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 22:06:40,598 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 9.666666666666666) internal successors, (87), 4 states have internal predecessors, (87), 2 states have call successors, (14), 6 states have call predecessors, (14), 2 states have return successors, (13), 3 states have call predecessors, (13), 2 states have call successors, (13) [2022-02-20 22:06:40,608 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 1428 transitions. [2022-02-20 22:06:40,608 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 9.666666666666666) internal successors, (87), 4 states have internal predecessors, (87), 2 states have call successors, (14), 6 states have call predecessors, (14), 2 states have return successors, (13), 3 states have call predecessors, (13), 2 states have call successors, (13) [2022-02-20 22:06:40,618 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 1428 transitions. [2022-02-20 22:06:40,619 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 8 states and 1428 transitions. [2022-02-20 22:06:41,718 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 1428 edges. 1428 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 22:06:42,707 INFO L225 Difference]: With dead ends: 7468 [2022-02-20 22:06:42,708 INFO L226 Difference]: Without dead ends: 4422 [2022-02-20 22:06:42,743 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 45 GetRequests, 36 SyntacticMatches, 0 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 5 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=32, Invalid=78, Unknown=0, NotChecked=0, Total=110 [2022-02-20 22:06:42,745 INFO L933 BasicCegarLoop]: 553 mSDtfsCounter, 413 mSDsluCounter, 2133 mSDsCounter, 0 mSdLazyCounter, 1241 mSolverCounterSat, 287 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.6s Time, 0 mProtectedPredicate, 0 mProtectedAction, 441 SdHoareTripleChecker+Valid, 2686 SdHoareTripleChecker+Invalid, 1528 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 287 IncrementalHoareTripleChecker+Valid, 1241 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.6s IncrementalHoareTripleChecker+Time [2022-02-20 22:06:42,745 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [441 Valid, 2686 Invalid, 1528 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [287 Valid, 1241 Invalid, 0 Unknown, 0 Unchecked, 1.6s Time] [2022-02-20 22:06:42,748 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 4422 states. [2022-02-20 22:06:42,903 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 4422 to 3070. [2022-02-20 22:06:42,903 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 22:06:42,907 INFO L82 GeneralOperation]: Start isEquivalent. First operand 4422 states. Second operand has 3070 states, 2357 states have (on average 1.2596521001272805) internal successors, (2969), 2392 states have internal predecessors, (2969), 535 states have call successors, (535), 176 states have call predecessors, (535), 177 states have return successors, (549), 533 states have call predecessors, (549), 533 states have call successors, (549) [2022-02-20 22:06:42,911 INFO L74 IsIncluded]: Start isIncluded. First operand 4422 states. Second operand has 3070 states, 2357 states have (on average 1.2596521001272805) internal successors, (2969), 2392 states have internal predecessors, (2969), 535 states have call successors, (535), 176 states have call predecessors, (535), 177 states have return successors, (549), 533 states have call predecessors, (549), 533 states have call successors, (549) [2022-02-20 22:06:42,915 INFO L87 Difference]: Start difference. First operand 4422 states. Second operand has 3070 states, 2357 states have (on average 1.2596521001272805) internal successors, (2969), 2392 states have internal predecessors, (2969), 535 states have call successors, (535), 176 states have call predecessors, (535), 177 states have return successors, (549), 533 states have call predecessors, (549), 533 states have call successors, (549) [2022-02-20 22:06:43,547 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 22:06:43,547 INFO L93 Difference]: Finished difference Result 4422 states and 6149 transitions. [2022-02-20 22:06:43,547 INFO L276 IsEmpty]: Start isEmpty. Operand 4422 states and 6149 transitions. [2022-02-20 22:06:43,560 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 22:06:43,560 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 22:06:43,564 INFO L74 IsIncluded]: Start isIncluded. First operand has 3070 states, 2357 states have (on average 1.2596521001272805) internal successors, (2969), 2392 states have internal predecessors, (2969), 535 states have call successors, (535), 176 states have call predecessors, (535), 177 states have return successors, (549), 533 states have call predecessors, (549), 533 states have call successors, (549) Second operand 4422 states. [2022-02-20 22:06:43,571 INFO L87 Difference]: Start difference. First operand has 3070 states, 2357 states have (on average 1.2596521001272805) internal successors, (2969), 2392 states have internal predecessors, (2969), 535 states have call successors, (535), 176 states have call predecessors, (535), 177 states have return successors, (549), 533 states have call predecessors, (549), 533 states have call successors, (549) Second operand 4422 states. [2022-02-20 22:06:44,222 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 22:06:44,222 INFO L93 Difference]: Finished difference Result 4422 states and 6149 transitions. [2022-02-20 22:06:44,222 INFO L276 IsEmpty]: Start isEmpty. Operand 4422 states and 6149 transitions. [2022-02-20 22:06:44,235 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 22:06:44,235 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 22:06:44,235 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 22:06:44,235 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 22:06:44,240 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3070 states, 2357 states have (on average 1.2596521001272805) internal successors, (2969), 2392 states have internal predecessors, (2969), 535 states have call successors, (535), 176 states have call predecessors, (535), 177 states have return successors, (549), 533 states have call predecessors, (549), 533 states have call successors, (549) [2022-02-20 22:06:44,798 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3070 states to 3070 states and 4053 transitions. [2022-02-20 22:06:44,799 INFO L78 Accepts]: Start accepts. Automaton has 3070 states and 4053 transitions. Word has length 154 [2022-02-20 22:06:44,799 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 22:06:44,800 INFO L470 AbstractCegarLoop]: Abstraction has 3070 states and 4053 transitions. [2022-02-20 22:06:44,800 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 9 states have (on average 9.666666666666666) internal successors, (87), 4 states have internal predecessors, (87), 2 states have call successors, (14), 6 states have call predecessors, (14), 2 states have return successors, (13), 3 states have call predecessors, (13), 2 states have call successors, (13) [2022-02-20 22:06:44,800 INFO L276 IsEmpty]: Start isEmpty. Operand 3070 states and 4053 transitions. [2022-02-20 22:06:44,803 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 176 [2022-02-20 22:06:44,803 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 22:06:44,803 INFO L514 BasicCegarLoop]: trace histogram [5, 5, 5, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 22:06:44,803 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable5 [2022-02-20 22:06:44,803 INFO L402 AbstractCegarLoop]: === Iteration 7 === Targeting ldv_errorErr0ASSERT_VIOLATIONERROR_FUNCTION === [ldv_errorErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 22:06:44,804 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 22:06:44,804 INFO L85 PathProgramCache]: Analyzing trace with hash 999453106, now seen corresponding path program 1 times [2022-02-20 22:06:44,804 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 22:06:44,804 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1537769980] [2022-02-20 22:06:44,804 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 22:06:44,804 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 22:06:44,910 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 22:06:44,936 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2022-02-20 22:06:44,938 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 22:06:44,944 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 1 [2022-02-20 22:06:44,945 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 22:06:44,947 INFO L290 TraceCheckUtils]: 0: Hoare triple {89198#(= |#memory_int| |old(#memory_int)|)} #memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, #ptr.base); {89088#true} is VALID [2022-02-20 22:06:44,948 INFO L290 TraceCheckUtils]: 1: Hoare triple {89088#true} assume true; {89088#true} is VALID [2022-02-20 22:06:44,948 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {89088#true} {89088#true} #1074#return; {89088#true} is VALID [2022-02-20 22:06:44,948 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-02-20 22:06:44,949 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 22:06:44,951 INFO L290 TraceCheckUtils]: 0: Hoare triple {89088#true} ~cond := #in~cond; {89088#true} is VALID [2022-02-20 22:06:44,951 INFO L290 TraceCheckUtils]: 1: Hoare triple {89088#true} assume !(0 == ~cond); {89088#true} is VALID [2022-02-20 22:06:44,952 INFO L290 TraceCheckUtils]: 2: Hoare triple {89088#true} assume true; {89088#true} is VALID [2022-02-20 22:06:44,952 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {89088#true} {89088#true} #1076#return; {89088#true} is VALID [2022-02-20 22:06:44,952 INFO L290 TraceCheckUtils]: 0: Hoare triple {89190#(and (= |old(#length)| |#length|) (= |#memory_int| |old(#memory_int)|) (= |old(#valid)| |#valid|))} ~size := #in~size;havoc ~p~2.base, ~p~2.offset;havoc ~tmp~4.base, ~tmp~4.offset;call #t~malloc109.base, #t~malloc109.offset := #Ultimate.allocOnHeap(~size); {89088#true} is VALID [2022-02-20 22:06:44,953 INFO L272 TraceCheckUtils]: 1: Hoare triple {89088#true} call #Ultimate.meminit(#t~malloc109.base, #t~malloc109.offset, 1, ~size, ~size); {89198#(= |#memory_int| |old(#memory_int)|)} is VALID [2022-02-20 22:06:44,953 INFO L290 TraceCheckUtils]: 2: Hoare triple {89198#(= |#memory_int| |old(#memory_int)|)} #memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, #ptr.base); {89088#true} is VALID [2022-02-20 22:06:44,953 INFO L290 TraceCheckUtils]: 3: Hoare triple {89088#true} assume true; {89088#true} is VALID [2022-02-20 22:06:44,953 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {89088#true} {89088#true} #1074#return; {89088#true} is VALID [2022-02-20 22:06:44,953 INFO L290 TraceCheckUtils]: 5: Hoare triple {89088#true} ~tmp~4.base, ~tmp~4.offset := #t~malloc109.base, #t~malloc109.offset;~p~2.base, ~p~2.offset := ~tmp~4.base, ~tmp~4.offset; {89088#true} is VALID [2022-02-20 22:06:44,953 INFO L272 TraceCheckUtils]: 6: Hoare triple {89088#true} call assume_abort_if_not((if 0 != (~p~2.base + ~p~2.offset) % 18446744073709551616 then 1 else 0)); {89088#true} is VALID [2022-02-20 22:06:44,953 INFO L290 TraceCheckUtils]: 7: Hoare triple {89088#true} ~cond := #in~cond; {89088#true} is VALID [2022-02-20 22:06:44,953 INFO L290 TraceCheckUtils]: 8: Hoare triple {89088#true} assume !(0 == ~cond); {89088#true} is VALID [2022-02-20 22:06:44,954 INFO L290 TraceCheckUtils]: 9: Hoare triple {89088#true} assume true; {89088#true} is VALID [2022-02-20 22:06:44,954 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {89088#true} {89088#true} #1076#return; {89088#true} is VALID [2022-02-20 22:06:44,954 INFO L290 TraceCheckUtils]: 11: Hoare triple {89088#true} #res.base, #res.offset := ~p~2.base, ~p~2.offset; {89088#true} is VALID [2022-02-20 22:06:44,954 INFO L290 TraceCheckUtils]: 12: Hoare triple {89088#true} assume true; {89088#true} is VALID [2022-02-20 22:06:44,954 INFO L284 TraceCheckUtils]: 13: Hoare quadruple {89088#true} {89088#true} #1084#return; {89088#true} is VALID [2022-02-20 22:06:44,959 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 19 [2022-02-20 22:06:44,962 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 22:06:45,033 INFO L290 TraceCheckUtils]: 0: Hoare triple {89199#(and (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~s#1.base, ~s#1.offset := #in~s#1.base, #in~s#1.offset;~c#1 := #in~c#1;~n#1 := #in~n#1;havoc ~tmp~5#1.base, ~tmp~5#1.offset;assume { :begin_inline_#Ultimate.C_memset } true;#Ultimate.C_memset_#ptr#1.base, #Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#value#1, #Ultimate.C_memset_#amount#1 := ~s#1.base, ~s#1.offset, ~c#1, ~n#1;havoc #Ultimate.C_memset_#res#1.base, #Ultimate.C_memset_#res#1.offset;havoc #Ultimate.C_memset_#t~loopctr416#1;#Ultimate.C_memset_#t~loopctr416#1 := 0; {89200#(and (or (not (= (+ |ldv_memset_#Ultimate.C_memset_#amount#1| (- 8)) 0)) (and (<= |ldv_memset_#Ultimate.C_memset_#t~loopctr416#1| 0) (<= (div |ldv_memset_#Ultimate.C_memset_#amount#1| 18446744073709551616) (div |ldv_memset_#Ultimate.C_memset_#t~loopctr416#1| 18446744073709551616)))) (or (= (+ |ldv_memset_#Ultimate.C_memset_#amount#1| (- 8)) 0) (= |ldv_memset_#in~n#1| |ldv_memset_#Ultimate.C_memset_#amount#1|)))} is VALID [2022-02-20 22:06:45,034 INFO L290 TraceCheckUtils]: 1: Hoare triple {89200#(and (or (not (= (+ |ldv_memset_#Ultimate.C_memset_#amount#1| (- 8)) 0)) (and (<= |ldv_memset_#Ultimate.C_memset_#t~loopctr416#1| 0) (<= (div |ldv_memset_#Ultimate.C_memset_#amount#1| 18446744073709551616) (div |ldv_memset_#Ultimate.C_memset_#t~loopctr416#1| 18446744073709551616)))) (or (= (+ |ldv_memset_#Ultimate.C_memset_#amount#1| (- 8)) 0) (= |ldv_memset_#in~n#1| |ldv_memset_#Ultimate.C_memset_#amount#1|)))} assume !(#Ultimate.C_memset_#t~loopctr416#1 % 18446744073709551616 < #Ultimate.C_memset_#amount#1 % 18446744073709551616); {89201#(not (= 8 |ldv_memset_#in~n#1|))} is VALID [2022-02-20 22:06:45,034 INFO L290 TraceCheckUtils]: 2: Hoare triple {89201#(not (= 8 |ldv_memset_#in~n#1|))} assume #Ultimate.C_memset_#res#1.base == #Ultimate.C_memset_#ptr#1.base && #Ultimate.C_memset_#res#1.offset == #Ultimate.C_memset_#ptr#1.offset;#t~memset~res110#1.base, #t~memset~res110#1.offset := #Ultimate.C_memset_#res#1.base, #Ultimate.C_memset_#res#1.offset;assume { :end_inline_#Ultimate.C_memset } true;~tmp~5#1.base, ~tmp~5#1.offset := ~s#1.base, ~s#1.offset;havoc #t~memset~res110#1.base, #t~memset~res110#1.offset;#res#1.base, #res#1.offset := ~tmp~5#1.base, ~tmp~5#1.offset; {89201#(not (= 8 |ldv_memset_#in~n#1|))} is VALID [2022-02-20 22:06:45,035 INFO L290 TraceCheckUtils]: 3: Hoare triple {89201#(not (= 8 |ldv_memset_#in~n#1|))} assume true; {89201#(not (= 8 |ldv_memset_#in~n#1|))} is VALID [2022-02-20 22:06:45,035 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {89201#(not (= 8 |ldv_memset_#in~n#1|))} {89088#true} #1086#return; {89089#false} is VALID [2022-02-20 22:06:45,036 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 26 [2022-02-20 22:06:45,038 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 22:06:45,041 INFO L290 TraceCheckUtils]: 0: Hoare triple {89199#(and (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~s#1.base, ~s#1.offset := #in~s#1.base, #in~s#1.offset;~c#1 := #in~c#1;~n#1 := #in~n#1;havoc ~tmp~5#1.base, ~tmp~5#1.offset;assume { :begin_inline_#Ultimate.C_memset } true;#Ultimate.C_memset_#ptr#1.base, #Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#value#1, #Ultimate.C_memset_#amount#1 := ~s#1.base, ~s#1.offset, ~c#1, ~n#1;havoc #Ultimate.C_memset_#res#1.base, #Ultimate.C_memset_#res#1.offset;havoc #Ultimate.C_memset_#t~loopctr416#1;#Ultimate.C_memset_#t~loopctr416#1 := 0; {89088#true} is VALID [2022-02-20 22:06:45,041 INFO L290 TraceCheckUtils]: 1: Hoare triple {89088#true} assume !(#Ultimate.C_memset_#t~loopctr416#1 % 18446744073709551616 < #Ultimate.C_memset_#amount#1 % 18446744073709551616); {89088#true} is VALID [2022-02-20 22:06:45,041 INFO L290 TraceCheckUtils]: 2: Hoare triple {89088#true} assume #Ultimate.C_memset_#res#1.base == #Ultimate.C_memset_#ptr#1.base && #Ultimate.C_memset_#res#1.offset == #Ultimate.C_memset_#ptr#1.offset;#t~memset~res110#1.base, #t~memset~res110#1.offset := #Ultimate.C_memset_#res#1.base, #Ultimate.C_memset_#res#1.offset;assume { :end_inline_#Ultimate.C_memset } true;~tmp~5#1.base, ~tmp~5#1.offset := ~s#1.base, ~s#1.offset;havoc #t~memset~res110#1.base, #t~memset~res110#1.offset;#res#1.base, #res#1.offset := ~tmp~5#1.base, ~tmp~5#1.offset; {89088#true} is VALID [2022-02-20 22:06:45,042 INFO L290 TraceCheckUtils]: 3: Hoare triple {89088#true} assume true; {89088#true} is VALID [2022-02-20 22:06:45,042 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {89088#true} {89089#false} #1088#return; {89089#false} is VALID [2022-02-20 22:06:45,042 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 45 [2022-02-20 22:06:45,045 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 22:06:45,049 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 1 [2022-02-20 22:06:45,050 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 22:06:45,061 INFO L290 TraceCheckUtils]: 0: Hoare triple {89198#(= |#memory_int| |old(#memory_int)|)} #memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, #ptr.base); {89088#true} is VALID [2022-02-20 22:06:45,061 INFO L290 TraceCheckUtils]: 1: Hoare triple {89088#true} assume true; {89088#true} is VALID [2022-02-20 22:06:45,061 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {89088#true} {89088#true} #1074#return; {89088#true} is VALID [2022-02-20 22:06:45,061 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-02-20 22:06:45,062 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 22:06:45,065 INFO L290 TraceCheckUtils]: 0: Hoare triple {89088#true} ~cond := #in~cond; {89088#true} is VALID [2022-02-20 22:06:45,066 INFO L290 TraceCheckUtils]: 1: Hoare triple {89088#true} assume !(0 == ~cond); {89088#true} is VALID [2022-02-20 22:06:45,066 INFO L290 TraceCheckUtils]: 2: Hoare triple {89088#true} assume true; {89088#true} is VALID [2022-02-20 22:06:45,066 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {89088#true} {89088#true} #1076#return; {89088#true} is VALID [2022-02-20 22:06:45,066 INFO L290 TraceCheckUtils]: 0: Hoare triple {89190#(and (= |old(#length)| |#length|) (= |#memory_int| |old(#memory_int)|) (= |old(#valid)| |#valid|))} ~size := #in~size;havoc ~p~2.base, ~p~2.offset;havoc ~tmp~4.base, ~tmp~4.offset;call #t~malloc109.base, #t~malloc109.offset := #Ultimate.allocOnHeap(~size); {89088#true} is VALID [2022-02-20 22:06:45,067 INFO L272 TraceCheckUtils]: 1: Hoare triple {89088#true} call #Ultimate.meminit(#t~malloc109.base, #t~malloc109.offset, 1, ~size, ~size); {89198#(= |#memory_int| |old(#memory_int)|)} is VALID [2022-02-20 22:06:45,068 INFO L290 TraceCheckUtils]: 2: Hoare triple {89198#(= |#memory_int| |old(#memory_int)|)} #memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, #ptr.base); {89088#true} is VALID [2022-02-20 22:06:45,068 INFO L290 TraceCheckUtils]: 3: Hoare triple {89088#true} assume true; {89088#true} is VALID [2022-02-20 22:06:45,068 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {89088#true} {89088#true} #1074#return; {89088#true} is VALID [2022-02-20 22:06:45,068 INFO L290 TraceCheckUtils]: 5: Hoare triple {89088#true} ~tmp~4.base, ~tmp~4.offset := #t~malloc109.base, #t~malloc109.offset;~p~2.base, ~p~2.offset := ~tmp~4.base, ~tmp~4.offset; {89088#true} is VALID [2022-02-20 22:06:45,068 INFO L272 TraceCheckUtils]: 6: Hoare triple {89088#true} call assume_abort_if_not((if 0 != (~p~2.base + ~p~2.offset) % 18446744073709551616 then 1 else 0)); {89088#true} is VALID [2022-02-20 22:06:45,068 INFO L290 TraceCheckUtils]: 7: Hoare triple {89088#true} ~cond := #in~cond; {89088#true} is VALID [2022-02-20 22:06:45,068 INFO L290 TraceCheckUtils]: 8: Hoare triple {89088#true} assume !(0 == ~cond); {89088#true} is VALID [2022-02-20 22:06:45,069 INFO L290 TraceCheckUtils]: 9: Hoare triple {89088#true} assume true; {89088#true} is VALID [2022-02-20 22:06:45,069 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {89088#true} {89088#true} #1076#return; {89088#true} is VALID [2022-02-20 22:06:45,069 INFO L290 TraceCheckUtils]: 11: Hoare triple {89088#true} #res.base, #res.offset := ~p~2.base, ~p~2.offset; {89088#true} is VALID [2022-02-20 22:06:45,069 INFO L290 TraceCheckUtils]: 12: Hoare triple {89088#true} assume true; {89088#true} is VALID [2022-02-20 22:06:45,069 INFO L284 TraceCheckUtils]: 13: Hoare quadruple {89088#true} {89089#false} #1150#return; {89089#false} is VALID [2022-02-20 22:06:45,070 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 62 [2022-02-20 22:06:45,072 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 22:06:45,076 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 1 [2022-02-20 22:06:45,078 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 22:06:45,081 INFO L290 TraceCheckUtils]: 0: Hoare triple {89198#(= |#memory_int| |old(#memory_int)|)} #memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, #ptr.base); {89088#true} is VALID [2022-02-20 22:06:45,081 INFO L290 TraceCheckUtils]: 1: Hoare triple {89088#true} assume true; {89088#true} is VALID [2022-02-20 22:06:45,081 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {89088#true} {89088#true} #1074#return; {89088#true} is VALID [2022-02-20 22:06:45,081 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-02-20 22:06:45,082 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 22:06:45,085 INFO L290 TraceCheckUtils]: 0: Hoare triple {89088#true} ~cond := #in~cond; {89088#true} is VALID [2022-02-20 22:06:45,086 INFO L290 TraceCheckUtils]: 1: Hoare triple {89088#true} assume !(0 == ~cond); {89088#true} is VALID [2022-02-20 22:06:45,086 INFO L290 TraceCheckUtils]: 2: Hoare triple {89088#true} assume true; {89088#true} is VALID [2022-02-20 22:06:45,086 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {89088#true} {89088#true} #1076#return; {89088#true} is VALID [2022-02-20 22:06:45,086 INFO L290 TraceCheckUtils]: 0: Hoare triple {89190#(and (= |old(#length)| |#length|) (= |#memory_int| |old(#memory_int)|) (= |old(#valid)| |#valid|))} ~size := #in~size;havoc ~p~2.base, ~p~2.offset;havoc ~tmp~4.base, ~tmp~4.offset;call #t~malloc109.base, #t~malloc109.offset := #Ultimate.allocOnHeap(~size); {89088#true} is VALID [2022-02-20 22:06:45,087 INFO L272 TraceCheckUtils]: 1: Hoare triple {89088#true} call #Ultimate.meminit(#t~malloc109.base, #t~malloc109.offset, 1, ~size, ~size); {89198#(= |#memory_int| |old(#memory_int)|)} is VALID [2022-02-20 22:06:45,087 INFO L290 TraceCheckUtils]: 2: Hoare triple {89198#(= |#memory_int| |old(#memory_int)|)} #memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, #ptr.base); {89088#true} is VALID [2022-02-20 22:06:45,087 INFO L290 TraceCheckUtils]: 3: Hoare triple {89088#true} assume true; {89088#true} is VALID [2022-02-20 22:06:45,087 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {89088#true} {89088#true} #1074#return; {89088#true} is VALID [2022-02-20 22:06:45,087 INFO L290 TraceCheckUtils]: 5: Hoare triple {89088#true} ~tmp~4.base, ~tmp~4.offset := #t~malloc109.base, #t~malloc109.offset;~p~2.base, ~p~2.offset := ~tmp~4.base, ~tmp~4.offset; {89088#true} is VALID [2022-02-20 22:06:45,087 INFO L272 TraceCheckUtils]: 6: Hoare triple {89088#true} call assume_abort_if_not((if 0 != (~p~2.base + ~p~2.offset) % 18446744073709551616 then 1 else 0)); {89088#true} is VALID [2022-02-20 22:06:45,088 INFO L290 TraceCheckUtils]: 7: Hoare triple {89088#true} ~cond := #in~cond; {89088#true} is VALID [2022-02-20 22:06:45,088 INFO L290 TraceCheckUtils]: 8: Hoare triple {89088#true} assume !(0 == ~cond); {89088#true} is VALID [2022-02-20 22:06:45,088 INFO L290 TraceCheckUtils]: 9: Hoare triple {89088#true} assume true; {89088#true} is VALID [2022-02-20 22:06:45,088 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {89088#true} {89088#true} #1076#return; {89088#true} is VALID [2022-02-20 22:06:45,088 INFO L290 TraceCheckUtils]: 11: Hoare triple {89088#true} #res.base, #res.offset := ~p~2.base, ~p~2.offset; {89088#true} is VALID [2022-02-20 22:06:45,088 INFO L290 TraceCheckUtils]: 12: Hoare triple {89088#true} assume true; {89088#true} is VALID [2022-02-20 22:06:45,088 INFO L284 TraceCheckUtils]: 13: Hoare quadruple {89088#true} {89089#false} #1152#return; {89089#false} is VALID [2022-02-20 22:06:45,096 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 88 [2022-02-20 22:06:45,098 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 22:06:45,103 INFO L290 TraceCheckUtils]: 0: Hoare triple {89216#(and (= |old(#length)| |#length|) (= |old(#valid)| |#valid|))} ~size := #in~size;havoc ~p~0.base, ~p~0.offset;havoc ~tmp~2.base, ~tmp~2.offset;havoc ~tmp___0~0;assume -2147483648 <= #t~nondet103 && #t~nondet103 <= 2147483647;~tmp___0~0 := #t~nondet103;havoc #t~nondet103; {89088#true} is VALID [2022-02-20 22:06:45,104 INFO L290 TraceCheckUtils]: 1: Hoare triple {89088#true} assume 0 != ~tmp___0~0;#res.base, #res.offset := 0, 0; {89088#true} is VALID [2022-02-20 22:06:45,104 INFO L290 TraceCheckUtils]: 2: Hoare triple {89088#true} assume true; {89088#true} is VALID [2022-02-20 22:06:45,104 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {89088#true} {89089#false} #1156#return; {89089#false} is VALID [2022-02-20 22:06:45,104 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 95 [2022-02-20 22:06:45,107 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 22:06:45,111 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 1 [2022-02-20 22:06:45,113 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 22:06:45,116 INFO L290 TraceCheckUtils]: 0: Hoare triple {89088#true} ~ptr.base, ~ptr.offset := #in~ptr.base, #in~ptr.offset;#res := (if 0 == (if (~ptr.base + ~ptr.offset) % 18446744073709551616 > 2012 then 1 else 0) then 0 else 1); {89088#true} is VALID [2022-02-20 22:06:45,117 INFO L290 TraceCheckUtils]: 1: Hoare triple {89088#true} assume true; {89088#true} is VALID [2022-02-20 22:06:45,117 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {89088#true} {89088#true} #1184#return; {89088#true} is VALID [2022-02-20 22:06:45,117 INFO L290 TraceCheckUtils]: 0: Hoare triple {89088#true} ~ptr.base, ~ptr.offset := #in~ptr.base, #in~ptr.offset;havoc ~tmp~28; {89088#true} is VALID [2022-02-20 22:06:45,117 INFO L272 TraceCheckUtils]: 1: Hoare triple {89088#true} call #t~ret390 := ldv_is_err(~ptr.base, ~ptr.offset); {89088#true} is VALID [2022-02-20 22:06:45,117 INFO L290 TraceCheckUtils]: 2: Hoare triple {89088#true} ~ptr.base, ~ptr.offset := #in~ptr.base, #in~ptr.offset;#res := (if 0 == (if (~ptr.base + ~ptr.offset) % 18446744073709551616 > 2012 then 1 else 0) then 0 else 1); {89088#true} is VALID [2022-02-20 22:06:45,117 INFO L290 TraceCheckUtils]: 3: Hoare triple {89088#true} assume true; {89088#true} is VALID [2022-02-20 22:06:45,117 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {89088#true} {89088#true} #1184#return; {89088#true} is VALID [2022-02-20 22:06:45,118 INFO L290 TraceCheckUtils]: 5: Hoare triple {89088#true} ~tmp~28 := #t~ret390;havoc #t~ret390;#res := ~tmp~28 % 256; {89088#true} is VALID [2022-02-20 22:06:45,118 INFO L290 TraceCheckUtils]: 6: Hoare triple {89088#true} assume true; {89088#true} is VALID [2022-02-20 22:06:45,118 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {89088#true} {89089#false} #1158#return; {89089#false} is VALID [2022-02-20 22:06:45,118 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 107 [2022-02-20 22:06:45,122 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 22:06:45,127 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2022-02-20 22:06:45,128 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 22:06:45,131 INFO L290 TraceCheckUtils]: 0: Hoare triple {89088#true} ~cond := #in~cond; {89088#true} is VALID [2022-02-20 22:06:45,131 INFO L290 TraceCheckUtils]: 1: Hoare triple {89088#true} assume !(0 == ~cond); {89088#true} is VALID [2022-02-20 22:06:45,131 INFO L290 TraceCheckUtils]: 2: Hoare triple {89088#true} assume true; {89088#true} is VALID [2022-02-20 22:06:45,131 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {89088#true} {89088#true} #1078#return; {89088#true} is VALID [2022-02-20 22:06:45,131 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 7 [2022-02-20 22:06:45,134 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 22:06:45,137 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 1 [2022-02-20 22:06:45,139 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 22:06:45,142 INFO L290 TraceCheckUtils]: 0: Hoare triple {89088#true} ~ptr.base, ~ptr.offset := #in~ptr.base, #in~ptr.offset;#res := (if 0 == (if (~ptr.base + ~ptr.offset) % 18446744073709551616 > 2012 then 1 else 0) then 0 else 1); {89088#true} is VALID [2022-02-20 22:06:45,142 INFO L290 TraceCheckUtils]: 1: Hoare triple {89088#true} assume true; {89088#true} is VALID [2022-02-20 22:06:45,142 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {89088#true} {89088#true} #1184#return; {89088#true} is VALID [2022-02-20 22:06:45,142 INFO L290 TraceCheckUtils]: 0: Hoare triple {89088#true} ~ptr.base, ~ptr.offset := #in~ptr.base, #in~ptr.offset;havoc ~tmp~28; {89088#true} is VALID [2022-02-20 22:06:45,142 INFO L272 TraceCheckUtils]: 1: Hoare triple {89088#true} call #t~ret390 := ldv_is_err(~ptr.base, ~ptr.offset); {89088#true} is VALID [2022-02-20 22:06:45,143 INFO L290 TraceCheckUtils]: 2: Hoare triple {89088#true} ~ptr.base, ~ptr.offset := #in~ptr.base, #in~ptr.offset;#res := (if 0 == (if (~ptr.base + ~ptr.offset) % 18446744073709551616 > 2012 then 1 else 0) then 0 else 1); {89088#true} is VALID [2022-02-20 22:06:45,143 INFO L290 TraceCheckUtils]: 3: Hoare triple {89088#true} assume true; {89088#true} is VALID [2022-02-20 22:06:45,143 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {89088#true} {89088#true} #1184#return; {89088#true} is VALID [2022-02-20 22:06:45,143 INFO L290 TraceCheckUtils]: 5: Hoare triple {89088#true} ~tmp~28 := #t~ret390;havoc #t~ret390;#res := ~tmp~28 % 256; {89088#true} is VALID [2022-02-20 22:06:45,143 INFO L290 TraceCheckUtils]: 6: Hoare triple {89088#true} assume true; {89088#true} is VALID [2022-02-20 22:06:45,143 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {89088#true} {89088#true} #1080#return; {89088#true} is VALID [2022-02-20 22:06:45,143 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 17 [2022-02-20 22:06:45,144 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 22:06:45,147 INFO L290 TraceCheckUtils]: 0: Hoare triple {89088#true} ~cond := #in~cond; {89088#true} is VALID [2022-02-20 22:06:45,147 INFO L290 TraceCheckUtils]: 1: Hoare triple {89088#true} assume !(0 == ~cond); {89088#true} is VALID [2022-02-20 22:06:45,147 INFO L290 TraceCheckUtils]: 2: Hoare triple {89088#true} assume true; {89088#true} is VALID [2022-02-20 22:06:45,148 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {89088#true} {89088#true} #1082#return; {89088#true} is VALID [2022-02-20 22:06:45,148 INFO L290 TraceCheckUtils]: 0: Hoare triple {89216#(and (= |old(#length)| |#length|) (= |old(#valid)| |#valid|))} ~size := #in~size;havoc ~p~0.base, ~p~0.offset;havoc ~tmp~2.base, ~tmp~2.offset;havoc ~tmp___0~0;assume -2147483648 <= #t~nondet103 && #t~nondet103 <= 2147483647;~tmp___0~0 := #t~nondet103;havoc #t~nondet103; {89088#true} is VALID [2022-02-20 22:06:45,148 INFO L290 TraceCheckUtils]: 1: Hoare triple {89088#true} assume !(0 != ~tmp___0~0);call #t~malloc104.base, #t~malloc104.offset := #Ultimate.allocOnHeap(~size);~tmp~2.base, ~tmp~2.offset := #t~malloc104.base, #t~malloc104.offset;havoc #t~malloc104.base, #t~malloc104.offset;~p~0.base, ~p~0.offset := ~tmp~2.base, ~tmp~2.offset; {89088#true} is VALID [2022-02-20 22:06:45,148 INFO L272 TraceCheckUtils]: 2: Hoare triple {89088#true} call assume_abort_if_not((if 0 != (~p~0.base + ~p~0.offset) % 18446744073709551616 then 1 else 0)); {89088#true} is VALID [2022-02-20 22:06:45,148 INFO L290 TraceCheckUtils]: 3: Hoare triple {89088#true} ~cond := #in~cond; {89088#true} is VALID [2022-02-20 22:06:45,148 INFO L290 TraceCheckUtils]: 4: Hoare triple {89088#true} assume !(0 == ~cond); {89088#true} is VALID [2022-02-20 22:06:45,148 INFO L290 TraceCheckUtils]: 5: Hoare triple {89088#true} assume true; {89088#true} is VALID [2022-02-20 22:06:45,148 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {89088#true} {89088#true} #1078#return; {89088#true} is VALID [2022-02-20 22:06:45,149 INFO L272 TraceCheckUtils]: 7: Hoare triple {89088#true} call #t~ret105 := IS_ERR(~p~0.base, ~p~0.offset); {89088#true} is VALID [2022-02-20 22:06:45,149 INFO L290 TraceCheckUtils]: 8: Hoare triple {89088#true} ~ptr.base, ~ptr.offset := #in~ptr.base, #in~ptr.offset;havoc ~tmp~28; {89088#true} is VALID [2022-02-20 22:06:45,149 INFO L272 TraceCheckUtils]: 9: Hoare triple {89088#true} call #t~ret390 := ldv_is_err(~ptr.base, ~ptr.offset); {89088#true} is VALID [2022-02-20 22:06:45,149 INFO L290 TraceCheckUtils]: 10: Hoare triple {89088#true} ~ptr.base, ~ptr.offset := #in~ptr.base, #in~ptr.offset;#res := (if 0 == (if (~ptr.base + ~ptr.offset) % 18446744073709551616 > 2012 then 1 else 0) then 0 else 1); {89088#true} is VALID [2022-02-20 22:06:45,149 INFO L290 TraceCheckUtils]: 11: Hoare triple {89088#true} assume true; {89088#true} is VALID [2022-02-20 22:06:45,149 INFO L284 TraceCheckUtils]: 12: Hoare quadruple {89088#true} {89088#true} #1184#return; {89088#true} is VALID [2022-02-20 22:06:45,149 INFO L290 TraceCheckUtils]: 13: Hoare triple {89088#true} ~tmp~28 := #t~ret390;havoc #t~ret390;#res := ~tmp~28 % 256; {89088#true} is VALID [2022-02-20 22:06:45,149 INFO L290 TraceCheckUtils]: 14: Hoare triple {89088#true} assume true; {89088#true} is VALID [2022-02-20 22:06:45,150 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {89088#true} {89088#true} #1080#return; {89088#true} is VALID [2022-02-20 22:06:45,150 INFO L290 TraceCheckUtils]: 16: Hoare triple {89088#true} assume -9223372036854775808 <= #t~ret105 && #t~ret105 <= 9223372036854775807; {89088#true} is VALID [2022-02-20 22:06:45,150 INFO L272 TraceCheckUtils]: 17: Hoare triple {89088#true} call assume_abort_if_not((if 0 == #t~ret105 then 1 else 0)); {89088#true} is VALID [2022-02-20 22:06:45,150 INFO L290 TraceCheckUtils]: 18: Hoare triple {89088#true} ~cond := #in~cond; {89088#true} is VALID [2022-02-20 22:06:45,150 INFO L290 TraceCheckUtils]: 19: Hoare triple {89088#true} assume !(0 == ~cond); {89088#true} is VALID [2022-02-20 22:06:45,150 INFO L290 TraceCheckUtils]: 20: Hoare triple {89088#true} assume true; {89088#true} is VALID [2022-02-20 22:06:45,150 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {89088#true} {89088#true} #1082#return; {89088#true} is VALID [2022-02-20 22:06:45,150 INFO L290 TraceCheckUtils]: 22: Hoare triple {89088#true} havoc #t~ret105;#res.base, #res.offset := ~p~0.base, ~p~0.offset; {89088#true} is VALID [2022-02-20 22:06:45,151 INFO L290 TraceCheckUtils]: 23: Hoare triple {89088#true} assume true; {89088#true} is VALID [2022-02-20 22:06:45,151 INFO L284 TraceCheckUtils]: 24: Hoare quadruple {89088#true} {89089#false} #1164#return; {89089#false} is VALID [2022-02-20 22:06:45,151 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 136 [2022-02-20 22:06:45,152 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 22:06:45,155 INFO L290 TraceCheckUtils]: 0: Hoare triple {89088#true} ~exp := #in~exp;~c := #in~c;#res := ~exp; {89088#true} is VALID [2022-02-20 22:06:45,155 INFO L290 TraceCheckUtils]: 1: Hoare triple {89088#true} assume true; {89088#true} is VALID [2022-02-20 22:06:45,155 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {89088#true} {89089#false} #1168#return; {89089#false} is VALID [2022-02-20 22:06:45,155 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 146 [2022-02-20 22:06:45,158 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 22:06:45,161 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 1 [2022-02-20 22:06:45,161 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 22:06:45,164 INFO L290 TraceCheckUtils]: 0: Hoare triple {89088#true} ~ptr.base, ~ptr.offset := #in~ptr.base, #in~ptr.offset;#res := (if 0 == (if (~ptr.base + ~ptr.offset) % 18446744073709551616 > 2012 then 1 else 0) then 0 else 1); {89088#true} is VALID [2022-02-20 22:06:45,165 INFO L290 TraceCheckUtils]: 1: Hoare triple {89088#true} assume true; {89088#true} is VALID [2022-02-20 22:06:45,165 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {89088#true} {89088#true} #1184#return; {89088#true} is VALID [2022-02-20 22:06:45,165 INFO L290 TraceCheckUtils]: 0: Hoare triple {89088#true} ~ptr.base, ~ptr.offset := #in~ptr.base, #in~ptr.offset;havoc ~tmp~28; {89088#true} is VALID [2022-02-20 22:06:45,165 INFO L272 TraceCheckUtils]: 1: Hoare triple {89088#true} call #t~ret390 := ldv_is_err(~ptr.base, ~ptr.offset); {89088#true} is VALID [2022-02-20 22:06:45,165 INFO L290 TraceCheckUtils]: 2: Hoare triple {89088#true} ~ptr.base, ~ptr.offset := #in~ptr.base, #in~ptr.offset;#res := (if 0 == (if (~ptr.base + ~ptr.offset) % 18446744073709551616 > 2012 then 1 else 0) then 0 else 1); {89088#true} is VALID [2022-02-20 22:06:45,165 INFO L290 TraceCheckUtils]: 3: Hoare triple {89088#true} assume true; {89088#true} is VALID [2022-02-20 22:06:45,165 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {89088#true} {89088#true} #1184#return; {89088#true} is VALID [2022-02-20 22:06:45,166 INFO L290 TraceCheckUtils]: 5: Hoare triple {89088#true} ~tmp~28 := #t~ret390;havoc #t~ret390;#res := ~tmp~28 % 256; {89088#true} is VALID [2022-02-20 22:06:45,166 INFO L290 TraceCheckUtils]: 6: Hoare triple {89088#true} assume true; {89088#true} is VALID [2022-02-20 22:06:45,166 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {89088#true} {89089#false} #1170#return; {89089#false} is VALID [2022-02-20 22:06:45,166 INFO L290 TraceCheckUtils]: 0: Hoare triple {89088#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(95, 2);call #Ultimate.allocInit(22, 3);call #Ultimate.allocInit(9, 4);call #Ultimate.allocInit(5, 5);call write~init~int(118, 5, 0, 1);call write~init~int(100, 5, 1, 1);call write~init~int(37, 5, 2, 1);call write~init~int(99, 5, 3, 1);call write~init~int(0, 5, 4, 1);call #Ultimate.allocInit(7, 6);call write~init~int(118, 6, 0, 1);call write~init~int(100, 6, 1, 1);call write~init~int(37, 6, 2, 1);call write~init~int(99, 6, 3, 1);call write~init~int(37, 6, 4, 1);call write~init~int(99, 6, 5, 1);call write~init~int(0, 6, 6, 1);call #Ultimate.allocInit(9, 7);call #Ultimate.allocInit(11, 8);call #Ultimate.allocInit(8, 9);call #Ultimate.allocInit(8, 10);~LDV_IN_INTERRUPT~0 := 1;~virtblk_fops_group0~0.base, ~virtblk_fops_group0~0.offset := 0, 0;~ldv_state_variable_2~0 := 0;~ref_cnt~0 := 0;~ldv_state_variable_1~0 := 0;~virtio_blk_group0~0.base, ~virtio_blk_group0~0.offset := 0, 0;~ldv_state_variable_0~0 := 0;~major~0 := 0;~index~0 := 0;~#virtblk_fops~0.base, ~#virtblk_fops~0.offset := 11, 0;call #Ultimate.allocInit(96, 11);call write~init~$Pointer$(0, 0, ~#virtblk_fops~0.base, ~#virtblk_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtblk_fops~0.base, 8 + ~#virtblk_fops~0.offset, 8);call write~init~$Pointer$(#funAddr~virtblk_ioctl.base, #funAddr~virtblk_ioctl.offset, ~#virtblk_fops~0.base, 16 + ~#virtblk_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtblk_fops~0.base, 24 + ~#virtblk_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtblk_fops~0.base, 32 + ~#virtblk_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtblk_fops~0.base, 40 + ~#virtblk_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtblk_fops~0.base, 48 + ~#virtblk_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtblk_fops~0.base, 56 + ~#virtblk_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtblk_fops~0.base, 64 + ~#virtblk_fops~0.offset, 8);call write~init~$Pointer$(#funAddr~virtblk_getgeo.base, #funAddr~virtblk_getgeo.offset, ~#virtblk_fops~0.base, 72 + ~#virtblk_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtblk_fops~0.base, 80 + ~#virtblk_fops~0.offset, 8);call write~init~$Pointer$(~#__this_module~0.base, ~#__this_module~0.offset, ~#virtblk_fops~0.base, 88 + ~#virtblk_fops~0.offset, 8);~#id_table~0.base, ~#id_table~0.offset := 12, 0;call #Ultimate.allocInit(16, 12);call write~init~int(2, ~#id_table~0.base, ~#id_table~0.offset, 4);call write~init~int(4294967295, ~#id_table~0.base, 4 + ~#id_table~0.offset, 4);call write~init~int(0, ~#id_table~0.base, 8 + ~#id_table~0.offset, 4);call write~init~int(0, ~#id_table~0.base, 12 + ~#id_table~0.offset, 4);~#features~0.base, ~#features~0.offset := 13, 0;call #Ultimate.allocInit(36, 13);call write~init~int(0, ~#features~0.base, ~#features~0.offset, 4);call write~init~int(2, ~#features~0.base, 4 + ~#features~0.offset, 4);call write~init~int(1, ~#features~0.base, 8 + ~#features~0.offset, 4);call write~init~int(4, ~#features~0.base, 12 + ~#features~0.offset, 4);call write~init~int(5, ~#features~0.base, 16 + ~#features~0.offset, 4);call write~init~int(6, ~#features~0.base, 20 + ~#features~0.offset, 4);call write~init~int(7, ~#features~0.base, 24 + ~#features~0.offset, 4);call write~init~int(9, ~#features~0.base, 28 + ~#features~0.offset, 4);call write~init~int(10, ~#features~0.base, 32 + ~#features~0.offset, 4);~#virtio_blk~0.base, ~#virtio_blk~0.offset := 14, 0;call #Ultimate.allocInit(141, 14);call write~init~$Pointer$(8, 0, ~#virtio_blk~0.base, ~#virtio_blk~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtio_blk~0.base, 8 + ~#virtio_blk~0.offset, 8);call write~init~$Pointer$(~#__this_module~0.base, ~#__this_module~0.offset, ~#virtio_blk~0.base, 16 + ~#virtio_blk~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtio_blk~0.base, 24 + ~#virtio_blk~0.offset, 8);call write~init~int(0, ~#virtio_blk~0.base, 32 + ~#virtio_blk~0.offset, 1);call write~init~$Pointer$(0, 0, ~#virtio_blk~0.base, 33 + ~#virtio_blk~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtio_blk~0.base, 41 + ~#virtio_blk~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtio_blk~0.base, 49 + ~#virtio_blk~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtio_blk~0.base, 57 + ~#virtio_blk~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtio_blk~0.base, 65 + ~#virtio_blk~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtio_blk~0.base, 73 + ~#virtio_blk~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtio_blk~0.base, 81 + ~#virtio_blk~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtio_blk~0.base, 89 + ~#virtio_blk~0.offset, 8);call write~init~$Pointer$(~#id_table~0.base, ~#id_table~0.offset, ~#virtio_blk~0.base, 97 + ~#virtio_blk~0.offset, 8);call write~init~$Pointer$(~#features~0.base, ~#features~0.offset, ~#virtio_blk~0.base, 105 + ~#virtio_blk~0.offset, 8);call write~init~int(9, ~#virtio_blk~0.base, 113 + ~#virtio_blk~0.offset, 4);call write~init~$Pointer$(#funAddr~virtblk_probe.base, #funAddr~virtblk_probe.offset, ~#virtio_blk~0.base, 117 + ~#virtio_blk~0.offset, 8);call write~init~$Pointer$(#funAddr~virtblk_remove.base, #funAddr~virtblk_remove.offset, ~#virtio_blk~0.base, 125 + ~#virtio_blk~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtio_blk~0.base, 133 + ~#virtio_blk~0.offset, 8);~__mod_virtio_device_table~0.device := 0;~__mod_virtio_device_table~0.vendor := 0;~ldv_retval_0~0 := 0;~ldv_retval_1~0 := 0;~ldv_blk_rq~0 := 0; {89088#true} is VALID [2022-02-20 22:06:45,166 INFO L290 TraceCheckUtils]: 1: Hoare triple {89088#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret370#1.base, main_#t~ret370#1.offset, main_#t~ret371#1.base, main_#t~ret371#1.offset, main_#t~ret372#1.base, main_#t~ret372#1.offset, main_#t~nondet373#1, main_#t~nondet374#1, main_#t~switch375#1, main_#t~nondet376#1, main_#t~switch377#1, main_#t~ret378#1, main_#t~nondet379#1, main_#t~switch380#1, main_#t~ret381#1, main_#t~nondet382#1, main_#t~switch383#1, main_#t~mem384#1, main_#t~mem385#1, main_#t~ret386#1, main_#t~ret387#1, main_~#ldvarg1~0#1.base, main_~#ldvarg1~0#1.offset, main_~#ldvarg3~0#1.base, main_~#ldvarg3~0#1.offset, main_~ldvarg0~0#1.base, main_~ldvarg0~0#1.offset, main_~tmp~25#1.base, main_~tmp~25#1.offset, main_~ldvarg2~0#1, main_~tmp___0~12#1, main_~tmp___1~7#1, main_~tmp___2~4#1, main_~tmp___3~3#1;call main_~#ldvarg1~0#1.base, main_~#ldvarg1~0#1.offset := #Ultimate.allocOnStack(8);call main_~#ldvarg3~0#1.base, main_~#ldvarg3~0#1.offset := #Ultimate.allocOnStack(4);havoc main_~ldvarg0~0#1.base, main_~ldvarg0~0#1.offset;havoc main_~tmp~25#1.base, main_~tmp~25#1.offset;havoc main_~ldvarg2~0#1;havoc main_~tmp___0~12#1;havoc main_~tmp___1~7#1;havoc main_~tmp___2~4#1;havoc main_~tmp___3~3#1; {89088#true} is VALID [2022-02-20 22:06:45,167 INFO L272 TraceCheckUtils]: 2: Hoare triple {89088#true} call main_#t~ret370#1.base, main_#t~ret370#1.offset := ldv_init_zalloc(16); {89190#(and (= |old(#length)| |#length|) (= |#memory_int| |old(#memory_int)|) (= |old(#valid)| |#valid|))} is VALID [2022-02-20 22:06:45,167 INFO L290 TraceCheckUtils]: 3: Hoare triple {89190#(and (= |old(#length)| |#length|) (= |#memory_int| |old(#memory_int)|) (= |old(#valid)| |#valid|))} ~size := #in~size;havoc ~p~2.base, ~p~2.offset;havoc ~tmp~4.base, ~tmp~4.offset;call #t~malloc109.base, #t~malloc109.offset := #Ultimate.allocOnHeap(~size); {89088#true} is VALID [2022-02-20 22:06:45,168 INFO L272 TraceCheckUtils]: 4: Hoare triple {89088#true} call #Ultimate.meminit(#t~malloc109.base, #t~malloc109.offset, 1, ~size, ~size); {89198#(= |#memory_int| |old(#memory_int)|)} is VALID [2022-02-20 22:06:45,168 INFO L290 TraceCheckUtils]: 5: Hoare triple {89198#(= |#memory_int| |old(#memory_int)|)} #memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, #ptr.base); {89088#true} is VALID [2022-02-20 22:06:45,168 INFO L290 TraceCheckUtils]: 6: Hoare triple {89088#true} assume true; {89088#true} is VALID [2022-02-20 22:06:45,168 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {89088#true} {89088#true} #1074#return; {89088#true} is VALID [2022-02-20 22:06:45,168 INFO L290 TraceCheckUtils]: 8: Hoare triple {89088#true} ~tmp~4.base, ~tmp~4.offset := #t~malloc109.base, #t~malloc109.offset;~p~2.base, ~p~2.offset := ~tmp~4.base, ~tmp~4.offset; {89088#true} is VALID [2022-02-20 22:06:45,168 INFO L272 TraceCheckUtils]: 9: Hoare triple {89088#true} call assume_abort_if_not((if 0 != (~p~2.base + ~p~2.offset) % 18446744073709551616 then 1 else 0)); {89088#true} is VALID [2022-02-20 22:06:45,168 INFO L290 TraceCheckUtils]: 10: Hoare triple {89088#true} ~cond := #in~cond; {89088#true} is VALID [2022-02-20 22:06:45,168 INFO L290 TraceCheckUtils]: 11: Hoare triple {89088#true} assume !(0 == ~cond); {89088#true} is VALID [2022-02-20 22:06:45,169 INFO L290 TraceCheckUtils]: 12: Hoare triple {89088#true} assume true; {89088#true} is VALID [2022-02-20 22:06:45,169 INFO L284 TraceCheckUtils]: 13: Hoare quadruple {89088#true} {89088#true} #1076#return; {89088#true} is VALID [2022-02-20 22:06:45,169 INFO L290 TraceCheckUtils]: 14: Hoare triple {89088#true} #res.base, #res.offset := ~p~2.base, ~p~2.offset; {89088#true} is VALID [2022-02-20 22:06:45,169 INFO L290 TraceCheckUtils]: 15: Hoare triple {89088#true} assume true; {89088#true} is VALID [2022-02-20 22:06:45,169 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {89088#true} {89088#true} #1084#return; {89088#true} is VALID [2022-02-20 22:06:45,169 INFO L290 TraceCheckUtils]: 17: Hoare triple {89088#true} main_~tmp~25#1.base, main_~tmp~25#1.offset := main_#t~ret370#1.base, main_#t~ret370#1.offset;havoc main_#t~ret370#1.base, main_#t~ret370#1.offset;main_~ldvarg0~0#1.base, main_~ldvarg0~0#1.offset := main_~tmp~25#1.base, main_~tmp~25#1.offset;assume { :begin_inline_ldv_initialize } true; {89088#true} is VALID [2022-02-20 22:06:45,169 INFO L290 TraceCheckUtils]: 18: Hoare triple {89088#true} assume { :end_inline_ldv_initialize } true; {89088#true} is VALID [2022-02-20 22:06:45,170 INFO L272 TraceCheckUtils]: 19: Hoare triple {89088#true} call main_#t~ret371#1.base, main_#t~ret371#1.offset := ldv_memset(main_~#ldvarg1~0#1.base, main_~#ldvarg1~0#1.offset, 0, 8); {89199#(and (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2022-02-20 22:06:45,171 INFO L290 TraceCheckUtils]: 20: Hoare triple {89199#(and (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~s#1.base, ~s#1.offset := #in~s#1.base, #in~s#1.offset;~c#1 := #in~c#1;~n#1 := #in~n#1;havoc ~tmp~5#1.base, ~tmp~5#1.offset;assume { :begin_inline_#Ultimate.C_memset } true;#Ultimate.C_memset_#ptr#1.base, #Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#value#1, #Ultimate.C_memset_#amount#1 := ~s#1.base, ~s#1.offset, ~c#1, ~n#1;havoc #Ultimate.C_memset_#res#1.base, #Ultimate.C_memset_#res#1.offset;havoc #Ultimate.C_memset_#t~loopctr416#1;#Ultimate.C_memset_#t~loopctr416#1 := 0; {89200#(and (or (not (= (+ |ldv_memset_#Ultimate.C_memset_#amount#1| (- 8)) 0)) (and (<= |ldv_memset_#Ultimate.C_memset_#t~loopctr416#1| 0) (<= (div |ldv_memset_#Ultimate.C_memset_#amount#1| 18446744073709551616) (div |ldv_memset_#Ultimate.C_memset_#t~loopctr416#1| 18446744073709551616)))) (or (= (+ |ldv_memset_#Ultimate.C_memset_#amount#1| (- 8)) 0) (= |ldv_memset_#in~n#1| |ldv_memset_#Ultimate.C_memset_#amount#1|)))} is VALID [2022-02-20 22:06:45,171 INFO L290 TraceCheckUtils]: 21: Hoare triple {89200#(and (or (not (= (+ |ldv_memset_#Ultimate.C_memset_#amount#1| (- 8)) 0)) (and (<= |ldv_memset_#Ultimate.C_memset_#t~loopctr416#1| 0) (<= (div |ldv_memset_#Ultimate.C_memset_#amount#1| 18446744073709551616) (div |ldv_memset_#Ultimate.C_memset_#t~loopctr416#1| 18446744073709551616)))) (or (= (+ |ldv_memset_#Ultimate.C_memset_#amount#1| (- 8)) 0) (= |ldv_memset_#in~n#1| |ldv_memset_#Ultimate.C_memset_#amount#1|)))} assume !(#Ultimate.C_memset_#t~loopctr416#1 % 18446744073709551616 < #Ultimate.C_memset_#amount#1 % 18446744073709551616); {89201#(not (= 8 |ldv_memset_#in~n#1|))} is VALID [2022-02-20 22:06:45,172 INFO L290 TraceCheckUtils]: 22: Hoare triple {89201#(not (= 8 |ldv_memset_#in~n#1|))} assume #Ultimate.C_memset_#res#1.base == #Ultimate.C_memset_#ptr#1.base && #Ultimate.C_memset_#res#1.offset == #Ultimate.C_memset_#ptr#1.offset;#t~memset~res110#1.base, #t~memset~res110#1.offset := #Ultimate.C_memset_#res#1.base, #Ultimate.C_memset_#res#1.offset;assume { :end_inline_#Ultimate.C_memset } true;~tmp~5#1.base, ~tmp~5#1.offset := ~s#1.base, ~s#1.offset;havoc #t~memset~res110#1.base, #t~memset~res110#1.offset;#res#1.base, #res#1.offset := ~tmp~5#1.base, ~tmp~5#1.offset; {89201#(not (= 8 |ldv_memset_#in~n#1|))} is VALID [2022-02-20 22:06:45,172 INFO L290 TraceCheckUtils]: 23: Hoare triple {89201#(not (= 8 |ldv_memset_#in~n#1|))} assume true; {89201#(not (= 8 |ldv_memset_#in~n#1|))} is VALID [2022-02-20 22:06:45,173 INFO L284 TraceCheckUtils]: 24: Hoare quadruple {89201#(not (= 8 |ldv_memset_#in~n#1|))} {89088#true} #1086#return; {89089#false} is VALID [2022-02-20 22:06:45,173 INFO L290 TraceCheckUtils]: 25: Hoare triple {89089#false} havoc main_#t~ret371#1.base, main_#t~ret371#1.offset; {89089#false} is VALID [2022-02-20 22:06:45,173 INFO L272 TraceCheckUtils]: 26: Hoare triple {89089#false} call main_#t~ret372#1.base, main_#t~ret372#1.offset := ldv_memset(main_~#ldvarg3~0#1.base, main_~#ldvarg3~0#1.offset, 0, 4); {89199#(and (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2022-02-20 22:06:45,173 INFO L290 TraceCheckUtils]: 27: Hoare triple {89199#(and (= |#memory_int| |old(#memory_int)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~s#1.base, ~s#1.offset := #in~s#1.base, #in~s#1.offset;~c#1 := #in~c#1;~n#1 := #in~n#1;havoc ~tmp~5#1.base, ~tmp~5#1.offset;assume { :begin_inline_#Ultimate.C_memset } true;#Ultimate.C_memset_#ptr#1.base, #Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#value#1, #Ultimate.C_memset_#amount#1 := ~s#1.base, ~s#1.offset, ~c#1, ~n#1;havoc #Ultimate.C_memset_#res#1.base, #Ultimate.C_memset_#res#1.offset;havoc #Ultimate.C_memset_#t~loopctr416#1;#Ultimate.C_memset_#t~loopctr416#1 := 0; {89088#true} is VALID [2022-02-20 22:06:45,173 INFO L290 TraceCheckUtils]: 28: Hoare triple {89088#true} assume !(#Ultimate.C_memset_#t~loopctr416#1 % 18446744073709551616 < #Ultimate.C_memset_#amount#1 % 18446744073709551616); {89088#true} is VALID [2022-02-20 22:06:45,173 INFO L290 TraceCheckUtils]: 29: Hoare triple {89088#true} assume #Ultimate.C_memset_#res#1.base == #Ultimate.C_memset_#ptr#1.base && #Ultimate.C_memset_#res#1.offset == #Ultimate.C_memset_#ptr#1.offset;#t~memset~res110#1.base, #t~memset~res110#1.offset := #Ultimate.C_memset_#res#1.base, #Ultimate.C_memset_#res#1.offset;assume { :end_inline_#Ultimate.C_memset } true;~tmp~5#1.base, ~tmp~5#1.offset := ~s#1.base, ~s#1.offset;havoc #t~memset~res110#1.base, #t~memset~res110#1.offset;#res#1.base, #res#1.offset := ~tmp~5#1.base, ~tmp~5#1.offset; {89088#true} is VALID [2022-02-20 22:06:45,174 INFO L290 TraceCheckUtils]: 30: Hoare triple {89088#true} assume true; {89088#true} is VALID [2022-02-20 22:06:45,174 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {89088#true} {89089#false} #1088#return; {89089#false} is VALID [2022-02-20 22:06:45,174 INFO L290 TraceCheckUtils]: 32: Hoare triple {89089#false} havoc main_#t~ret372#1.base, main_#t~ret372#1.offset;main_~ldvarg2~0#1 := main_#t~nondet373#1;havoc main_#t~nondet373#1;~ldv_state_variable_1~0 := 0;~ref_cnt~0 := 0;~ldv_state_variable_0~0 := 1;~ldv_state_variable_2~0 := 0; {89089#false} is VALID [2022-02-20 22:06:45,174 INFO L290 TraceCheckUtils]: 33: Hoare triple {89089#false} assume -2147483648 <= main_#t~nondet374#1 && main_#t~nondet374#1 <= 2147483647;main_~tmp___0~12#1 := main_#t~nondet374#1;havoc main_#t~nondet374#1;main_#t~switch375#1 := 0 == main_~tmp___0~12#1; {89089#false} is VALID [2022-02-20 22:06:45,174 INFO L290 TraceCheckUtils]: 34: Hoare triple {89089#false} assume !main_#t~switch375#1;main_#t~switch375#1 := main_#t~switch375#1 || 1 == main_~tmp___0~12#1; {89089#false} is VALID [2022-02-20 22:06:45,174 INFO L290 TraceCheckUtils]: 35: Hoare triple {89089#false} assume main_#t~switch375#1; {89089#false} is VALID [2022-02-20 22:06:45,174 INFO L290 TraceCheckUtils]: 36: Hoare triple {89089#false} assume 0 != ~ldv_state_variable_0~0;assume -2147483648 <= main_#t~nondet379#1 && main_#t~nondet379#1 <= 2147483647;main_~tmp___2~4#1 := main_#t~nondet379#1;havoc main_#t~nondet379#1;main_#t~switch380#1 := 0 == main_~tmp___2~4#1; {89089#false} is VALID [2022-02-20 22:06:45,174 INFO L290 TraceCheckUtils]: 37: Hoare triple {89089#false} assume !main_#t~switch380#1;main_#t~switch380#1 := main_#t~switch380#1 || 1 == main_~tmp___2~4#1; {89089#false} is VALID [2022-02-20 22:06:45,174 INFO L290 TraceCheckUtils]: 38: Hoare triple {89089#false} assume main_#t~switch380#1; {89089#false} is VALID [2022-02-20 22:06:45,175 INFO L290 TraceCheckUtils]: 39: Hoare triple {89089#false} assume 1 == ~ldv_state_variable_0~0;assume { :begin_inline_init } true;havoc init_#res#1;havoc init_#t~ret366#1, init_#t~ret367#1, init_~tmp~22#1;havoc init_~tmp~22#1;assume { :begin_inline_register_blkdev } true;register_blkdev_#in~arg0#1, register_blkdev_#in~arg1#1.base, register_blkdev_#in~arg1#1.offset := 0, 9, 0;havoc register_blkdev_#res#1;havoc register_blkdev_#t~nondet409#1, register_blkdev_~arg0#1, register_blkdev_~arg1#1.base, register_blkdev_~arg1#1.offset;register_blkdev_~arg0#1 := register_blkdev_#in~arg0#1;register_blkdev_~arg1#1.base, register_blkdev_~arg1#1.offset := register_blkdev_#in~arg1#1.base, register_blkdev_#in~arg1#1.offset;assume -2147483648 <= register_blkdev_#t~nondet409#1 && register_blkdev_#t~nondet409#1 <= 2147483647;register_blkdev_#res#1 := register_blkdev_#t~nondet409#1;havoc register_blkdev_#t~nondet409#1; {89089#false} is VALID [2022-02-20 22:06:45,175 INFO L290 TraceCheckUtils]: 40: Hoare triple {89089#false} init_#t~ret366#1 := register_blkdev_#res#1;assume { :end_inline_register_blkdev } true;assume -2147483648 <= init_#t~ret366#1 && init_#t~ret366#1 <= 2147483647;~major~0 := init_#t~ret366#1;havoc init_#t~ret366#1; {89089#false} is VALID [2022-02-20 22:06:45,175 INFO L290 TraceCheckUtils]: 41: Hoare triple {89089#false} assume !(~major~0 < 0);assume { :begin_inline_register_virtio_driver } true;register_virtio_driver_#in~arg0#1.base, register_virtio_driver_#in~arg0#1.offset := ~#virtio_blk~0.base, ~#virtio_blk~0.offset;havoc register_virtio_driver_#res#1;havoc register_virtio_driver_#t~nondet410#1, register_virtio_driver_~arg0#1.base, register_virtio_driver_~arg0#1.offset;register_virtio_driver_~arg0#1.base, register_virtio_driver_~arg0#1.offset := register_virtio_driver_#in~arg0#1.base, register_virtio_driver_#in~arg0#1.offset;assume -2147483648 <= register_virtio_driver_#t~nondet410#1 && register_virtio_driver_#t~nondet410#1 <= 2147483647;register_virtio_driver_#res#1 := register_virtio_driver_#t~nondet410#1;havoc register_virtio_driver_#t~nondet410#1; {89089#false} is VALID [2022-02-20 22:06:45,175 INFO L290 TraceCheckUtils]: 42: Hoare triple {89089#false} init_#t~ret367#1 := register_virtio_driver_#res#1;assume { :end_inline_register_virtio_driver } true;assume -2147483648 <= init_#t~ret367#1 && init_#t~ret367#1 <= 2147483647;init_~tmp~22#1 := init_#t~ret367#1;havoc init_#t~ret367#1;init_#res#1 := init_~tmp~22#1; {89089#false} is VALID [2022-02-20 22:06:45,175 INFO L290 TraceCheckUtils]: 43: Hoare triple {89089#false} main_#t~ret381#1 := init_#res#1;assume { :end_inline_init } true;assume -2147483648 <= main_#t~ret381#1 && main_#t~ret381#1 <= 2147483647;~ldv_retval_1~0 := main_#t~ret381#1;havoc main_#t~ret381#1; {89089#false} is VALID [2022-02-20 22:06:45,175 INFO L290 TraceCheckUtils]: 44: Hoare triple {89089#false} assume 0 == ~ldv_retval_1~0;~ldv_state_variable_0~0 := 3;~ldv_state_variable_2~0 := 1;assume { :begin_inline_ldv_initialize_block_device_operations_2 } true;havoc ldv_initialize_block_device_operations_2_#t~ret369#1.base, ldv_initialize_block_device_operations_2_#t~ret369#1.offset, ldv_initialize_block_device_operations_2_~tmp~24#1.base, ldv_initialize_block_device_operations_2_~tmp~24#1.offset;havoc ldv_initialize_block_device_operations_2_~tmp~24#1.base, ldv_initialize_block_device_operations_2_~tmp~24#1.offset; {89089#false} is VALID [2022-02-20 22:06:45,175 INFO L272 TraceCheckUtils]: 45: Hoare triple {89089#false} call ldv_initialize_block_device_operations_2_#t~ret369#1.base, ldv_initialize_block_device_operations_2_#t~ret369#1.offset := ldv_init_zalloc(464); {89190#(and (= |old(#length)| |#length|) (= |#memory_int| |old(#memory_int)|) (= |old(#valid)| |#valid|))} is VALID [2022-02-20 22:06:45,175 INFO L290 TraceCheckUtils]: 46: Hoare triple {89190#(and (= |old(#length)| |#length|) (= |#memory_int| |old(#memory_int)|) (= |old(#valid)| |#valid|))} ~size := #in~size;havoc ~p~2.base, ~p~2.offset;havoc ~tmp~4.base, ~tmp~4.offset;call #t~malloc109.base, #t~malloc109.offset := #Ultimate.allocOnHeap(~size); {89088#true} is VALID [2022-02-20 22:06:45,176 INFO L272 TraceCheckUtils]: 47: Hoare triple {89088#true} call #Ultimate.meminit(#t~malloc109.base, #t~malloc109.offset, 1, ~size, ~size); {89198#(= |#memory_int| |old(#memory_int)|)} is VALID [2022-02-20 22:06:45,176 INFO L290 TraceCheckUtils]: 48: Hoare triple {89198#(= |#memory_int| |old(#memory_int)|)} #memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, #ptr.base); {89088#true} is VALID [2022-02-20 22:06:45,176 INFO L290 TraceCheckUtils]: 49: Hoare triple {89088#true} assume true; {89088#true} is VALID [2022-02-20 22:06:45,177 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {89088#true} {89088#true} #1074#return; {89088#true} is VALID [2022-02-20 22:06:45,177 INFO L290 TraceCheckUtils]: 51: Hoare triple {89088#true} ~tmp~4.base, ~tmp~4.offset := #t~malloc109.base, #t~malloc109.offset;~p~2.base, ~p~2.offset := ~tmp~4.base, ~tmp~4.offset; {89088#true} is VALID [2022-02-20 22:06:45,177 INFO L272 TraceCheckUtils]: 52: Hoare triple {89088#true} call assume_abort_if_not((if 0 != (~p~2.base + ~p~2.offset) % 18446744073709551616 then 1 else 0)); {89088#true} is VALID [2022-02-20 22:06:45,177 INFO L290 TraceCheckUtils]: 53: Hoare triple {89088#true} ~cond := #in~cond; {89088#true} is VALID [2022-02-20 22:06:45,177 INFO L290 TraceCheckUtils]: 54: Hoare triple {89088#true} assume !(0 == ~cond); {89088#true} is VALID [2022-02-20 22:06:45,177 INFO L290 TraceCheckUtils]: 55: Hoare triple {89088#true} assume true; {89088#true} is VALID [2022-02-20 22:06:45,177 INFO L284 TraceCheckUtils]: 56: Hoare quadruple {89088#true} {89088#true} #1076#return; {89088#true} is VALID [2022-02-20 22:06:45,177 INFO L290 TraceCheckUtils]: 57: Hoare triple {89088#true} #res.base, #res.offset := ~p~2.base, ~p~2.offset; {89088#true} is VALID [2022-02-20 22:06:45,178 INFO L290 TraceCheckUtils]: 58: Hoare triple {89088#true} assume true; {89088#true} is VALID [2022-02-20 22:06:45,178 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {89088#true} {89089#false} #1150#return; {89089#false} is VALID [2022-02-20 22:06:45,178 INFO L290 TraceCheckUtils]: 60: Hoare triple {89089#false} ldv_initialize_block_device_operations_2_~tmp~24#1.base, ldv_initialize_block_device_operations_2_~tmp~24#1.offset := ldv_initialize_block_device_operations_2_#t~ret369#1.base, ldv_initialize_block_device_operations_2_#t~ret369#1.offset;havoc ldv_initialize_block_device_operations_2_#t~ret369#1.base, ldv_initialize_block_device_operations_2_#t~ret369#1.offset;~virtblk_fops_group0~0.base, ~virtblk_fops_group0~0.offset := ldv_initialize_block_device_operations_2_~tmp~24#1.base, ldv_initialize_block_device_operations_2_~tmp~24#1.offset; {89089#false} is VALID [2022-02-20 22:06:45,178 INFO L290 TraceCheckUtils]: 61: Hoare triple {89089#false} assume { :end_inline_ldv_initialize_block_device_operations_2 } true;~ldv_state_variable_1~0 := 1;assume { :begin_inline_ldv_initialize_virtio_driver_1 } true;havoc ldv_initialize_virtio_driver_1_#t~ret368#1.base, ldv_initialize_virtio_driver_1_#t~ret368#1.offset, ldv_initialize_virtio_driver_1_~tmp~23#1.base, ldv_initialize_virtio_driver_1_~tmp~23#1.offset;havoc ldv_initialize_virtio_driver_1_~tmp~23#1.base, ldv_initialize_virtio_driver_1_~tmp~23#1.offset; {89089#false} is VALID [2022-02-20 22:06:45,178 INFO L272 TraceCheckUtils]: 62: Hoare triple {89089#false} call ldv_initialize_virtio_driver_1_#t~ret368#1.base, ldv_initialize_virtio_driver_1_#t~ret368#1.offset := ldv_init_zalloc(1048); {89190#(and (= |old(#length)| |#length|) (= |#memory_int| |old(#memory_int)|) (= |old(#valid)| |#valid|))} is VALID [2022-02-20 22:06:45,178 INFO L290 TraceCheckUtils]: 63: Hoare triple {89190#(and (= |old(#length)| |#length|) (= |#memory_int| |old(#memory_int)|) (= |old(#valid)| |#valid|))} ~size := #in~size;havoc ~p~2.base, ~p~2.offset;havoc ~tmp~4.base, ~tmp~4.offset;call #t~malloc109.base, #t~malloc109.offset := #Ultimate.allocOnHeap(~size); {89088#true} is VALID [2022-02-20 22:06:45,179 INFO L272 TraceCheckUtils]: 64: Hoare triple {89088#true} call #Ultimate.meminit(#t~malloc109.base, #t~malloc109.offset, 1, ~size, ~size); {89198#(= |#memory_int| |old(#memory_int)|)} is VALID [2022-02-20 22:06:45,179 INFO L290 TraceCheckUtils]: 65: Hoare triple {89198#(= |#memory_int| |old(#memory_int)|)} #memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, #ptr.base); {89088#true} is VALID [2022-02-20 22:06:45,179 INFO L290 TraceCheckUtils]: 66: Hoare triple {89088#true} assume true; {89088#true} is VALID [2022-02-20 22:06:45,179 INFO L284 TraceCheckUtils]: 67: Hoare quadruple {89088#true} {89088#true} #1074#return; {89088#true} is VALID [2022-02-20 22:06:45,179 INFO L290 TraceCheckUtils]: 68: Hoare triple {89088#true} ~tmp~4.base, ~tmp~4.offset := #t~malloc109.base, #t~malloc109.offset;~p~2.base, ~p~2.offset := ~tmp~4.base, ~tmp~4.offset; {89088#true} is VALID [2022-02-20 22:06:45,179 INFO L272 TraceCheckUtils]: 69: Hoare triple {89088#true} call assume_abort_if_not((if 0 != (~p~2.base + ~p~2.offset) % 18446744073709551616 then 1 else 0)); {89088#true} is VALID [2022-02-20 22:06:45,180 INFO L290 TraceCheckUtils]: 70: Hoare triple {89088#true} ~cond := #in~cond; {89088#true} is VALID [2022-02-20 22:06:45,180 INFO L290 TraceCheckUtils]: 71: Hoare triple {89088#true} assume !(0 == ~cond); {89088#true} is VALID [2022-02-20 22:06:45,180 INFO L290 TraceCheckUtils]: 72: Hoare triple {89088#true} assume true; {89088#true} is VALID [2022-02-20 22:06:45,180 INFO L284 TraceCheckUtils]: 73: Hoare quadruple {89088#true} {89088#true} #1076#return; {89088#true} is VALID [2022-02-20 22:06:45,180 INFO L290 TraceCheckUtils]: 74: Hoare triple {89088#true} #res.base, #res.offset := ~p~2.base, ~p~2.offset; {89088#true} is VALID [2022-02-20 22:06:45,180 INFO L290 TraceCheckUtils]: 75: Hoare triple {89088#true} assume true; {89088#true} is VALID [2022-02-20 22:06:45,180 INFO L284 TraceCheckUtils]: 76: Hoare quadruple {89088#true} {89089#false} #1152#return; {89089#false} is VALID [2022-02-20 22:06:45,180 INFO L290 TraceCheckUtils]: 77: Hoare triple {89089#false} ldv_initialize_virtio_driver_1_~tmp~23#1.base, ldv_initialize_virtio_driver_1_~tmp~23#1.offset := ldv_initialize_virtio_driver_1_#t~ret368#1.base, ldv_initialize_virtio_driver_1_#t~ret368#1.offset;havoc ldv_initialize_virtio_driver_1_#t~ret368#1.base, ldv_initialize_virtio_driver_1_#t~ret368#1.offset;~virtio_blk_group0~0.base, ~virtio_blk_group0~0.offset := ldv_initialize_virtio_driver_1_~tmp~23#1.base, ldv_initialize_virtio_driver_1_~tmp~23#1.offset; {89089#false} is VALID [2022-02-20 22:06:45,181 INFO L290 TraceCheckUtils]: 78: Hoare triple {89089#false} assume { :end_inline_ldv_initialize_virtio_driver_1 } true; {89089#false} is VALID [2022-02-20 22:06:45,181 INFO L290 TraceCheckUtils]: 79: Hoare triple {89089#false} assume !(0 != ~ldv_retval_1~0); {89089#false} is VALID [2022-02-20 22:06:45,181 INFO L290 TraceCheckUtils]: 80: Hoare triple {89089#false} assume -2147483648 <= main_#t~nondet374#1 && main_#t~nondet374#1 <= 2147483647;main_~tmp___0~12#1 := main_#t~nondet374#1;havoc main_#t~nondet374#1;main_#t~switch375#1 := 0 == main_~tmp___0~12#1; {89089#false} is VALID [2022-02-20 22:06:45,181 INFO L290 TraceCheckUtils]: 81: Hoare triple {89089#false} assume !main_#t~switch375#1;main_#t~switch375#1 := main_#t~switch375#1 || 1 == main_~tmp___0~12#1; {89089#false} is VALID [2022-02-20 22:06:45,181 INFO L290 TraceCheckUtils]: 82: Hoare triple {89089#false} assume !main_#t~switch375#1;main_#t~switch375#1 := main_#t~switch375#1 || 2 == main_~tmp___0~12#1; {89089#false} is VALID [2022-02-20 22:06:45,181 INFO L290 TraceCheckUtils]: 83: Hoare triple {89089#false} assume main_#t~switch375#1; {89089#false} is VALID [2022-02-20 22:06:45,181 INFO L290 TraceCheckUtils]: 84: Hoare triple {89089#false} assume 0 != ~ldv_state_variable_2~0;assume -2147483648 <= main_#t~nondet382#1 && main_#t~nondet382#1 <= 2147483647;main_~tmp___3~3#1 := main_#t~nondet382#1;havoc main_#t~nondet382#1;main_#t~switch383#1 := 0 == main_~tmp___3~3#1; {89089#false} is VALID [2022-02-20 22:06:45,181 INFO L290 TraceCheckUtils]: 85: Hoare triple {89089#false} assume main_#t~switch383#1; {89089#false} is VALID [2022-02-20 22:06:45,181 INFO L290 TraceCheckUtils]: 86: Hoare triple {89089#false} assume 1 == ~ldv_state_variable_2~0;call main_#t~mem384#1 := read~int(main_~#ldvarg3~0#1.base, main_~#ldvarg3~0#1.offset, 4);call main_#t~mem385#1 := read~int(main_~#ldvarg1~0#1.base, main_~#ldvarg1~0#1.offset, 8);assume { :begin_inline_virtblk_ioctl } true;virtblk_ioctl_#in~bdev#1.base, virtblk_ioctl_#in~bdev#1.offset, virtblk_ioctl_#in~mode#1, virtblk_ioctl_#in~cmd#1, virtblk_ioctl_#in~data#1 := ~virtblk_fops_group0~0.base, ~virtblk_fops_group0~0.offset, main_#t~mem384#1, main_~ldvarg2~0#1, main_#t~mem385#1;havoc virtblk_ioctl_#res#1;havoc virtblk_ioctl_#t~mem248#1.base, virtblk_ioctl_#t~mem248#1.offset, virtblk_ioctl_#t~mem249#1.base, virtblk_ioctl_#t~mem249#1.offset, virtblk_ioctl_#t~ret250#1, virtblk_ioctl_#t~ret251#1, virtblk_ioctl_#t~mem252#1.base, virtblk_ioctl_#t~mem252#1.offset, virtblk_ioctl_#t~ret253#1, virtblk_ioctl_#t~mem254#1.base, virtblk_ioctl_#t~mem254#1.offset, virtblk_ioctl_#t~ret255#1, virtblk_ioctl_~bdev#1.base, virtblk_ioctl_~bdev#1.offset, virtblk_ioctl_~mode#1, virtblk_ioctl_~cmd#1, virtblk_ioctl_~data#1, virtblk_ioctl_~disk~0#1.base, virtblk_ioctl_~disk~0#1.offset, virtblk_ioctl_~vblk~3#1.base, virtblk_ioctl_~vblk~3#1.offset, virtblk_ioctl_~usr_data~0#1.base, virtblk_ioctl_~usr_data~0#1.offset, virtblk_ioctl_~#id_str~0#1.base, virtblk_ioctl_~#id_str~0#1.offset, virtblk_ioctl_~err~1#1, virtblk_ioctl_~tmp~18#1, virtblk_ioctl_~tmp___0~9#1, virtblk_ioctl_~tmp___1~5#1, virtblk_ioctl_~tmp___2~2#1;virtblk_ioctl_~bdev#1.base, virtblk_ioctl_~bdev#1.offset := virtblk_ioctl_#in~bdev#1.base, virtblk_ioctl_#in~bdev#1.offset;virtblk_ioctl_~mode#1 := virtblk_ioctl_#in~mode#1;virtblk_ioctl_~cmd#1 := virtblk_ioctl_#in~cmd#1;virtblk_ioctl_~data#1 := virtblk_ioctl_#in~data#1;havoc virtblk_ioctl_~disk~0#1.base, virtblk_ioctl_~disk~0#1.offset;havoc virtblk_ioctl_~vblk~3#1.base, virtblk_ioctl_~vblk~3#1.offset;havoc virtblk_ioctl_~usr_data~0#1.base, virtblk_ioctl_~usr_data~0#1.offset;call virtblk_ioctl_~#id_str~0#1.base, virtblk_ioctl_~#id_str~0#1.offset := #Ultimate.allocOnStack(20);havoc virtblk_ioctl_~err~1#1;havoc virtblk_ioctl_~tmp~18#1;havoc virtblk_ioctl_~tmp___0~9#1;havoc virtblk_ioctl_~tmp___1~5#1;havoc virtblk_ioctl_~tmp___2~2#1;call virtblk_ioctl_#t~mem248#1.base, virtblk_ioctl_#t~mem248#1.offset := read~$Pointer$(virtblk_ioctl_~bdev#1.base, 240 + virtblk_ioctl_~bdev#1.offset, 8);virtblk_ioctl_~disk~0#1.base, virtblk_ioctl_~disk~0#1.offset := virtblk_ioctl_#t~mem248#1.base, virtblk_ioctl_#t~mem248#1.offset;havoc virtblk_ioctl_#t~mem248#1.base, virtblk_ioctl_#t~mem248#1.offset;call virtblk_ioctl_#t~mem249#1.base, virtblk_ioctl_#t~mem249#1.offset := read~$Pointer$(virtblk_ioctl_~disk~0#1.base, 1075 + virtblk_ioctl_~disk~0#1.offset, 8);virtblk_ioctl_~vblk~3#1.base, virtblk_ioctl_~vblk~3#1.offset := virtblk_ioctl_#t~mem249#1.base, virtblk_ioctl_#t~mem249#1.offset;havoc virtblk_ioctl_#t~mem249#1.base, virtblk_ioctl_#t~mem249#1.offset; {89089#false} is VALID [2022-02-20 22:06:45,182 INFO L290 TraceCheckUtils]: 87: Hoare triple {89089#false} assume 1447184708 == virtblk_ioctl_~cmd#1 % 4294967296;virtblk_ioctl_~usr_data~0#1.base, virtblk_ioctl_~usr_data~0#1.offset := 0, (if virtblk_ioctl_~data#1 % 18446744073709551616 % 18446744073709551616 <= 9223372036854775807 then virtblk_ioctl_~data#1 % 18446744073709551616 % 18446744073709551616 else virtblk_ioctl_~data#1 % 18446744073709551616 % 18446744073709551616 - 18446744073709551616);assume { :begin_inline_virtblk_get_id } true;virtblk_get_id_#in~disk#1.base, virtblk_get_id_#in~disk#1.offset, virtblk_get_id_#in~id_str#1.base, virtblk_get_id_#in~id_str#1.offset := virtblk_ioctl_~disk~0#1.base, virtblk_ioctl_~disk~0#1.offset, virtblk_ioctl_~#id_str~0#1.base, virtblk_ioctl_~#id_str~0#1.offset;havoc virtblk_get_id_#res#1;havoc virtblk_get_id_#t~mem233#1.base, virtblk_get_id_#t~mem233#1.offset, virtblk_get_id_#t~mem234#1.base, virtblk_get_id_#t~mem234#1.offset, virtblk_get_id_#t~mem235#1.base, virtblk_get_id_#t~mem235#1.offset, virtblk_get_id_#t~ret236#1.base, virtblk_get_id_#t~ret236#1.offset, virtblk_get_id_#t~ret237#1, virtblk_get_id_#t~ret238#1, virtblk_get_id_#t~mem239#1.base, virtblk_get_id_#t~mem239#1.offset, virtblk_get_id_#t~mem240#1.base, virtblk_get_id_#t~mem240#1.offset, virtblk_get_id_#t~ret241#1.base, virtblk_get_id_#t~ret241#1.offset, virtblk_get_id_#t~ret242#1, virtblk_get_id_#t~ret243#1, virtblk_get_id_#t~mem244#1.base, virtblk_get_id_#t~mem244#1.offset, virtblk_get_id_#t~mem245#1.base, virtblk_get_id_#t~mem245#1.offset, virtblk_get_id_#t~mem246#1.base, virtblk_get_id_#t~mem246#1.offset, virtblk_get_id_#t~ret247#1, virtblk_get_id_~disk#1.base, virtblk_get_id_~disk#1.offset, virtblk_get_id_~id_str#1.base, virtblk_get_id_~id_str#1.offset, virtblk_get_id_~vblk~2#1.base, virtblk_get_id_~vblk~2#1.offset, virtblk_get_id_~req~1#1.base, virtblk_get_id_~req~1#1.offset, virtblk_get_id_~bio~0#1.base, virtblk_get_id_~bio~0#1.offset, virtblk_get_id_~tmp~17#1, virtblk_get_id_~tmp___0~8#1, virtblk_get_id_~tmp___1~4#1, virtblk_get_id_~tmp___2~1#1, virtblk_get_id_~tmp___3~1#1;virtblk_get_id_~disk#1.base, virtblk_get_id_~disk#1.offset := virtblk_get_id_#in~disk#1.base, virtblk_get_id_#in~disk#1.offset;virtblk_get_id_~id_str#1.base, virtblk_get_id_~id_str#1.offset := virtblk_get_id_#in~id_str#1.base, virtblk_get_id_#in~id_str#1.offset;havoc virtblk_get_id_~vblk~2#1.base, virtblk_get_id_~vblk~2#1.offset;havoc virtblk_get_id_~req~1#1.base, virtblk_get_id_~req~1#1.offset;havoc virtblk_get_id_~bio~0#1.base, virtblk_get_id_~bio~0#1.offset;havoc virtblk_get_id_~tmp~17#1;havoc virtblk_get_id_~tmp___0~8#1;havoc virtblk_get_id_~tmp___1~4#1;havoc virtblk_get_id_~tmp___2~1#1;havoc virtblk_get_id_~tmp___3~1#1;call virtblk_get_id_#t~mem233#1.base, virtblk_get_id_#t~mem233#1.offset := read~$Pointer$(virtblk_get_id_~disk#1.base, 1075 + virtblk_get_id_~disk#1.offset, 8);virtblk_get_id_~vblk~2#1.base, virtblk_get_id_~vblk~2#1.offset := virtblk_get_id_#t~mem233#1.base, virtblk_get_id_#t~mem233#1.offset;havoc virtblk_get_id_#t~mem233#1.base, virtblk_get_id_#t~mem233#1.offset;call virtblk_get_id_#t~mem234#1.base, virtblk_get_id_#t~mem234#1.offset := read~$Pointer$(virtblk_get_id_~vblk~2#1.base, 72 + virtblk_get_id_~vblk~2#1.offset, 8);call virtblk_get_id_#t~mem235#1.base, virtblk_get_id_#t~mem235#1.offset := read~$Pointer$(virtblk_get_id_#t~mem234#1.base, 1067 + virtblk_get_id_#t~mem234#1.offset, 8);assume { :begin_inline_bio_map_kern } true;bio_map_kern_#in~arg0#1.base, bio_map_kern_#in~arg0#1.offset, bio_map_kern_#in~arg1#1.base, bio_map_kern_#in~arg1#1.offset, bio_map_kern_#in~arg2#1, bio_map_kern_#in~arg3#1 := virtblk_get_id_#t~mem235#1.base, virtblk_get_id_#t~mem235#1.offset, virtblk_get_id_~id_str#1.base, virtblk_get_id_~id_str#1.offset, 20, 208;havoc bio_map_kern_#res#1.base, bio_map_kern_#res#1.offset;havoc bio_map_kern_#t~ret401#1.base, bio_map_kern_#t~ret401#1.offset, bio_map_kern_~arg0#1.base, bio_map_kern_~arg0#1.offset, bio_map_kern_~arg1#1.base, bio_map_kern_~arg1#1.offset, bio_map_kern_~arg2#1, bio_map_kern_~arg3#1;bio_map_kern_~arg0#1.base, bio_map_kern_~arg0#1.offset := bio_map_kern_#in~arg0#1.base, bio_map_kern_#in~arg0#1.offset;bio_map_kern_~arg1#1.base, bio_map_kern_~arg1#1.offset := bio_map_kern_#in~arg1#1.base, bio_map_kern_#in~arg1#1.offset;bio_map_kern_~arg2#1 := bio_map_kern_#in~arg2#1;bio_map_kern_~arg3#1 := bio_map_kern_#in~arg3#1; {89089#false} is VALID [2022-02-20 22:06:45,182 INFO L272 TraceCheckUtils]: 88: Hoare triple {89089#false} call bio_map_kern_#t~ret401#1.base, bio_map_kern_#t~ret401#1.offset := ldv_malloc(112); {89216#(and (= |old(#length)| |#length|) (= |old(#valid)| |#valid|))} is VALID [2022-02-20 22:06:45,182 INFO L290 TraceCheckUtils]: 89: Hoare triple {89216#(and (= |old(#length)| |#length|) (= |old(#valid)| |#valid|))} ~size := #in~size;havoc ~p~0.base, ~p~0.offset;havoc ~tmp~2.base, ~tmp~2.offset;havoc ~tmp___0~0;assume -2147483648 <= #t~nondet103 && #t~nondet103 <= 2147483647;~tmp___0~0 := #t~nondet103;havoc #t~nondet103; {89088#true} is VALID [2022-02-20 22:06:45,182 INFO L290 TraceCheckUtils]: 90: Hoare triple {89088#true} assume 0 != ~tmp___0~0;#res.base, #res.offset := 0, 0; {89088#true} is VALID [2022-02-20 22:06:45,182 INFO L290 TraceCheckUtils]: 91: Hoare triple {89088#true} assume true; {89088#true} is VALID [2022-02-20 22:06:45,182 INFO L284 TraceCheckUtils]: 92: Hoare quadruple {89088#true} {89089#false} #1156#return; {89089#false} is VALID [2022-02-20 22:06:45,182 INFO L290 TraceCheckUtils]: 93: Hoare triple {89089#false} bio_map_kern_#res#1.base, bio_map_kern_#res#1.offset := bio_map_kern_#t~ret401#1.base, bio_map_kern_#t~ret401#1.offset;havoc bio_map_kern_#t~ret401#1.base, bio_map_kern_#t~ret401#1.offset; {89089#false} is VALID [2022-02-20 22:06:45,183 INFO L290 TraceCheckUtils]: 94: Hoare triple {89089#false} virtblk_get_id_#t~ret236#1.base, virtblk_get_id_#t~ret236#1.offset := bio_map_kern_#res#1.base, bio_map_kern_#res#1.offset;assume { :end_inline_bio_map_kern } true;virtblk_get_id_~bio~0#1.base, virtblk_get_id_~bio~0#1.offset := virtblk_get_id_#t~ret236#1.base, virtblk_get_id_#t~ret236#1.offset;havoc virtblk_get_id_#t~mem234#1.base, virtblk_get_id_#t~mem234#1.offset;havoc virtblk_get_id_#t~mem235#1.base, virtblk_get_id_#t~mem235#1.offset;havoc virtblk_get_id_#t~ret236#1.base, virtblk_get_id_#t~ret236#1.offset; {89089#false} is VALID [2022-02-20 22:06:45,183 INFO L272 TraceCheckUtils]: 95: Hoare triple {89089#false} call virtblk_get_id_#t~ret237#1 := IS_ERR(virtblk_get_id_~bio~0#1.base, virtblk_get_id_~bio~0#1.offset); {89088#true} is VALID [2022-02-20 22:06:45,183 INFO L290 TraceCheckUtils]: 96: Hoare triple {89088#true} ~ptr.base, ~ptr.offset := #in~ptr.base, #in~ptr.offset;havoc ~tmp~28; {89088#true} is VALID [2022-02-20 22:06:45,183 INFO L272 TraceCheckUtils]: 97: Hoare triple {89088#true} call #t~ret390 := ldv_is_err(~ptr.base, ~ptr.offset); {89088#true} is VALID [2022-02-20 22:06:45,183 INFO L290 TraceCheckUtils]: 98: Hoare triple {89088#true} ~ptr.base, ~ptr.offset := #in~ptr.base, #in~ptr.offset;#res := (if 0 == (if (~ptr.base + ~ptr.offset) % 18446744073709551616 > 2012 then 1 else 0) then 0 else 1); {89088#true} is VALID [2022-02-20 22:06:45,183 INFO L290 TraceCheckUtils]: 99: Hoare triple {89088#true} assume true; {89088#true} is VALID [2022-02-20 22:06:45,183 INFO L284 TraceCheckUtils]: 100: Hoare quadruple {89088#true} {89088#true} #1184#return; {89088#true} is VALID [2022-02-20 22:06:45,184 INFO L290 TraceCheckUtils]: 101: Hoare triple {89088#true} ~tmp~28 := #t~ret390;havoc #t~ret390;#res := ~tmp~28 % 256; {89088#true} is VALID [2022-02-20 22:06:45,184 INFO L290 TraceCheckUtils]: 102: Hoare triple {89088#true} assume true; {89088#true} is VALID [2022-02-20 22:06:45,184 INFO L284 TraceCheckUtils]: 103: Hoare quadruple {89088#true} {89089#false} #1158#return; {89089#false} is VALID [2022-02-20 22:06:45,184 INFO L290 TraceCheckUtils]: 104: Hoare triple {89089#false} assume -9223372036854775808 <= virtblk_get_id_#t~ret237#1 && virtblk_get_id_#t~ret237#1 <= 9223372036854775807;virtblk_get_id_~tmp___0~8#1 := virtblk_get_id_#t~ret237#1;havoc virtblk_get_id_#t~ret237#1; {89089#false} is VALID [2022-02-20 22:06:45,184 INFO L290 TraceCheckUtils]: 105: Hoare triple {89089#false} assume !(0 != virtblk_get_id_~tmp___0~8#1);call virtblk_get_id_#t~mem239#1.base, virtblk_get_id_#t~mem239#1.offset := read~$Pointer$(virtblk_get_id_~vblk~2#1.base, 72 + virtblk_get_id_~vblk~2#1.offset, 8);call virtblk_get_id_#t~mem240#1.base, virtblk_get_id_#t~mem240#1.offset := read~$Pointer$(virtblk_get_id_#t~mem239#1.base, 1067 + virtblk_get_id_#t~mem239#1.offset, 8);assume { :begin_inline_ldv_blk_make_request_5 } true;ldv_blk_make_request_5_#in~ldv_func_arg1#1.base, ldv_blk_make_request_5_#in~ldv_func_arg1#1.offset, ldv_blk_make_request_5_#in~ldv_func_arg2#1.base, ldv_blk_make_request_5_#in~ldv_func_arg2#1.offset, ldv_blk_make_request_5_#in~ldv_func_arg3#1 := virtblk_get_id_#t~mem240#1.base, virtblk_get_id_#t~mem240#1.offset, virtblk_get_id_~bio~0#1.base, virtblk_get_id_~bio~0#1.offset, 208;havoc ldv_blk_make_request_5_#res#1.base, ldv_blk_make_request_5_#res#1.offset;havoc ldv_blk_make_request_5_#t~ret391#1.base, ldv_blk_make_request_5_#t~ret391#1.offset, ldv_blk_make_request_5_~ldv_func_arg1#1.base, ldv_blk_make_request_5_~ldv_func_arg1#1.offset, ldv_blk_make_request_5_~ldv_func_arg2#1.base, ldv_blk_make_request_5_~ldv_func_arg2#1.offset, ldv_blk_make_request_5_~ldv_func_arg3#1, ldv_blk_make_request_5_~tmp~29#1.base, ldv_blk_make_request_5_~tmp~29#1.offset;ldv_blk_make_request_5_~ldv_func_arg1#1.base, ldv_blk_make_request_5_~ldv_func_arg1#1.offset := ldv_blk_make_request_5_#in~ldv_func_arg1#1.base, ldv_blk_make_request_5_#in~ldv_func_arg1#1.offset;ldv_blk_make_request_5_~ldv_func_arg2#1.base, ldv_blk_make_request_5_~ldv_func_arg2#1.offset := ldv_blk_make_request_5_#in~ldv_func_arg2#1.base, ldv_blk_make_request_5_#in~ldv_func_arg2#1.offset;ldv_blk_make_request_5_~ldv_func_arg3#1 := ldv_blk_make_request_5_#in~ldv_func_arg3#1;havoc ldv_blk_make_request_5_~tmp~29#1.base, ldv_blk_make_request_5_~tmp~29#1.offset;assume { :begin_inline_ldv_blk_make_request } true;ldv_blk_make_request_#in~mask#1 := ldv_blk_make_request_5_~ldv_func_arg3#1;havoc ldv_blk_make_request_#res#1.base, ldv_blk_make_request_#res#1.offset;havoc ldv_blk_make_request_#t~ret395#1.base, ldv_blk_make_request_#t~ret395#1.offset, ldv_blk_make_request_#t~ret396#1, ldv_blk_make_request_~mask#1, ldv_blk_make_request_~res~1#1.base, ldv_blk_make_request_~res~1#1.offset, ldv_blk_make_request_~tmp___0~14#1;ldv_blk_make_request_~mask#1 := ldv_blk_make_request_#in~mask#1;havoc ldv_blk_make_request_~res~1#1.base, ldv_blk_make_request_~res~1#1.offset;havoc ldv_blk_make_request_~tmp___0~14#1; {89089#false} is VALID [2022-02-20 22:06:45,184 INFO L290 TraceCheckUtils]: 106: Hoare triple {89089#false} assume !(0 != ~ldv_blk_rq~0); {89089#false} is VALID [2022-02-20 22:06:45,184 INFO L272 TraceCheckUtils]: 107: Hoare triple {89089#false} call ldv_blk_make_request_#t~ret395#1.base, ldv_blk_make_request_#t~ret395#1.offset := ldv_malloc(322); {89216#(and (= |old(#length)| |#length|) (= |old(#valid)| |#valid|))} is VALID [2022-02-20 22:06:45,184 INFO L290 TraceCheckUtils]: 108: Hoare triple {89216#(and (= |old(#length)| |#length|) (= |old(#valid)| |#valid|))} ~size := #in~size;havoc ~p~0.base, ~p~0.offset;havoc ~tmp~2.base, ~tmp~2.offset;havoc ~tmp___0~0;assume -2147483648 <= #t~nondet103 && #t~nondet103 <= 2147483647;~tmp___0~0 := #t~nondet103;havoc #t~nondet103; {89088#true} is VALID [2022-02-20 22:06:45,185 INFO L290 TraceCheckUtils]: 109: Hoare triple {89088#true} assume !(0 != ~tmp___0~0);call #t~malloc104.base, #t~malloc104.offset := #Ultimate.allocOnHeap(~size);~tmp~2.base, ~tmp~2.offset := #t~malloc104.base, #t~malloc104.offset;havoc #t~malloc104.base, #t~malloc104.offset;~p~0.base, ~p~0.offset := ~tmp~2.base, ~tmp~2.offset; {89088#true} is VALID [2022-02-20 22:06:45,185 INFO L272 TraceCheckUtils]: 110: Hoare triple {89088#true} call assume_abort_if_not((if 0 != (~p~0.base + ~p~0.offset) % 18446744073709551616 then 1 else 0)); {89088#true} is VALID [2022-02-20 22:06:45,185 INFO L290 TraceCheckUtils]: 111: Hoare triple {89088#true} ~cond := #in~cond; {89088#true} is VALID [2022-02-20 22:06:45,185 INFO L290 TraceCheckUtils]: 112: Hoare triple {89088#true} assume !(0 == ~cond); {89088#true} is VALID [2022-02-20 22:06:45,185 INFO L290 TraceCheckUtils]: 113: Hoare triple {89088#true} assume true; {89088#true} is VALID [2022-02-20 22:06:45,185 INFO L284 TraceCheckUtils]: 114: Hoare quadruple {89088#true} {89088#true} #1078#return; {89088#true} is VALID [2022-02-20 22:06:45,185 INFO L272 TraceCheckUtils]: 115: Hoare triple {89088#true} call #t~ret105 := IS_ERR(~p~0.base, ~p~0.offset); {89088#true} is VALID [2022-02-20 22:06:45,185 INFO L290 TraceCheckUtils]: 116: Hoare triple {89088#true} ~ptr.base, ~ptr.offset := #in~ptr.base, #in~ptr.offset;havoc ~tmp~28; {89088#true} is VALID [2022-02-20 22:06:45,185 INFO L272 TraceCheckUtils]: 117: Hoare triple {89088#true} call #t~ret390 := ldv_is_err(~ptr.base, ~ptr.offset); {89088#true} is VALID [2022-02-20 22:06:45,186 INFO L290 TraceCheckUtils]: 118: Hoare triple {89088#true} ~ptr.base, ~ptr.offset := #in~ptr.base, #in~ptr.offset;#res := (if 0 == (if (~ptr.base + ~ptr.offset) % 18446744073709551616 > 2012 then 1 else 0) then 0 else 1); {89088#true} is VALID [2022-02-20 22:06:45,186 INFO L290 TraceCheckUtils]: 119: Hoare triple {89088#true} assume true; {89088#true} is VALID [2022-02-20 22:06:45,186 INFO L284 TraceCheckUtils]: 120: Hoare quadruple {89088#true} {89088#true} #1184#return; {89088#true} is VALID [2022-02-20 22:06:45,186 INFO L290 TraceCheckUtils]: 121: Hoare triple {89088#true} ~tmp~28 := #t~ret390;havoc #t~ret390;#res := ~tmp~28 % 256; {89088#true} is VALID [2022-02-20 22:06:45,186 INFO L290 TraceCheckUtils]: 122: Hoare triple {89088#true} assume true; {89088#true} is VALID [2022-02-20 22:06:45,186 INFO L284 TraceCheckUtils]: 123: Hoare quadruple {89088#true} {89088#true} #1080#return; {89088#true} is VALID [2022-02-20 22:06:45,186 INFO L290 TraceCheckUtils]: 124: Hoare triple {89088#true} assume -9223372036854775808 <= #t~ret105 && #t~ret105 <= 9223372036854775807; {89088#true} is VALID [2022-02-20 22:06:45,186 INFO L272 TraceCheckUtils]: 125: Hoare triple {89088#true} call assume_abort_if_not((if 0 == #t~ret105 then 1 else 0)); {89088#true} is VALID [2022-02-20 22:06:45,187 INFO L290 TraceCheckUtils]: 126: Hoare triple {89088#true} ~cond := #in~cond; {89088#true} is VALID [2022-02-20 22:06:45,187 INFO L290 TraceCheckUtils]: 127: Hoare triple {89088#true} assume !(0 == ~cond); {89088#true} is VALID [2022-02-20 22:06:45,187 INFO L290 TraceCheckUtils]: 128: Hoare triple {89088#true} assume true; {89088#true} is VALID [2022-02-20 22:06:45,187 INFO L284 TraceCheckUtils]: 129: Hoare quadruple {89088#true} {89088#true} #1082#return; {89088#true} is VALID [2022-02-20 22:06:45,187 INFO L290 TraceCheckUtils]: 130: Hoare triple {89088#true} havoc #t~ret105;#res.base, #res.offset := ~p~0.base, ~p~0.offset; {89088#true} is VALID [2022-02-20 22:06:45,187 INFO L290 TraceCheckUtils]: 131: Hoare triple {89088#true} assume true; {89088#true} is VALID [2022-02-20 22:06:45,187 INFO L284 TraceCheckUtils]: 132: Hoare quadruple {89088#true} {89089#false} #1164#return; {89089#false} is VALID [2022-02-20 22:06:45,187 INFO L290 TraceCheckUtils]: 133: Hoare triple {89089#false} ldv_blk_make_request_~res~1#1.base, ldv_blk_make_request_~res~1#1.offset := ldv_blk_make_request_#t~ret395#1.base, ldv_blk_make_request_#t~ret395#1.offset;havoc ldv_blk_make_request_#t~ret395#1.base, ldv_blk_make_request_#t~ret395#1.offset; {89089#false} is VALID [2022-02-20 22:06:45,188 INFO L290 TraceCheckUtils]: 134: Hoare triple {89089#false} assume !(0 == (ldv_blk_make_request_~res~1#1.base + ldv_blk_make_request_~res~1#1.offset) % 18446744073709551616); {89089#false} is VALID [2022-02-20 22:06:45,188 INFO L290 TraceCheckUtils]: 135: Hoare triple {89089#false} assume { :begin_inline_IS_ERR___0 } true;IS_ERR___0_#in~ptr#1.base, IS_ERR___0_#in~ptr#1.offset := ldv_blk_make_request_~res~1#1.base, ldv_blk_make_request_~res~1#1.offset;havoc IS_ERR___0_#res#1;havoc IS_ERR___0_#t~ret393#1, IS_ERR___0_~ptr#1.base, IS_ERR___0_~ptr#1.offset, IS_ERR___0_~tmp~31#1;IS_ERR___0_~ptr#1.base, IS_ERR___0_~ptr#1.offset := IS_ERR___0_#in~ptr#1.base, IS_ERR___0_#in~ptr#1.offset;havoc IS_ERR___0_~tmp~31#1; {89089#false} is VALID [2022-02-20 22:06:45,188 INFO L272 TraceCheckUtils]: 136: Hoare triple {89089#false} call IS_ERR___0_#t~ret393#1 := ldv__builtin_expect((if (IS_ERR___0_~ptr#1.base + IS_ERR___0_~ptr#1.offset) % 18446744073709551616 > 18446744073709547520 then 1 else 0), 0); {89088#true} is VALID [2022-02-20 22:06:45,188 INFO L290 TraceCheckUtils]: 137: Hoare triple {89088#true} ~exp := #in~exp;~c := #in~c;#res := ~exp; {89088#true} is VALID [2022-02-20 22:06:45,188 INFO L290 TraceCheckUtils]: 138: Hoare triple {89088#true} assume true; {89088#true} is VALID [2022-02-20 22:06:45,188 INFO L284 TraceCheckUtils]: 139: Hoare quadruple {89088#true} {89089#false} #1168#return; {89089#false} is VALID [2022-02-20 22:06:45,188 INFO L290 TraceCheckUtils]: 140: Hoare triple {89089#false} assume -9223372036854775808 <= IS_ERR___0_#t~ret393#1 && IS_ERR___0_#t~ret393#1 <= 9223372036854775807;IS_ERR___0_~tmp~31#1 := IS_ERR___0_#t~ret393#1;havoc IS_ERR___0_#t~ret393#1;IS_ERR___0_#res#1 := IS_ERR___0_~tmp~31#1; {89089#false} is VALID [2022-02-20 22:06:45,188 INFO L290 TraceCheckUtils]: 141: Hoare triple {89089#false} ldv_blk_make_request_#t~ret396#1 := IS_ERR___0_#res#1;assume { :end_inline_IS_ERR___0 } true;assume -9223372036854775808 <= ldv_blk_make_request_#t~ret396#1 && ldv_blk_make_request_#t~ret396#1 <= 9223372036854775807;ldv_blk_make_request_~tmp___0~14#1 := ldv_blk_make_request_#t~ret396#1;havoc ldv_blk_make_request_#t~ret396#1; {89089#false} is VALID [2022-02-20 22:06:45,189 INFO L290 TraceCheckUtils]: 142: Hoare triple {89089#false} assume 0 == ldv_blk_make_request_~tmp___0~14#1;~ldv_blk_rq~0 := 1; {89089#false} is VALID [2022-02-20 22:06:45,189 INFO L290 TraceCheckUtils]: 143: Hoare triple {89089#false} ldv_blk_make_request_#res#1.base, ldv_blk_make_request_#res#1.offset := ldv_blk_make_request_~res~1#1.base, ldv_blk_make_request_~res~1#1.offset; {89089#false} is VALID [2022-02-20 22:06:45,189 INFO L290 TraceCheckUtils]: 144: Hoare triple {89089#false} ldv_blk_make_request_5_#t~ret391#1.base, ldv_blk_make_request_5_#t~ret391#1.offset := ldv_blk_make_request_#res#1.base, ldv_blk_make_request_#res#1.offset;assume { :end_inline_ldv_blk_make_request } true;ldv_blk_make_request_5_~tmp~29#1.base, ldv_blk_make_request_5_~tmp~29#1.offset := ldv_blk_make_request_5_#t~ret391#1.base, ldv_blk_make_request_5_#t~ret391#1.offset;havoc ldv_blk_make_request_5_#t~ret391#1.base, ldv_blk_make_request_5_#t~ret391#1.offset;ldv_blk_make_request_5_#res#1.base, ldv_blk_make_request_5_#res#1.offset := ldv_blk_make_request_5_~tmp~29#1.base, ldv_blk_make_request_5_~tmp~29#1.offset; {89089#false} is VALID [2022-02-20 22:06:45,189 INFO L290 TraceCheckUtils]: 145: Hoare triple {89089#false} virtblk_get_id_#t~ret241#1.base, virtblk_get_id_#t~ret241#1.offset := ldv_blk_make_request_5_#res#1.base, ldv_blk_make_request_5_#res#1.offset;assume { :end_inline_ldv_blk_make_request_5 } true;virtblk_get_id_~req~1#1.base, virtblk_get_id_~req~1#1.offset := virtblk_get_id_#t~ret241#1.base, virtblk_get_id_#t~ret241#1.offset;havoc virtblk_get_id_#t~mem239#1.base, virtblk_get_id_#t~mem239#1.offset;havoc virtblk_get_id_#t~mem240#1.base, virtblk_get_id_#t~mem240#1.offset;havoc virtblk_get_id_#t~ret241#1.base, virtblk_get_id_#t~ret241#1.offset; {89089#false} is VALID [2022-02-20 22:06:45,189 INFO L272 TraceCheckUtils]: 146: Hoare triple {89089#false} call virtblk_get_id_#t~ret242#1 := IS_ERR(virtblk_get_id_~req~1#1.base, virtblk_get_id_~req~1#1.offset); {89088#true} is VALID [2022-02-20 22:06:45,189 INFO L290 TraceCheckUtils]: 147: Hoare triple {89088#true} ~ptr.base, ~ptr.offset := #in~ptr.base, #in~ptr.offset;havoc ~tmp~28; {89088#true} is VALID [2022-02-20 22:06:45,189 INFO L272 TraceCheckUtils]: 148: Hoare triple {89088#true} call #t~ret390 := ldv_is_err(~ptr.base, ~ptr.offset); {89088#true} is VALID [2022-02-20 22:06:45,189 INFO L290 TraceCheckUtils]: 149: Hoare triple {89088#true} ~ptr.base, ~ptr.offset := #in~ptr.base, #in~ptr.offset;#res := (if 0 == (if (~ptr.base + ~ptr.offset) % 18446744073709551616 > 2012 then 1 else 0) then 0 else 1); {89088#true} is VALID [2022-02-20 22:06:45,190 INFO L290 TraceCheckUtils]: 150: Hoare triple {89088#true} assume true; {89088#true} is VALID [2022-02-20 22:06:45,190 INFO L284 TraceCheckUtils]: 151: Hoare quadruple {89088#true} {89088#true} #1184#return; {89088#true} is VALID [2022-02-20 22:06:45,190 INFO L290 TraceCheckUtils]: 152: Hoare triple {89088#true} ~tmp~28 := #t~ret390;havoc #t~ret390;#res := ~tmp~28 % 256; {89088#true} is VALID [2022-02-20 22:06:45,190 INFO L290 TraceCheckUtils]: 153: Hoare triple {89088#true} assume true; {89088#true} is VALID [2022-02-20 22:06:45,190 INFO L284 TraceCheckUtils]: 154: Hoare quadruple {89088#true} {89089#false} #1170#return; {89089#false} is VALID [2022-02-20 22:06:45,190 INFO L290 TraceCheckUtils]: 155: Hoare triple {89089#false} assume -9223372036854775808 <= virtblk_get_id_#t~ret242#1 && virtblk_get_id_#t~ret242#1 <= 9223372036854775807;virtblk_get_id_~tmp___2~1#1 := virtblk_get_id_#t~ret242#1;havoc virtblk_get_id_#t~ret242#1; {89089#false} is VALID [2022-02-20 22:06:45,190 INFO L290 TraceCheckUtils]: 156: Hoare triple {89089#false} assume !(0 != virtblk_get_id_~tmp___2~1#1);call write~int(7, virtblk_get_id_~req~1#1.base, 64 + virtblk_get_id_~req~1#1.offset, 4);call virtblk_get_id_#t~mem244#1.base, virtblk_get_id_#t~mem244#1.offset := read~$Pointer$(virtblk_get_id_~vblk~2#1.base, 72 + virtblk_get_id_~vblk~2#1.offset, 8);call virtblk_get_id_#t~mem245#1.base, virtblk_get_id_#t~mem245#1.offset := read~$Pointer$(virtblk_get_id_#t~mem244#1.base, 1067 + virtblk_get_id_#t~mem244#1.offset, 8);call virtblk_get_id_#t~mem246#1.base, virtblk_get_id_#t~mem246#1.offset := read~$Pointer$(virtblk_get_id_~vblk~2#1.base, 72 + virtblk_get_id_~vblk~2#1.offset, 8);assume { :begin_inline_blk_execute_rq } true;blk_execute_rq_#in~arg0#1.base, blk_execute_rq_#in~arg0#1.offset, blk_execute_rq_#in~arg1#1.base, blk_execute_rq_#in~arg1#1.offset, blk_execute_rq_#in~arg2#1.base, blk_execute_rq_#in~arg2#1.offset, blk_execute_rq_#in~arg3#1 := virtblk_get_id_#t~mem245#1.base, virtblk_get_id_#t~mem245#1.offset, virtblk_get_id_#t~mem246#1.base, virtblk_get_id_#t~mem246#1.offset, virtblk_get_id_~req~1#1.base, virtblk_get_id_~req~1#1.offset, 0;havoc blk_execute_rq_#res#1;havoc blk_execute_rq_#t~nondet402#1, blk_execute_rq_~arg0#1.base, blk_execute_rq_~arg0#1.offset, blk_execute_rq_~arg1#1.base, blk_execute_rq_~arg1#1.offset, blk_execute_rq_~arg2#1.base, blk_execute_rq_~arg2#1.offset, blk_execute_rq_~arg3#1;blk_execute_rq_~arg0#1.base, blk_execute_rq_~arg0#1.offset := blk_execute_rq_#in~arg0#1.base, blk_execute_rq_#in~arg0#1.offset;blk_execute_rq_~arg1#1.base, blk_execute_rq_~arg1#1.offset := blk_execute_rq_#in~arg1#1.base, blk_execute_rq_#in~arg1#1.offset;blk_execute_rq_~arg2#1.base, blk_execute_rq_~arg2#1.offset := blk_execute_rq_#in~arg2#1.base, blk_execute_rq_#in~arg2#1.offset;blk_execute_rq_~arg3#1 := blk_execute_rq_#in~arg3#1;assume -2147483648 <= blk_execute_rq_#t~nondet402#1 && blk_execute_rq_#t~nondet402#1 <= 2147483647;blk_execute_rq_#res#1 := blk_execute_rq_#t~nondet402#1;havoc blk_execute_rq_#t~nondet402#1; {89089#false} is VALID [2022-02-20 22:06:45,190 INFO L290 TraceCheckUtils]: 157: Hoare triple {89089#false} virtblk_get_id_#t~ret247#1 := blk_execute_rq_#res#1;assume { :end_inline_blk_execute_rq } true;assume -2147483648 <= virtblk_get_id_#t~ret247#1 && virtblk_get_id_#t~ret247#1 <= 2147483647;virtblk_get_id_~tmp___3~1#1 := virtblk_get_id_#t~ret247#1;havoc virtblk_get_id_#t~mem244#1.base, virtblk_get_id_#t~mem244#1.offset;havoc virtblk_get_id_#t~mem245#1.base, virtblk_get_id_#t~mem245#1.offset;havoc virtblk_get_id_#t~mem246#1.base, virtblk_get_id_#t~mem246#1.offset;havoc virtblk_get_id_#t~ret247#1;virtblk_get_id_#res#1 := virtblk_get_id_~tmp___3~1#1; {89089#false} is VALID [2022-02-20 22:06:45,190 INFO L290 TraceCheckUtils]: 158: Hoare triple {89089#false} virtblk_ioctl_#t~ret250#1 := virtblk_get_id_#res#1;assume { :end_inline_virtblk_get_id } true;assume -2147483648 <= virtblk_ioctl_#t~ret250#1 && virtblk_ioctl_#t~ret250#1 <= 2147483647;virtblk_ioctl_~err~1#1 := virtblk_ioctl_#t~ret250#1;havoc virtblk_ioctl_#t~ret250#1; {89089#false} is VALID [2022-02-20 22:06:45,191 INFO L290 TraceCheckUtils]: 159: Hoare triple {89089#false} assume !(0 == virtblk_ioctl_~err~1#1); {89089#false} is VALID [2022-02-20 22:06:45,191 INFO L290 TraceCheckUtils]: 160: Hoare triple {89089#false} virtblk_ioctl_#res#1 := virtblk_ioctl_~err~1#1;call ULTIMATE.dealloc(virtblk_ioctl_~#id_str~0#1.base, virtblk_ioctl_~#id_str~0#1.offset);havoc virtblk_ioctl_~#id_str~0#1.base, virtblk_ioctl_~#id_str~0#1.offset; {89089#false} is VALID [2022-02-20 22:06:45,191 INFO L290 TraceCheckUtils]: 161: Hoare triple {89089#false} main_#t~ret386#1 := virtblk_ioctl_#res#1;assume { :end_inline_virtblk_ioctl } true;assume -2147483648 <= main_#t~ret386#1 && main_#t~ret386#1 <= 2147483647;havoc main_#t~mem384#1;havoc main_#t~mem385#1;havoc main_#t~ret386#1;~ldv_state_variable_2~0 := 1; {89089#false} is VALID [2022-02-20 22:06:45,191 INFO L290 TraceCheckUtils]: 162: Hoare triple {89089#false} assume -2147483648 <= main_#t~nondet374#1 && main_#t~nondet374#1 <= 2147483647;main_~tmp___0~12#1 := main_#t~nondet374#1;havoc main_#t~nondet374#1;main_#t~switch375#1 := 0 == main_~tmp___0~12#1; {89089#false} is VALID [2022-02-20 22:06:45,191 INFO L290 TraceCheckUtils]: 163: Hoare triple {89089#false} assume !main_#t~switch375#1;main_#t~switch375#1 := main_#t~switch375#1 || 1 == main_~tmp___0~12#1; {89089#false} is VALID [2022-02-20 22:06:45,191 INFO L290 TraceCheckUtils]: 164: Hoare triple {89089#false} assume main_#t~switch375#1; {89089#false} is VALID [2022-02-20 22:06:45,191 INFO L290 TraceCheckUtils]: 165: Hoare triple {89089#false} assume 0 != ~ldv_state_variable_0~0;assume -2147483648 <= main_#t~nondet379#1 && main_#t~nondet379#1 <= 2147483647;main_~tmp___2~4#1 := main_#t~nondet379#1;havoc main_#t~nondet379#1;main_#t~switch380#1 := 0 == main_~tmp___2~4#1; {89089#false} is VALID [2022-02-20 22:06:45,191 INFO L290 TraceCheckUtils]: 166: Hoare triple {89089#false} assume main_#t~switch380#1; {89089#false} is VALID [2022-02-20 22:06:45,192 INFO L290 TraceCheckUtils]: 167: Hoare triple {89089#false} assume 3 == ~ldv_state_variable_0~0 && 0 == ~ref_cnt~0;assume { :begin_inline_fini } true;assume { :begin_inline_unregister_blkdev } true;unregister_blkdev_#in~arg0#1, unregister_blkdev_#in~arg1#1.base, unregister_blkdev_#in~arg1#1.offset := ~major~0, 10, 0;havoc unregister_blkdev_~arg0#1, unregister_blkdev_~arg1#1.base, unregister_blkdev_~arg1#1.offset;unregister_blkdev_~arg0#1 := unregister_blkdev_#in~arg0#1;unregister_blkdev_~arg1#1.base, unregister_blkdev_~arg1#1.offset := unregister_blkdev_#in~arg1#1.base, unregister_blkdev_#in~arg1#1.offset; {89089#false} is VALID [2022-02-20 22:06:45,192 INFO L290 TraceCheckUtils]: 168: Hoare triple {89089#false} assume { :end_inline_unregister_blkdev } true;assume { :begin_inline_unregister_virtio_driver } true;unregister_virtio_driver_#in~arg0#1.base, unregister_virtio_driver_#in~arg0#1.offset := ~#virtio_blk~0.base, ~#virtio_blk~0.offset;havoc unregister_virtio_driver_~arg0#1.base, unregister_virtio_driver_~arg0#1.offset;unregister_virtio_driver_~arg0#1.base, unregister_virtio_driver_~arg0#1.offset := unregister_virtio_driver_#in~arg0#1.base, unregister_virtio_driver_#in~arg0#1.offset; {89089#false} is VALID [2022-02-20 22:06:45,192 INFO L290 TraceCheckUtils]: 169: Hoare triple {89089#false} assume { :end_inline_unregister_virtio_driver } true; {89089#false} is VALID [2022-02-20 22:06:45,192 INFO L290 TraceCheckUtils]: 170: Hoare triple {89089#false} assume { :end_inline_fini } true;~ldv_state_variable_0~0 := 2; {89089#false} is VALID [2022-02-20 22:06:45,192 INFO L290 TraceCheckUtils]: 171: Hoare triple {89089#false} assume { :begin_inline_ldv_check_final_state } true; {89089#false} is VALID [2022-02-20 22:06:45,192 INFO L290 TraceCheckUtils]: 172: Hoare triple {89089#false} assume 0 != ~ldv_blk_rq~0; {89089#false} is VALID [2022-02-20 22:06:45,192 INFO L272 TraceCheckUtils]: 173: Hoare triple {89089#false} call ldv_error(); {89089#false} is VALID [2022-02-20 22:06:45,192 INFO L290 TraceCheckUtils]: 174: Hoare triple {89089#false} assume !false; {89089#false} is VALID [2022-02-20 22:06:45,193 INFO L134 CoverageAnalysis]: Checked inductivity of 114 backedges. 0 proven. 4 refuted. 0 times theorem prover too weak. 110 trivial. 0 not checked. [2022-02-20 22:06:45,193 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 22:06:45,193 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1537769980] [2022-02-20 22:06:45,193 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1537769980] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 22:06:45,193 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [75700772] [2022-02-20 22:06:45,194 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 22:06:45,194 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 22:06:45,194 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 22:06:45,195 INFO L229 MonitoredProcess]: Starting monitored process 2 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-02-20 22:06:45,198 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Waiting until timeout for monitored process [2022-02-20 22:06:45,551 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 22:06:45,558 INFO L263 TraceCheckSpWp]: Trace formula consists of 1240 conjuncts, 11 conjunts are in the unsatisfiable core [2022-02-20 22:06:45,644 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 22:06:45,651 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 22:06:46,038 INFO L290 TraceCheckUtils]: 0: Hoare triple {89088#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(95, 2);call #Ultimate.allocInit(22, 3);call #Ultimate.allocInit(9, 4);call #Ultimate.allocInit(5, 5);call write~init~int(118, 5, 0, 1);call write~init~int(100, 5, 1, 1);call write~init~int(37, 5, 2, 1);call write~init~int(99, 5, 3, 1);call write~init~int(0, 5, 4, 1);call #Ultimate.allocInit(7, 6);call write~init~int(118, 6, 0, 1);call write~init~int(100, 6, 1, 1);call write~init~int(37, 6, 2, 1);call write~init~int(99, 6, 3, 1);call write~init~int(37, 6, 4, 1);call write~init~int(99, 6, 5, 1);call write~init~int(0, 6, 6, 1);call #Ultimate.allocInit(9, 7);call #Ultimate.allocInit(11, 8);call #Ultimate.allocInit(8, 9);call #Ultimate.allocInit(8, 10);~LDV_IN_INTERRUPT~0 := 1;~virtblk_fops_group0~0.base, ~virtblk_fops_group0~0.offset := 0, 0;~ldv_state_variable_2~0 := 0;~ref_cnt~0 := 0;~ldv_state_variable_1~0 := 0;~virtio_blk_group0~0.base, ~virtio_blk_group0~0.offset := 0, 0;~ldv_state_variable_0~0 := 0;~major~0 := 0;~index~0 := 0;~#virtblk_fops~0.base, ~#virtblk_fops~0.offset := 11, 0;call #Ultimate.allocInit(96, 11);call write~init~$Pointer$(0, 0, ~#virtblk_fops~0.base, ~#virtblk_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtblk_fops~0.base, 8 + ~#virtblk_fops~0.offset, 8);call write~init~$Pointer$(#funAddr~virtblk_ioctl.base, #funAddr~virtblk_ioctl.offset, ~#virtblk_fops~0.base, 16 + ~#virtblk_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtblk_fops~0.base, 24 + ~#virtblk_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtblk_fops~0.base, 32 + ~#virtblk_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtblk_fops~0.base, 40 + ~#virtblk_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtblk_fops~0.base, 48 + ~#virtblk_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtblk_fops~0.base, 56 + ~#virtblk_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtblk_fops~0.base, 64 + ~#virtblk_fops~0.offset, 8);call write~init~$Pointer$(#funAddr~virtblk_getgeo.base, #funAddr~virtblk_getgeo.offset, ~#virtblk_fops~0.base, 72 + ~#virtblk_fops~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtblk_fops~0.base, 80 + ~#virtblk_fops~0.offset, 8);call write~init~$Pointer$(~#__this_module~0.base, ~#__this_module~0.offset, ~#virtblk_fops~0.base, 88 + ~#virtblk_fops~0.offset, 8);~#id_table~0.base, ~#id_table~0.offset := 12, 0;call #Ultimate.allocInit(16, 12);call write~init~int(2, ~#id_table~0.base, ~#id_table~0.offset, 4);call write~init~int(4294967295, ~#id_table~0.base, 4 + ~#id_table~0.offset, 4);call write~init~int(0, ~#id_table~0.base, 8 + ~#id_table~0.offset, 4);call write~init~int(0, ~#id_table~0.base, 12 + ~#id_table~0.offset, 4);~#features~0.base, ~#features~0.offset := 13, 0;call #Ultimate.allocInit(36, 13);call write~init~int(0, ~#features~0.base, ~#features~0.offset, 4);call write~init~int(2, ~#features~0.base, 4 + ~#features~0.offset, 4);call write~init~int(1, ~#features~0.base, 8 + ~#features~0.offset, 4);call write~init~int(4, ~#features~0.base, 12 + ~#features~0.offset, 4);call write~init~int(5, ~#features~0.base, 16 + ~#features~0.offset, 4);call write~init~int(6, ~#features~0.base, 20 + ~#features~0.offset, 4);call write~init~int(7, ~#features~0.base, 24 + ~#features~0.offset, 4);call write~init~int(9, ~#features~0.base, 28 + ~#features~0.offset, 4);call write~init~int(10, ~#features~0.base, 32 + ~#features~0.offset, 4);~#virtio_blk~0.base, ~#virtio_blk~0.offset := 14, 0;call #Ultimate.allocInit(141, 14);call write~init~$Pointer$(8, 0, ~#virtio_blk~0.base, ~#virtio_blk~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtio_blk~0.base, 8 + ~#virtio_blk~0.offset, 8);call write~init~$Pointer$(~#__this_module~0.base, ~#__this_module~0.offset, ~#virtio_blk~0.base, 16 + ~#virtio_blk~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtio_blk~0.base, 24 + ~#virtio_blk~0.offset, 8);call write~init~int(0, ~#virtio_blk~0.base, 32 + ~#virtio_blk~0.offset, 1);call write~init~$Pointer$(0, 0, ~#virtio_blk~0.base, 33 + ~#virtio_blk~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtio_blk~0.base, 41 + ~#virtio_blk~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtio_blk~0.base, 49 + ~#virtio_blk~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtio_blk~0.base, 57 + ~#virtio_blk~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtio_blk~0.base, 65 + ~#virtio_blk~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtio_blk~0.base, 73 + ~#virtio_blk~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtio_blk~0.base, 81 + ~#virtio_blk~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtio_blk~0.base, 89 + ~#virtio_blk~0.offset, 8);call write~init~$Pointer$(~#id_table~0.base, ~#id_table~0.offset, ~#virtio_blk~0.base, 97 + ~#virtio_blk~0.offset, 8);call write~init~$Pointer$(~#features~0.base, ~#features~0.offset, ~#virtio_blk~0.base, 105 + ~#virtio_blk~0.offset, 8);call write~init~int(9, ~#virtio_blk~0.base, 113 + ~#virtio_blk~0.offset, 4);call write~init~$Pointer$(#funAddr~virtblk_probe.base, #funAddr~virtblk_probe.offset, ~#virtio_blk~0.base, 117 + ~#virtio_blk~0.offset, 8);call write~init~$Pointer$(#funAddr~virtblk_remove.base, #funAddr~virtblk_remove.offset, ~#virtio_blk~0.base, 125 + ~#virtio_blk~0.offset, 8);call write~init~$Pointer$(0, 0, ~#virtio_blk~0.base, 133 + ~#virtio_blk~0.offset, 8);~__mod_virtio_device_table~0.device := 0;~__mod_virtio_device_table~0.vendor := 0;~ldv_retval_0~0 := 0;~ldv_retval_1~0 := 0;~ldv_blk_rq~0 := 0; {89088#true} is VALID [2022-02-20 22:06:46,039 INFO L290 TraceCheckUtils]: 1: Hoare triple {89088#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~ret370#1.base, main_#t~ret370#1.offset, main_#t~ret371#1.base, main_#t~ret371#1.offset, main_#t~ret372#1.base, main_#t~ret372#1.offset, main_#t~nondet373#1, main_#t~nondet374#1, main_#t~switch375#1, main_#t~nondet376#1, main_#t~switch377#1, main_#t~ret378#1, main_#t~nondet379#1, main_#t~switch380#1, main_#t~ret381#1, main_#t~nondet382#1, main_#t~switch383#1, main_#t~mem384#1, main_#t~mem385#1, main_#t~ret386#1, main_#t~ret387#1, main_~#ldvarg1~0#1.base, main_~#ldvarg1~0#1.offset, main_~#ldvarg3~0#1.base, main_~#ldvarg3~0#1.offset, main_~ldvarg0~0#1.base, main_~ldvarg0~0#1.offset, main_~tmp~25#1.base, main_~tmp~25#1.offset, main_~ldvarg2~0#1, main_~tmp___0~12#1, main_~tmp___1~7#1, main_~tmp___2~4#1, main_~tmp___3~3#1;call main_~#ldvarg1~0#1.base, main_~#ldvarg1~0#1.offset := #Ultimate.allocOnStack(8);call main_~#ldvarg3~0#1.base, main_~#ldvarg3~0#1.offset := #Ultimate.allocOnStack(4);havoc main_~ldvarg0~0#1.base, main_~ldvarg0~0#1.offset;havoc main_~tmp~25#1.base, main_~tmp~25#1.offset;havoc main_~ldvarg2~0#1;havoc main_~tmp___0~12#1;havoc main_~tmp___1~7#1;havoc main_~tmp___2~4#1;havoc main_~tmp___3~3#1; {89088#true} is VALID [2022-02-20 22:06:46,039 INFO L272 TraceCheckUtils]: 2: Hoare triple {89088#true} call main_#t~ret370#1.base, main_#t~ret370#1.offset := ldv_init_zalloc(16); {89088#true} is VALID [2022-02-20 22:06:46,039 INFO L290 TraceCheckUtils]: 3: Hoare triple {89088#true} ~size := #in~size;havoc ~p~2.base, ~p~2.offset;havoc ~tmp~4.base, ~tmp~4.offset;call #t~malloc109.base, #t~malloc109.offset := #Ultimate.allocOnHeap(~size); {89088#true} is VALID [2022-02-20 22:06:46,039 INFO L272 TraceCheckUtils]: 4: Hoare triple {89088#true} call #Ultimate.meminit(#t~malloc109.base, #t~malloc109.offset, 1, ~size, ~size); {89088#true} is VALID [2022-02-20 22:06:46,040 INFO L290 TraceCheckUtils]: 5: Hoare triple {89088#true} #memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, #ptr.base); {89088#true} is VALID [2022-02-20 22:06:46,040 INFO L290 TraceCheckUtils]: 6: Hoare triple {89088#true} assume true; {89088#true} is VALID [2022-02-20 22:06:46,040 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {89088#true} {89088#true} #1074#return; {89088#true} is VALID [2022-02-20 22:06:46,040 INFO L290 TraceCheckUtils]: 8: Hoare triple {89088#true} ~tmp~4.base, ~tmp~4.offset := #t~malloc109.base, #t~malloc109.offset;~p~2.base, ~p~2.offset := ~tmp~4.base, ~tmp~4.offset; {89088#true} is VALID [2022-02-20 22:06:46,040 INFO L272 TraceCheckUtils]: 9: Hoare triple {89088#true} call assume_abort_if_not((if 0 != (~p~2.base + ~p~2.offset) % 18446744073709551616 then 1 else 0)); {89088#true} is VALID [2022-02-20 22:06:46,040 INFO L290 TraceCheckUtils]: 10: Hoare triple {89088#true} ~cond := #in~cond; {89088#true} is VALID [2022-02-20 22:06:46,040 INFO L290 TraceCheckUtils]: 11: Hoare triple {89088#true} assume !(0 == ~cond); {89088#true} is VALID [2022-02-20 22:06:46,040 INFO L290 TraceCheckUtils]: 12: Hoare triple {89088#true} assume true; {89088#true} is VALID [2022-02-20 22:06:46,041 INFO L284 TraceCheckUtils]: 13: Hoare quadruple {89088#true} {89088#true} #1076#return; {89088#true} is VALID [2022-02-20 22:06:46,041 INFO L290 TraceCheckUtils]: 14: Hoare triple {89088#true} #res.base, #res.offset := ~p~2.base, ~p~2.offset; {89088#true} is VALID [2022-02-20 22:06:46,041 INFO L290 TraceCheckUtils]: 15: Hoare triple {89088#true} assume true; {89088#true} is VALID [2022-02-20 22:06:46,041 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {89088#true} {89088#true} #1084#return; {89088#true} is VALID [2022-02-20 22:06:46,041 INFO L290 TraceCheckUtils]: 17: Hoare triple {89088#true} main_~tmp~25#1.base, main_~tmp~25#1.offset := main_#t~ret370#1.base, main_#t~ret370#1.offset;havoc main_#t~ret370#1.base, main_#t~ret370#1.offset;main_~ldvarg0~0#1.base, main_~ldvarg0~0#1.offset := main_~tmp~25#1.base, main_~tmp~25#1.offset;assume { :begin_inline_ldv_initialize } true; {89088#true} is VALID [2022-02-20 22:06:46,041 INFO L290 TraceCheckUtils]: 18: Hoare triple {89088#true} assume { :end_inline_ldv_initialize } true; {89088#true} is VALID [2022-02-20 22:06:46,041 INFO L272 TraceCheckUtils]: 19: Hoare triple {89088#true} call main_#t~ret371#1.base, main_#t~ret371#1.offset := ldv_memset(main_~#ldvarg1~0#1.base, main_~#ldvarg1~0#1.offset, 0, 8); {89088#true} is VALID [2022-02-20 22:06:46,051 INFO L290 TraceCheckUtils]: 20: Hoare triple {89088#true} ~s#1.base, ~s#1.offset := #in~s#1.base, #in~s#1.offset;~c#1 := #in~c#1;~n#1 := #in~n#1;havoc ~tmp~5#1.base, ~tmp~5#1.offset;assume { :begin_inline_#Ultimate.C_memset } true;#Ultimate.C_memset_#ptr#1.base, #Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#value#1, #Ultimate.C_memset_#amount#1 := ~s#1.base, ~s#1.offset, ~c#1, ~n#1;havoc #Ultimate.C_memset_#res#1.base, #Ultimate.C_memset_#res#1.offset;havoc #Ultimate.C_memset_#t~loopctr416#1;#Ultimate.C_memset_#t~loopctr416#1 := 0; {89305#(and (= |ldv_memset_#Ultimate.C_memset_#t~loopctr416#1| 0) (= |ldv_memset_#in~n#1| |ldv_memset_#Ultimate.C_memset_#amount#1|))} is VALID [2022-02-20 22:06:46,051 INFO L290 TraceCheckUtils]: 21: Hoare triple {89305#(and (= |ldv_memset_#Ultimate.C_memset_#t~loopctr416#1| 0) (= |ldv_memset_#in~n#1| |ldv_memset_#Ultimate.C_memset_#amount#1|))} assume !(#Ultimate.C_memset_#t~loopctr416#1 % 18446744073709551616 < #Ultimate.C_memset_#amount#1 % 18446744073709551616); {89309#(not (< 0 (mod |ldv_memset_#in~n#1| 18446744073709551616)))} is VALID [2022-02-20 22:06:46,052 INFO L290 TraceCheckUtils]: 22: Hoare triple {89309#(not (< 0 (mod |ldv_memset_#in~n#1| 18446744073709551616)))} assume #Ultimate.C_memset_#res#1.base == #Ultimate.C_memset_#ptr#1.base && #Ultimate.C_memset_#res#1.offset == #Ultimate.C_memset_#ptr#1.offset;#t~memset~res110#1.base, #t~memset~res110#1.offset := #Ultimate.C_memset_#res#1.base, #Ultimate.C_memset_#res#1.offset;assume { :end_inline_#Ultimate.C_memset } true;~tmp~5#1.base, ~tmp~5#1.offset := ~s#1.base, ~s#1.offset;havoc #t~memset~res110#1.base, #t~memset~res110#1.offset;#res#1.base, #res#1.offset := ~tmp~5#1.base, ~tmp~5#1.offset; {89309#(not (< 0 (mod |ldv_memset_#in~n#1| 18446744073709551616)))} is VALID [2022-02-20 22:06:46,052 INFO L290 TraceCheckUtils]: 23: Hoare triple {89309#(not (< 0 (mod |ldv_memset_#in~n#1| 18446744073709551616)))} assume true; {89309#(not (< 0 (mod |ldv_memset_#in~n#1| 18446744073709551616)))} is VALID [2022-02-20 22:06:46,053 INFO L284 TraceCheckUtils]: 24: Hoare quadruple {89309#(not (< 0 (mod |ldv_memset_#in~n#1| 18446744073709551616)))} {89088#true} #1086#return; {89089#false} is VALID [2022-02-20 22:06:46,053 INFO L290 TraceCheckUtils]: 25: Hoare triple {89089#false} havoc main_#t~ret371#1.base, main_#t~ret371#1.offset; {89089#false} is VALID [2022-02-20 22:06:46,053 INFO L272 TraceCheckUtils]: 26: Hoare triple {89089#false} call main_#t~ret372#1.base, main_#t~ret372#1.offset := ldv_memset(main_~#ldvarg3~0#1.base, main_~#ldvarg3~0#1.offset, 0, 4); {89089#false} is VALID [2022-02-20 22:06:46,053 INFO L290 TraceCheckUtils]: 27: Hoare triple {89089#false} ~s#1.base, ~s#1.offset := #in~s#1.base, #in~s#1.offset;~c#1 := #in~c#1;~n#1 := #in~n#1;havoc ~tmp~5#1.base, ~tmp~5#1.offset;assume { :begin_inline_#Ultimate.C_memset } true;#Ultimate.C_memset_#ptr#1.base, #Ultimate.C_memset_#ptr#1.offset, #Ultimate.C_memset_#value#1, #Ultimate.C_memset_#amount#1 := ~s#1.base, ~s#1.offset, ~c#1, ~n#1;havoc #Ultimate.C_memset_#res#1.base, #Ultimate.C_memset_#res#1.offset;havoc #Ultimate.C_memset_#t~loopctr416#1;#Ultimate.C_memset_#t~loopctr416#1 := 0; {89089#false} is VALID [2022-02-20 22:06:46,054 INFO L290 TraceCheckUtils]: 28: Hoare triple {89089#false} assume !(#Ultimate.C_memset_#t~loopctr416#1 % 18446744073709551616 < #Ultimate.C_memset_#amount#1 % 18446744073709551616); {89089#false} is VALID [2022-02-20 22:06:46,054 INFO L290 TraceCheckUtils]: 29: Hoare triple {89089#false} assume #Ultimate.C_memset_#res#1.base == #Ultimate.C_memset_#ptr#1.base && #Ultimate.C_memset_#res#1.offset == #Ultimate.C_memset_#ptr#1.offset;#t~memset~res110#1.base, #t~memset~res110#1.offset := #Ultimate.C_memset_#res#1.base, #Ultimate.C_memset_#res#1.offset;assume { :end_inline_#Ultimate.C_memset } true;~tmp~5#1.base, ~tmp~5#1.offset := ~s#1.base, ~s#1.offset;havoc #t~memset~res110#1.base, #t~memset~res110#1.offset;#res#1.base, #res#1.offset := ~tmp~5#1.base, ~tmp~5#1.offset; {89089#false} is VALID [2022-02-20 22:06:46,054 INFO L290 TraceCheckUtils]: 30: Hoare triple {89089#false} assume true; {89089#false} is VALID [2022-02-20 22:06:46,054 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {89089#false} {89089#false} #1088#return; {89089#false} is VALID [2022-02-20 22:06:46,054 INFO L290 TraceCheckUtils]: 32: Hoare triple {89089#false} havoc main_#t~ret372#1.base, main_#t~ret372#1.offset;main_~ldvarg2~0#1 := main_#t~nondet373#1;havoc main_#t~nondet373#1;~ldv_state_variable_1~0 := 0;~ref_cnt~0 := 0;~ldv_state_variable_0~0 := 1;~ldv_state_variable_2~0 := 0; {89089#false} is VALID [2022-02-20 22:06:46,054 INFO L290 TraceCheckUtils]: 33: Hoare triple {89089#false} assume -2147483648 <= main_#t~nondet374#1 && main_#t~nondet374#1 <= 2147483647;main_~tmp___0~12#1 := main_#t~nondet374#1;havoc main_#t~nondet374#1;main_#t~switch375#1 := 0 == main_~tmp___0~12#1; {89089#false} is VALID [2022-02-20 22:06:46,054 INFO L290 TraceCheckUtils]: 34: Hoare triple {89089#false} assume !main_#t~switch375#1;main_#t~switch375#1 := main_#t~switch375#1 || 1 == main_~tmp___0~12#1; {89089#false} is VALID [2022-02-20 22:06:46,054 INFO L290 TraceCheckUtils]: 35: Hoare triple {89089#false} assume main_#t~switch375#1; {89089#false} is VALID [2022-02-20 22:06:46,055 INFO L290 TraceCheckUtils]: 36: Hoare triple {89089#false} assume 0 != ~ldv_state_variable_0~0;assume -2147483648 <= main_#t~nondet379#1 && main_#t~nondet379#1 <= 2147483647;main_~tmp___2~4#1 := main_#t~nondet379#1;havoc main_#t~nondet379#1;main_#t~switch380#1 := 0 == main_~tmp___2~4#1; {89089#false} is VALID [2022-02-20 22:06:46,055 INFO L290 TraceCheckUtils]: 37: Hoare triple {89089#false} assume !main_#t~switch380#1;main_#t~switch380#1 := main_#t~switch380#1 || 1 == main_~tmp___2~4#1; {89089#false} is VALID [2022-02-20 22:06:46,055 INFO L290 TraceCheckUtils]: 38: Hoare triple {89089#false} assume main_#t~switch380#1; {89089#false} is VALID [2022-02-20 22:06:46,055 INFO L290 TraceCheckUtils]: 39: Hoare triple {89089#false} assume 1 == ~ldv_state_variable_0~0;assume { :begin_inline_init } true;havoc init_#res#1;havoc init_#t~ret366#1, init_#t~ret367#1, init_~tmp~22#1;havoc init_~tmp~22#1;assume { :begin_inline_register_blkdev } true;register_blkdev_#in~arg0#1, register_blkdev_#in~arg1#1.base, register_blkdev_#in~arg1#1.offset := 0, 9, 0;havoc register_blkdev_#res#1;havoc register_blkdev_#t~nondet409#1, register_blkdev_~arg0#1, register_blkdev_~arg1#1.base, register_blkdev_~arg1#1.offset;register_blkdev_~arg0#1 := register_blkdev_#in~arg0#1;register_blkdev_~arg1#1.base, register_blkdev_~arg1#1.offset := register_blkdev_#in~arg1#1.base, register_blkdev_#in~arg1#1.offset;assume -2147483648 <= register_blkdev_#t~nondet409#1 && register_blkdev_#t~nondet409#1 <= 2147483647;register_blkdev_#res#1 := register_blkdev_#t~nondet409#1;havoc register_blkdev_#t~nondet409#1; {89089#false} is VALID [2022-02-20 22:06:46,055 INFO L290 TraceCheckUtils]: 40: Hoare triple {89089#false} init_#t~ret366#1 := register_blkdev_#res#1;assume { :end_inline_register_blkdev } true;assume -2147483648 <= init_#t~ret366#1 && init_#t~ret366#1 <= 2147483647;~major~0 := init_#t~ret366#1;havoc init_#t~ret366#1; {89089#false} is VALID [2022-02-20 22:06:46,055 INFO L290 TraceCheckUtils]: 41: Hoare triple {89089#false} assume !(~major~0 < 0);assume { :begin_inline_register_virtio_driver } true;register_virtio_driver_#in~arg0#1.base, register_virtio_driver_#in~arg0#1.offset := ~#virtio_blk~0.base, ~#virtio_blk~0.offset;havoc register_virtio_driver_#res#1;havoc register_virtio_driver_#t~nondet410#1, register_virtio_driver_~arg0#1.base, register_virtio_driver_~arg0#1.offset;register_virtio_driver_~arg0#1.base, register_virtio_driver_~arg0#1.offset := register_virtio_driver_#in~arg0#1.base, register_virtio_driver_#in~arg0#1.offset;assume -2147483648 <= register_virtio_driver_#t~nondet410#1 && register_virtio_driver_#t~nondet410#1 <= 2147483647;register_virtio_driver_#res#1 := register_virtio_driver_#t~nondet410#1;havoc register_virtio_driver_#t~nondet410#1; {89089#false} is VALID [2022-02-20 22:06:46,055 INFO L290 TraceCheckUtils]: 42: Hoare triple {89089#false} init_#t~ret367#1 := register_virtio_driver_#res#1;assume { :end_inline_register_virtio_driver } true;assume -2147483648 <= init_#t~ret367#1 && init_#t~ret367#1 <= 2147483647;init_~tmp~22#1 := init_#t~ret367#1;havoc init_#t~ret367#1;init_#res#1 := init_~tmp~22#1; {89089#false} is VALID [2022-02-20 22:06:46,055 INFO L290 TraceCheckUtils]: 43: Hoare triple {89089#false} main_#t~ret381#1 := init_#res#1;assume { :end_inline_init } true;assume -2147483648 <= main_#t~ret381#1 && main_#t~ret381#1 <= 2147483647;~ldv_retval_1~0 := main_#t~ret381#1;havoc main_#t~ret381#1; {89089#false} is VALID [2022-02-20 22:06:46,055 INFO L290 TraceCheckUtils]: 44: Hoare triple {89089#false} assume 0 == ~ldv_retval_1~0;~ldv_state_variable_0~0 := 3;~ldv_state_variable_2~0 := 1;assume { :begin_inline_ldv_initialize_block_device_operations_2 } true;havoc ldv_initialize_block_device_operations_2_#t~ret369#1.base, ldv_initialize_block_device_operations_2_#t~ret369#1.offset, ldv_initialize_block_device_operations_2_~tmp~24#1.base, ldv_initialize_block_device_operations_2_~tmp~24#1.offset;havoc ldv_initialize_block_device_operations_2_~tmp~24#1.base, ldv_initialize_block_device_operations_2_~tmp~24#1.offset; {89089#false} is VALID [2022-02-20 22:06:46,056 INFO L272 TraceCheckUtils]: 45: Hoare triple {89089#false} call ldv_initialize_block_device_operations_2_#t~ret369#1.base, ldv_initialize_block_device_operations_2_#t~ret369#1.offset := ldv_init_zalloc(464); {89089#false} is VALID [2022-02-20 22:06:46,056 INFO L290 TraceCheckUtils]: 46: Hoare triple {89089#false} ~size := #in~size;havoc ~p~2.base, ~p~2.offset;havoc ~tmp~4.base, ~tmp~4.offset;call #t~malloc109.base, #t~malloc109.offset := #Ultimate.allocOnHeap(~size); {89089#false} is VALID [2022-02-20 22:06:46,056 INFO L272 TraceCheckUtils]: 47: Hoare triple {89089#false} call #Ultimate.meminit(#t~malloc109.base, #t~malloc109.offset, 1, ~size, ~size); {89089#false} is VALID [2022-02-20 22:06:46,056 INFO L290 TraceCheckUtils]: 48: Hoare triple {89089#false} #memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, #ptr.base); {89089#false} is VALID [2022-02-20 22:06:46,056 INFO L290 TraceCheckUtils]: 49: Hoare triple {89089#false} assume true; {89089#false} is VALID [2022-02-20 22:06:46,056 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {89089#false} {89089#false} #1074#return; {89089#false} is VALID [2022-02-20 22:06:46,056 INFO L290 TraceCheckUtils]: 51: Hoare triple {89089#false} ~tmp~4.base, ~tmp~4.offset := #t~malloc109.base, #t~malloc109.offset;~p~2.base, ~p~2.offset := ~tmp~4.base, ~tmp~4.offset; {89089#false} is VALID [2022-02-20 22:06:46,056 INFO L272 TraceCheckUtils]: 52: Hoare triple {89089#false} call assume_abort_if_not((if 0 != (~p~2.base + ~p~2.offset) % 18446744073709551616 then 1 else 0)); {89089#false} is VALID [2022-02-20 22:06:46,057 INFO L290 TraceCheckUtils]: 53: Hoare triple {89089#false} ~cond := #in~cond; {89089#false} is VALID [2022-02-20 22:06:46,057 INFO L290 TraceCheckUtils]: 54: Hoare triple {89089#false} assume !(0 == ~cond); {89089#false} is VALID [2022-02-20 22:06:46,057 INFO L290 TraceCheckUtils]: 55: Hoare triple {89089#false} assume true; {89089#false} is VALID [2022-02-20 22:06:46,057 INFO L284 TraceCheckUtils]: 56: Hoare quadruple {89089#false} {89089#false} #1076#return; {89089#false} is VALID [2022-02-20 22:06:46,057 INFO L290 TraceCheckUtils]: 57: Hoare triple {89089#false} #res.base, #res.offset := ~p~2.base, ~p~2.offset; {89089#false} is VALID [2022-02-20 22:06:46,057 INFO L290 TraceCheckUtils]: 58: Hoare triple {89089#false} assume true; {89089#false} is VALID [2022-02-20 22:06:46,057 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {89089#false} {89089#false} #1150#return; {89089#false} is VALID [2022-02-20 22:06:46,057 INFO L290 TraceCheckUtils]: 60: Hoare triple {89089#false} ldv_initialize_block_device_operations_2_~tmp~24#1.base, ldv_initialize_block_device_operations_2_~tmp~24#1.offset := ldv_initialize_block_device_operations_2_#t~ret369#1.base, ldv_initialize_block_device_operations_2_#t~ret369#1.offset;havoc ldv_initialize_block_device_operations_2_#t~ret369#1.base, ldv_initialize_block_device_operations_2_#t~ret369#1.offset;~virtblk_fops_group0~0.base, ~virtblk_fops_group0~0.offset := ldv_initialize_block_device_operations_2_~tmp~24#1.base, ldv_initialize_block_device_operations_2_~tmp~24#1.offset; {89089#false} is VALID [2022-02-20 22:06:46,058 INFO L290 TraceCheckUtils]: 61: Hoare triple {89089#false} assume { :end_inline_ldv_initialize_block_device_operations_2 } true;~ldv_state_variable_1~0 := 1;assume { :begin_inline_ldv_initialize_virtio_driver_1 } true;havoc ldv_initialize_virtio_driver_1_#t~ret368#1.base, ldv_initialize_virtio_driver_1_#t~ret368#1.offset, ldv_initialize_virtio_driver_1_~tmp~23#1.base, ldv_initialize_virtio_driver_1_~tmp~23#1.offset;havoc ldv_initialize_virtio_driver_1_~tmp~23#1.base, ldv_initialize_virtio_driver_1_~tmp~23#1.offset; {89089#false} is VALID [2022-02-20 22:06:46,058 INFO L272 TraceCheckUtils]: 62: Hoare triple {89089#false} call ldv_initialize_virtio_driver_1_#t~ret368#1.base, ldv_initialize_virtio_driver_1_#t~ret368#1.offset := ldv_init_zalloc(1048); {89089#false} is VALID [2022-02-20 22:06:46,058 INFO L290 TraceCheckUtils]: 63: Hoare triple {89089#false} ~size := #in~size;havoc ~p~2.base, ~p~2.offset;havoc ~tmp~4.base, ~tmp~4.offset;call #t~malloc109.base, #t~malloc109.offset := #Ultimate.allocOnHeap(~size); {89089#false} is VALID [2022-02-20 22:06:46,058 INFO L272 TraceCheckUtils]: 64: Hoare triple {89089#false} call #Ultimate.meminit(#t~malloc109.base, #t~malloc109.offset, 1, ~size, ~size); {89089#false} is VALID [2022-02-20 22:06:46,058 INFO L290 TraceCheckUtils]: 65: Hoare triple {89089#false} #memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, #ptr.base); {89089#false} is VALID [2022-02-20 22:06:46,058 INFO L290 TraceCheckUtils]: 66: Hoare triple {89089#false} assume true; {89089#false} is VALID [2022-02-20 22:06:46,058 INFO L284 TraceCheckUtils]: 67: Hoare quadruple {89089#false} {89089#false} #1074#return; {89089#false} is VALID [2022-02-20 22:06:46,058 INFO L290 TraceCheckUtils]: 68: Hoare triple {89089#false} ~tmp~4.base, ~tmp~4.offset := #t~malloc109.base, #t~malloc109.offset;~p~2.base, ~p~2.offset := ~tmp~4.base, ~tmp~4.offset; {89089#false} is VALID [2022-02-20 22:06:46,059 INFO L272 TraceCheckUtils]: 69: Hoare triple {89089#false} call assume_abort_if_not((if 0 != (~p~2.base + ~p~2.offset) % 18446744073709551616 then 1 else 0)); {89089#false} is VALID [2022-02-20 22:06:46,059 INFO L290 TraceCheckUtils]: 70: Hoare triple {89089#false} ~cond := #in~cond; {89089#false} is VALID [2022-02-20 22:06:46,059 INFO L290 TraceCheckUtils]: 71: Hoare triple {89089#false} assume !(0 == ~cond); {89089#false} is VALID [2022-02-20 22:06:46,059 INFO L290 TraceCheckUtils]: 72: Hoare triple {89089#false} assume true; {89089#false} is VALID [2022-02-20 22:06:46,059 INFO L284 TraceCheckUtils]: 73: Hoare quadruple {89089#false} {89089#false} #1076#return; {89089#false} is VALID [2022-02-20 22:06:46,059 INFO L290 TraceCheckUtils]: 74: Hoare triple {89089#false} #res.base, #res.offset := ~p~2.base, ~p~2.offset; {89089#false} is VALID [2022-02-20 22:06:46,059 INFO L290 TraceCheckUtils]: 75: Hoare triple {89089#false} assume true; {89089#false} is VALID [2022-02-20 22:06:46,059 INFO L284 TraceCheckUtils]: 76: Hoare quadruple {89089#false} {89089#false} #1152#return; {89089#false} is VALID [2022-02-20 22:06:46,060 INFO L290 TraceCheckUtils]: 77: Hoare triple {89089#false} ldv_initialize_virtio_driver_1_~tmp~23#1.base, ldv_initialize_virtio_driver_1_~tmp~23#1.offset := ldv_initialize_virtio_driver_1_#t~ret368#1.base, ldv_initialize_virtio_driver_1_#t~ret368#1.offset;havoc ldv_initialize_virtio_driver_1_#t~ret368#1.base, ldv_initialize_virtio_driver_1_#t~ret368#1.offset;~virtio_blk_group0~0.base, ~virtio_blk_group0~0.offset := ldv_initialize_virtio_driver_1_~tmp~23#1.base, ldv_initialize_virtio_driver_1_~tmp~23#1.offset; {89089#false} is VALID [2022-02-20 22:06:46,060 INFO L290 TraceCheckUtils]: 78: Hoare triple {89089#false} assume { :end_inline_ldv_initialize_virtio_driver_1 } true; {89089#false} is VALID [2022-02-20 22:06:46,060 INFO L290 TraceCheckUtils]: 79: Hoare triple {89089#false} assume !(0 != ~ldv_retval_1~0); {89089#false} is VALID [2022-02-20 22:06:46,060 INFO L290 TraceCheckUtils]: 80: Hoare triple {89089#false} assume -2147483648 <= main_#t~nondet374#1 && main_#t~nondet374#1 <= 2147483647;main_~tmp___0~12#1 := main_#t~nondet374#1;havoc main_#t~nondet374#1;main_#t~switch375#1 := 0 == main_~tmp___0~12#1; {89089#false} is VALID [2022-02-20 22:06:46,060 INFO L290 TraceCheckUtils]: 81: Hoare triple {89089#false} assume !main_#t~switch375#1;main_#t~switch375#1 := main_#t~switch375#1 || 1 == main_~tmp___0~12#1; {89089#false} is VALID [2022-02-20 22:06:46,060 INFO L290 TraceCheckUtils]: 82: Hoare triple {89089#false} assume !main_#t~switch375#1;main_#t~switch375#1 := main_#t~switch375#1 || 2 == main_~tmp___0~12#1; {89089#false} is VALID [2022-02-20 22:06:46,060 INFO L290 TraceCheckUtils]: 83: Hoare triple {89089#false} assume main_#t~switch375#1; {89089#false} is VALID [2022-02-20 22:06:46,060 INFO L290 TraceCheckUtils]: 84: Hoare triple {89089#false} assume 0 != ~ldv_state_variable_2~0;assume -2147483648 <= main_#t~nondet382#1 && main_#t~nondet382#1 <= 2147483647;main_~tmp___3~3#1 := main_#t~nondet382#1;havoc main_#t~nondet382#1;main_#t~switch383#1 := 0 == main_~tmp___3~3#1; {89089#false} is VALID [2022-02-20 22:06:46,061 INFO L290 TraceCheckUtils]: 85: Hoare triple {89089#false} assume main_#t~switch383#1; {89089#false} is VALID [2022-02-20 22:06:46,061 INFO L290 TraceCheckUtils]: 86: Hoare triple {89089#false} assume 1 == ~ldv_state_variable_2~0;call main_#t~mem384#1 := read~int(main_~#ldvarg3~0#1.base, main_~#ldvarg3~0#1.offset, 4);call main_#t~mem385#1 := read~int(main_~#ldvarg1~0#1.base, main_~#ldvarg1~0#1.offset, 8);assume { :begin_inline_virtblk_ioctl } true;virtblk_ioctl_#in~bdev#1.base, virtblk_ioctl_#in~bdev#1.offset, virtblk_ioctl_#in~mode#1, virtblk_ioctl_#in~cmd#1, virtblk_ioctl_#in~data#1 := ~virtblk_fops_group0~0.base, ~virtblk_fops_group0~0.offset, main_#t~mem384#1, main_~ldvarg2~0#1, main_#t~mem385#1;havoc virtblk_ioctl_#res#1;havoc virtblk_ioctl_#t~mem248#1.base, virtblk_ioctl_#t~mem248#1.offset, virtblk_ioctl_#t~mem249#1.base, virtblk_ioctl_#t~mem249#1.offset, virtblk_ioctl_#t~ret250#1, virtblk_ioctl_#t~ret251#1, virtblk_ioctl_#t~mem252#1.base, virtblk_ioctl_#t~mem252#1.offset, virtblk_ioctl_#t~ret253#1, virtblk_ioctl_#t~mem254#1.base, virtblk_ioctl_#t~mem254#1.offset, virtblk_ioctl_#t~ret255#1, virtblk_ioctl_~bdev#1.base, virtblk_ioctl_~bdev#1.offset, virtblk_ioctl_~mode#1, virtblk_ioctl_~cmd#1, virtblk_ioctl_~data#1, virtblk_ioctl_~disk~0#1.base, virtblk_ioctl_~disk~0#1.offset, virtblk_ioctl_~vblk~3#1.base, virtblk_ioctl_~vblk~3#1.offset, virtblk_ioctl_~usr_data~0#1.base, virtblk_ioctl_~usr_data~0#1.offset, virtblk_ioctl_~#id_str~0#1.base, virtblk_ioctl_~#id_str~0#1.offset, virtblk_ioctl_~err~1#1, virtblk_ioctl_~tmp~18#1, virtblk_ioctl_~tmp___0~9#1, virtblk_ioctl_~tmp___1~5#1, virtblk_ioctl_~tmp___2~2#1;virtblk_ioctl_~bdev#1.base, virtblk_ioctl_~bdev#1.offset := virtblk_ioctl_#in~bdev#1.base, virtblk_ioctl_#in~bdev#1.offset;virtblk_ioctl_~mode#1 := virtblk_ioctl_#in~mode#1;virtblk_ioctl_~cmd#1 := virtblk_ioctl_#in~cmd#1;virtblk_ioctl_~data#1 := virtblk_ioctl_#in~data#1;havoc virtblk_ioctl_~disk~0#1.base, virtblk_ioctl_~disk~0#1.offset;havoc virtblk_ioctl_~vblk~3#1.base, virtblk_ioctl_~vblk~3#1.offset;havoc virtblk_ioctl_~usr_data~0#1.base, virtblk_ioctl_~usr_data~0#1.offset;call virtblk_ioctl_~#id_str~0#1.base, virtblk_ioctl_~#id_str~0#1.offset := #Ultimate.allocOnStack(20);havoc virtblk_ioctl_~err~1#1;havoc virtblk_ioctl_~tmp~18#1;havoc virtblk_ioctl_~tmp___0~9#1;havoc virtblk_ioctl_~tmp___1~5#1;havoc virtblk_ioctl_~tmp___2~2#1;call virtblk_ioctl_#t~mem248#1.base, virtblk_ioctl_#t~mem248#1.offset := read~$Pointer$(virtblk_ioctl_~bdev#1.base, 240 + virtblk_ioctl_~bdev#1.offset, 8);virtblk_ioctl_~disk~0#1.base, virtblk_ioctl_~disk~0#1.offset := virtblk_ioctl_#t~mem248#1.base, virtblk_ioctl_#t~mem248#1.offset;havoc virtblk_ioctl_#t~mem248#1.base, virtblk_ioctl_#t~mem248#1.offset;call virtblk_ioctl_#t~mem249#1.base, virtblk_ioctl_#t~mem249#1.offset := read~$Pointer$(virtblk_ioctl_~disk~0#1.base, 1075 + virtblk_ioctl_~disk~0#1.offset, 8);virtblk_ioctl_~vblk~3#1.base, virtblk_ioctl_~vblk~3#1.offset := virtblk_ioctl_#t~mem249#1.base, virtblk_ioctl_#t~mem249#1.offset;havoc virtblk_ioctl_#t~mem249#1.base, virtblk_ioctl_#t~mem249#1.offset; {89089#false} is VALID [2022-02-20 22:06:46,061 INFO L290 TraceCheckUtils]: 87: Hoare triple {89089#false} assume 1447184708 == virtblk_ioctl_~cmd#1 % 4294967296;virtblk_ioctl_~usr_data~0#1.base, virtblk_ioctl_~usr_data~0#1.offset := 0, (if virtblk_ioctl_~data#1 % 18446744073709551616 % 18446744073709551616 <= 9223372036854775807 then virtblk_ioctl_~data#1 % 18446744073709551616 % 18446744073709551616 else virtblk_ioctl_~data#1 % 18446744073709551616 % 18446744073709551616 - 18446744073709551616);assume { :begin_inline_virtblk_get_id } true;virtblk_get_id_#in~disk#1.base, virtblk_get_id_#in~disk#1.offset, virtblk_get_id_#in~id_str#1.base, virtblk_get_id_#in~id_str#1.offset := virtblk_ioctl_~disk~0#1.base, virtblk_ioctl_~disk~0#1.offset, virtblk_ioctl_~#id_str~0#1.base, virtblk_ioctl_~#id_str~0#1.offset;havoc virtblk_get_id_#res#1;havoc virtblk_get_id_#t~mem233#1.base, virtblk_get_id_#t~mem233#1.offset, virtblk_get_id_#t~mem234#1.base, virtblk_get_id_#t~mem234#1.offset, virtblk_get_id_#t~mem235#1.base, virtblk_get_id_#t~mem235#1.offset, virtblk_get_id_#t~ret236#1.base, virtblk_get_id_#t~ret236#1.offset, virtblk_get_id_#t~ret237#1, virtblk_get_id_#t~ret238#1, virtblk_get_id_#t~mem239#1.base, virtblk_get_id_#t~mem239#1.offset, virtblk_get_id_#t~mem240#1.base, virtblk_get_id_#t~mem240#1.offset, virtblk_get_id_#t~ret241#1.base, virtblk_get_id_#t~ret241#1.offset, virtblk_get_id_#t~ret242#1, virtblk_get_id_#t~ret243#1, virtblk_get_id_#t~mem244#1.base, virtblk_get_id_#t~mem244#1.offset, virtblk_get_id_#t~mem245#1.base, virtblk_get_id_#t~mem245#1.offset, virtblk_get_id_#t~mem246#1.base, virtblk_get_id_#t~mem246#1.offset, virtblk_get_id_#t~ret247#1, virtblk_get_id_~disk#1.base, virtblk_get_id_~disk#1.offset, virtblk_get_id_~id_str#1.base, virtblk_get_id_~id_str#1.offset, virtblk_get_id_~vblk~2#1.base, virtblk_get_id_~vblk~2#1.offset, virtblk_get_id_~req~1#1.base, virtblk_get_id_~req~1#1.offset, virtblk_get_id_~bio~0#1.base, virtblk_get_id_~bio~0#1.offset, virtblk_get_id_~tmp~17#1, virtblk_get_id_~tmp___0~8#1, virtblk_get_id_~tmp___1~4#1, virtblk_get_id_~tmp___2~1#1, virtblk_get_id_~tmp___3~1#1;virtblk_get_id_~disk#1.base, virtblk_get_id_~disk#1.offset := virtblk_get_id_#in~disk#1.base, virtblk_get_id_#in~disk#1.offset;virtblk_get_id_~id_str#1.base, virtblk_get_id_~id_str#1.offset := virtblk_get_id_#in~id_str#1.base, virtblk_get_id_#in~id_str#1.offset;havoc virtblk_get_id_~vblk~2#1.base, virtblk_get_id_~vblk~2#1.offset;havoc virtblk_get_id_~req~1#1.base, virtblk_get_id_~req~1#1.offset;havoc virtblk_get_id_~bio~0#1.base, virtblk_get_id_~bio~0#1.offset;havoc virtblk_get_id_~tmp~17#1;havoc virtblk_get_id_~tmp___0~8#1;havoc virtblk_get_id_~tmp___1~4#1;havoc virtblk_get_id_~tmp___2~1#1;havoc virtblk_get_id_~tmp___3~1#1;call virtblk_get_id_#t~mem233#1.base, virtblk_get_id_#t~mem233#1.offset := read~$Pointer$(virtblk_get_id_~disk#1.base, 1075 + virtblk_get_id_~disk#1.offset, 8);virtblk_get_id_~vblk~2#1.base, virtblk_get_id_~vblk~2#1.offset := virtblk_get_id_#t~mem233#1.base, virtblk_get_id_#t~mem233#1.offset;havoc virtblk_get_id_#t~mem233#1.base, virtblk_get_id_#t~mem233#1.offset;call virtblk_get_id_#t~mem234#1.base, virtblk_get_id_#t~mem234#1.offset := read~$Pointer$(virtblk_get_id_~vblk~2#1.base, 72 + virtblk_get_id_~vblk~2#1.offset, 8);call virtblk_get_id_#t~mem235#1.base, virtblk_get_id_#t~mem235#1.offset := read~$Pointer$(virtblk_get_id_#t~mem234#1.base, 1067 + virtblk_get_id_#t~mem234#1.offset, 8);assume { :begin_inline_bio_map_kern } true;bio_map_kern_#in~arg0#1.base, bio_map_kern_#in~arg0#1.offset, bio_map_kern_#in~arg1#1.base, bio_map_kern_#in~arg1#1.offset, bio_map_kern_#in~arg2#1, bio_map_kern_#in~arg3#1 := virtblk_get_id_#t~mem235#1.base, virtblk_get_id_#t~mem235#1.offset, virtblk_get_id_~id_str#1.base, virtblk_get_id_~id_str#1.offset, 20, 208;havoc bio_map_kern_#res#1.base, bio_map_kern_#res#1.offset;havoc bio_map_kern_#t~ret401#1.base, bio_map_kern_#t~ret401#1.offset, bio_map_kern_~arg0#1.base, bio_map_kern_~arg0#1.offset, bio_map_kern_~arg1#1.base, bio_map_kern_~arg1#1.offset, bio_map_kern_~arg2#1, bio_map_kern_~arg3#1;bio_map_kern_~arg0#1.base, bio_map_kern_~arg0#1.offset := bio_map_kern_#in~arg0#1.base, bio_map_kern_#in~arg0#1.offset;bio_map_kern_~arg1#1.base, bio_map_kern_~arg1#1.offset := bio_map_kern_#in~arg1#1.base, bio_map_kern_#in~arg1#1.offset;bio_map_kern_~arg2#1 := bio_map_kern_#in~arg2#1;bio_map_kern_~arg3#1 := bio_map_kern_#in~arg3#1; {89089#false} is VALID [2022-02-20 22:06:46,061 INFO L272 TraceCheckUtils]: 88: Hoare triple {89089#false} call bio_map_kern_#t~ret401#1.base, bio_map_kern_#t~ret401#1.offset := ldv_malloc(112); {89089#false} is VALID [2022-02-20 22:06:46,061 INFO L290 TraceCheckUtils]: 89: Hoare triple {89089#false} ~size := #in~size;havoc ~p~0.base, ~p~0.offset;havoc ~tmp~2.base, ~tmp~2.offset;havoc ~tmp___0~0;assume -2147483648 <= #t~nondet103 && #t~nondet103 <= 2147483647;~tmp___0~0 := #t~nondet103;havoc #t~nondet103; {89089#false} is VALID [2022-02-20 22:06:46,061 INFO L290 TraceCheckUtils]: 90: Hoare triple {89089#false} assume 0 != ~tmp___0~0;#res.base, #res.offset := 0, 0; {89089#false} is VALID [2022-02-20 22:06:46,061 INFO L290 TraceCheckUtils]: 91: Hoare triple {89089#false} assume true; {89089#false} is VALID [2022-02-20 22:06:46,061 INFO L284 TraceCheckUtils]: 92: Hoare quadruple {89089#false} {89089#false} #1156#return; {89089#false} is VALID [2022-02-20 22:06:46,062 INFO L290 TraceCheckUtils]: 93: Hoare triple {89089#false} bio_map_kern_#res#1.base, bio_map_kern_#res#1.offset := bio_map_kern_#t~ret401#1.base, bio_map_kern_#t~ret401#1.offset;havoc bio_map_kern_#t~ret401#1.base, bio_map_kern_#t~ret401#1.offset; {89089#false} is VALID [2022-02-20 22:06:46,062 INFO L290 TraceCheckUtils]: 94: Hoare triple {89089#false} virtblk_get_id_#t~ret236#1.base, virtblk_get_id_#t~ret236#1.offset := bio_map_kern_#res#1.base, bio_map_kern_#res#1.offset;assume { :end_inline_bio_map_kern } true;virtblk_get_id_~bio~0#1.base, virtblk_get_id_~bio~0#1.offset := virtblk_get_id_#t~ret236#1.base, virtblk_get_id_#t~ret236#1.offset;havoc virtblk_get_id_#t~mem234#1.base, virtblk_get_id_#t~mem234#1.offset;havoc virtblk_get_id_#t~mem235#1.base, virtblk_get_id_#t~mem235#1.offset;havoc virtblk_get_id_#t~ret236#1.base, virtblk_get_id_#t~ret236#1.offset; {89089#false} is VALID [2022-02-20 22:06:46,062 INFO L272 TraceCheckUtils]: 95: Hoare triple {89089#false} call virtblk_get_id_#t~ret237#1 := IS_ERR(virtblk_get_id_~bio~0#1.base, virtblk_get_id_~bio~0#1.offset); {89089#false} is VALID [2022-02-20 22:06:46,062 INFO L290 TraceCheckUtils]: 96: Hoare triple {89089#false} ~ptr.base, ~ptr.offset := #in~ptr.base, #in~ptr.offset;havoc ~tmp~28; {89089#false} is VALID [2022-02-20 22:06:46,075 INFO L272 TraceCheckUtils]: 97: Hoare triple {89089#false} call #t~ret390 := ldv_is_err(~ptr.base, ~ptr.offset); {89089#false} is VALID [2022-02-20 22:06:46,075 INFO L290 TraceCheckUtils]: 98: Hoare triple {89089#false} ~ptr.base, ~ptr.offset := #in~ptr.base, #in~ptr.offset;#res := (if 0 == (if (~ptr.base + ~ptr.offset) % 18446744073709551616 > 2012 then 1 else 0) then 0 else 1); {89089#false} is VALID [2022-02-20 22:06:46,075 INFO L290 TraceCheckUtils]: 99: Hoare triple {89089#false} assume true; {89089#false} is VALID [2022-02-20 22:06:46,075 INFO L284 TraceCheckUtils]: 100: Hoare quadruple {89089#false} {89089#false} #1184#return; {89089#false} is VALID [2022-02-20 22:06:46,076 INFO L290 TraceCheckUtils]: 101: Hoare triple {89089#false} ~tmp~28 := #t~ret390;havoc #t~ret390;#res := ~tmp~28 % 256; {89089#false} is VALID [2022-02-20 22:06:46,076 INFO L290 TraceCheckUtils]: 102: Hoare triple {89089#false} assume true; {89089#false} is VALID [2022-02-20 22:06:46,076 INFO L284 TraceCheckUtils]: 103: Hoare quadruple {89089#false} {89089#false} #1158#return; {89089#false} is VALID [2022-02-20 22:06:46,076 INFO L290 TraceCheckUtils]: 104: Hoare triple {89089#false} assume -9223372036854775808 <= virtblk_get_id_#t~ret237#1 && virtblk_get_id_#t~ret237#1 <= 9223372036854775807;virtblk_get_id_~tmp___0~8#1 := virtblk_get_id_#t~ret237#1;havoc virtblk_get_id_#t~ret237#1; {89089#false} is VALID [2022-02-20 22:06:46,076 INFO L290 TraceCheckUtils]: 105: Hoare triple {89089#false} assume !(0 != virtblk_get_id_~tmp___0~8#1);call virtblk_get_id_#t~mem239#1.base, virtblk_get_id_#t~mem239#1.offset := read~$Pointer$(virtblk_get_id_~vblk~2#1.base, 72 + virtblk_get_id_~vblk~2#1.offset, 8);call virtblk_get_id_#t~mem240#1.base, virtblk_get_id_#t~mem240#1.offset := read~$Pointer$(virtblk_get_id_#t~mem239#1.base, 1067 + virtblk_get_id_#t~mem239#1.offset, 8);assume { :begin_inline_ldv_blk_make_request_5 } true;ldv_blk_make_request_5_#in~ldv_func_arg1#1.base, ldv_blk_make_request_5_#in~ldv_func_arg1#1.offset, ldv_blk_make_request_5_#in~ldv_func_arg2#1.base, ldv_blk_make_request_5_#in~ldv_func_arg2#1.offset, ldv_blk_make_request_5_#in~ldv_func_arg3#1 := virtblk_get_id_#t~mem240#1.base, virtblk_get_id_#t~mem240#1.offset, virtblk_get_id_~bio~0#1.base, virtblk_get_id_~bio~0#1.offset, 208;havoc ldv_blk_make_request_5_#res#1.base, ldv_blk_make_request_5_#res#1.offset;havoc ldv_blk_make_request_5_#t~ret391#1.base, ldv_blk_make_request_5_#t~ret391#1.offset, ldv_blk_make_request_5_~ldv_func_arg1#1.base, ldv_blk_make_request_5_~ldv_func_arg1#1.offset, ldv_blk_make_request_5_~ldv_func_arg2#1.base, ldv_blk_make_request_5_~ldv_func_arg2#1.offset, ldv_blk_make_request_5_~ldv_func_arg3#1, ldv_blk_make_request_5_~tmp~29#1.base, ldv_blk_make_request_5_~tmp~29#1.offset;ldv_blk_make_request_5_~ldv_func_arg1#1.base, ldv_blk_make_request_5_~ldv_func_arg1#1.offset := ldv_blk_make_request_5_#in~ldv_func_arg1#1.base, ldv_blk_make_request_5_#in~ldv_func_arg1#1.offset;ldv_blk_make_request_5_~ldv_func_arg2#1.base, ldv_blk_make_request_5_~ldv_func_arg2#1.offset := ldv_blk_make_request_5_#in~ldv_func_arg2#1.base, ldv_blk_make_request_5_#in~ldv_func_arg2#1.offset;ldv_blk_make_request_5_~ldv_func_arg3#1 := ldv_blk_make_request_5_#in~ldv_func_arg3#1;havoc ldv_blk_make_request_5_~tmp~29#1.base, ldv_blk_make_request_5_~tmp~29#1.offset;assume { :begin_inline_ldv_blk_make_request } true;ldv_blk_make_request_#in~mask#1 := ldv_blk_make_request_5_~ldv_func_arg3#1;havoc ldv_blk_make_request_#res#1.base, ldv_blk_make_request_#res#1.offset;havoc ldv_blk_make_request_#t~ret395#1.base, ldv_blk_make_request_#t~ret395#1.offset, ldv_blk_make_request_#t~ret396#1, ldv_blk_make_request_~mask#1, ldv_blk_make_request_~res~1#1.base, ldv_blk_make_request_~res~1#1.offset, ldv_blk_make_request_~tmp___0~14#1;ldv_blk_make_request_~mask#1 := ldv_blk_make_request_#in~mask#1;havoc ldv_blk_make_request_~res~1#1.base, ldv_blk_make_request_~res~1#1.offset;havoc ldv_blk_make_request_~tmp___0~14#1; {89089#false} is VALID [2022-02-20 22:06:46,076 INFO L290 TraceCheckUtils]: 106: Hoare triple {89089#false} assume !(0 != ~ldv_blk_rq~0); {89089#false} is VALID [2022-02-20 22:06:46,076 INFO L272 TraceCheckUtils]: 107: Hoare triple {89089#false} call ldv_blk_make_request_#t~ret395#1.base, ldv_blk_make_request_#t~ret395#1.offset := ldv_malloc(322); {89089#false} is VALID [2022-02-20 22:06:46,077 INFO L290 TraceCheckUtils]: 108: Hoare triple {89089#false} ~size := #in~size;havoc ~p~0.base, ~p~0.offset;havoc ~tmp~2.base, ~tmp~2.offset;havoc ~tmp___0~0;assume -2147483648 <= #t~nondet103 && #t~nondet103 <= 2147483647;~tmp___0~0 := #t~nondet103;havoc #t~nondet103; {89089#false} is VALID [2022-02-20 22:06:46,077 INFO L290 TraceCheckUtils]: 109: Hoare triple {89089#false} assume !(0 != ~tmp___0~0);call #t~malloc104.base, #t~malloc104.offset := #Ultimate.allocOnHeap(~size);~tmp~2.base, ~tmp~2.offset := #t~malloc104.base, #t~malloc104.offset;havoc #t~malloc104.base, #t~malloc104.offset;~p~0.base, ~p~0.offset := ~tmp~2.base, ~tmp~2.offset; {89089#false} is VALID [2022-02-20 22:06:46,077 INFO L272 TraceCheckUtils]: 110: Hoare triple {89089#false} call assume_abort_if_not((if 0 != (~p~0.base + ~p~0.offset) % 18446744073709551616 then 1 else 0)); {89089#false} is VALID [2022-02-20 22:06:46,077 INFO L290 TraceCheckUtils]: 111: Hoare triple {89089#false} ~cond := #in~cond; {89089#false} is VALID [2022-02-20 22:06:46,077 INFO L290 TraceCheckUtils]: 112: Hoare triple {89089#false} assume !(0 == ~cond); {89089#false} is VALID [2022-02-20 22:06:46,077 INFO L290 TraceCheckUtils]: 113: Hoare triple {89089#false} assume true; {89089#false} is VALID [2022-02-20 22:06:46,077 INFO L284 TraceCheckUtils]: 114: Hoare quadruple {89089#false} {89089#false} #1078#return; {89089#false} is VALID [2022-02-20 22:06:46,077 INFO L272 TraceCheckUtils]: 115: Hoare triple {89089#false} call #t~ret105 := IS_ERR(~p~0.base, ~p~0.offset); {89089#false} is VALID [2022-02-20 22:06:46,077 INFO L290 TraceCheckUtils]: 116: Hoare triple {89089#false} ~ptr.base, ~ptr.offset := #in~ptr.base, #in~ptr.offset;havoc ~tmp~28; {89089#false} is VALID [2022-02-20 22:06:46,078 INFO L272 TraceCheckUtils]: 117: Hoare triple {89089#false} call #t~ret390 := ldv_is_err(~ptr.base, ~ptr.offset); {89089#false} is VALID [2022-02-20 22:06:46,078 INFO L290 TraceCheckUtils]: 118: Hoare triple {89089#false} ~ptr.base, ~ptr.offset := #in~ptr.base, #in~ptr.offset;#res := (if 0 == (if (~ptr.base + ~ptr.offset) % 18446744073709551616 > 2012 then 1 else 0) then 0 else 1); {89089#false} is VALID [2022-02-20 22:06:46,078 INFO L290 TraceCheckUtils]: 119: Hoare triple {89089#false} assume true; {89089#false} is VALID [2022-02-20 22:06:46,078 INFO L284 TraceCheckUtils]: 120: Hoare quadruple {89089#false} {89089#false} #1184#return; {89089#false} is VALID [2022-02-20 22:06:46,078 INFO L290 TraceCheckUtils]: 121: Hoare triple {89089#false} ~tmp~28 := #t~ret390;havoc #t~ret390;#res := ~tmp~28 % 256; {89089#false} is VALID [2022-02-20 22:06:46,078 INFO L290 TraceCheckUtils]: 122: Hoare triple {89089#false} assume true; {89089#false} is VALID [2022-02-20 22:06:46,078 INFO L284 TraceCheckUtils]: 123: Hoare quadruple {89089#false} {89089#false} #1080#return; {89089#false} is VALID [2022-02-20 22:06:46,078 INFO L290 TraceCheckUtils]: 124: Hoare triple {89089#false} assume -9223372036854775808 <= #t~ret105 && #t~ret105 <= 9223372036854775807; {89089#false} is VALID [2022-02-20 22:06:46,079 INFO L272 TraceCheckUtils]: 125: Hoare triple {89089#false} call assume_abort_if_not((if 0 == #t~ret105 then 1 else 0)); {89089#false} is VALID [2022-02-20 22:06:46,079 INFO L290 TraceCheckUtils]: 126: Hoare triple {89089#false} ~cond := #in~cond; {89089#false} is VALID [2022-02-20 22:06:46,079 INFO L290 TraceCheckUtils]: 127: Hoare triple {89089#false} assume !(0 == ~cond); {89089#false} is VALID [2022-02-20 22:06:46,079 INFO L290 TraceCheckUtils]: 128: Hoare triple {89089#false} assume true; {89089#false} is VALID [2022-02-20 22:06:46,079 INFO L284 TraceCheckUtils]: 129: Hoare quadruple {89089#false} {89089#false} #1082#return; {89089#false} is VALID [2022-02-20 22:06:46,079 INFO L290 TraceCheckUtils]: 130: Hoare triple {89089#false} havoc #t~ret105;#res.base, #res.offset := ~p~0.base, ~p~0.offset; {89089#false} is VALID [2022-02-20 22:06:46,079 INFO L290 TraceCheckUtils]: 131: Hoare triple {89089#false} assume true; {89089#false} is VALID [2022-02-20 22:06:46,079 INFO L284 TraceCheckUtils]: 132: Hoare quadruple {89089#false} {89089#false} #1164#return; {89089#false} is VALID [2022-02-20 22:06:46,080 INFO L290 TraceCheckUtils]: 133: Hoare triple {89089#false} ldv_blk_make_request_~res~1#1.base, ldv_blk_make_request_~res~1#1.offset := ldv_blk_make_request_#t~ret395#1.base, ldv_blk_make_request_#t~ret395#1.offset;havoc ldv_blk_make_request_#t~ret395#1.base, ldv_blk_make_request_#t~ret395#1.offset; {89089#false} is VALID [2022-02-20 22:06:46,080 INFO L290 TraceCheckUtils]: 134: Hoare triple {89089#false} assume !(0 == (ldv_blk_make_request_~res~1#1.base + ldv_blk_make_request_~res~1#1.offset) % 18446744073709551616); {89089#false} is VALID [2022-02-20 22:06:46,080 INFO L290 TraceCheckUtils]: 135: Hoare triple {89089#false} assume { :begin_inline_IS_ERR___0 } true;IS_ERR___0_#in~ptr#1.base, IS_ERR___0_#in~ptr#1.offset := ldv_blk_make_request_~res~1#1.base, ldv_blk_make_request_~res~1#1.offset;havoc IS_ERR___0_#res#1;havoc IS_ERR___0_#t~ret393#1, IS_ERR___0_~ptr#1.base, IS_ERR___0_~ptr#1.offset, IS_ERR___0_~tmp~31#1;IS_ERR___0_~ptr#1.base, IS_ERR___0_~ptr#1.offset := IS_ERR___0_#in~ptr#1.base, IS_ERR___0_#in~ptr#1.offset;havoc IS_ERR___0_~tmp~31#1; {89089#false} is VALID [2022-02-20 22:06:46,080 INFO L272 TraceCheckUtils]: 136: Hoare triple {89089#false} call IS_ERR___0_#t~ret393#1 := ldv__builtin_expect((if (IS_ERR___0_~ptr#1.base + IS_ERR___0_~ptr#1.offset) % 18446744073709551616 > 18446744073709547520 then 1 else 0), 0); {89089#false} is VALID [2022-02-20 22:06:46,080 INFO L290 TraceCheckUtils]: 137: Hoare triple {89089#false} ~exp := #in~exp;~c := #in~c;#res := ~exp; {89089#false} is VALID [2022-02-20 22:06:46,080 INFO L290 TraceCheckUtils]: 138: Hoare triple {89089#false} assume true; {89089#false} is VALID [2022-02-20 22:06:46,080 INFO L284 TraceCheckUtils]: 139: Hoare quadruple {89089#false} {89089#false} #1168#return; {89089#false} is VALID [2022-02-20 22:06:46,080 INFO L290 TraceCheckUtils]: 140: Hoare triple {89089#false} assume -9223372036854775808 <= IS_ERR___0_#t~ret393#1 && IS_ERR___0_#t~ret393#1 <= 9223372036854775807;IS_ERR___0_~tmp~31#1 := IS_ERR___0_#t~ret393#1;havoc IS_ERR___0_#t~ret393#1;IS_ERR___0_#res#1 := IS_ERR___0_~tmp~31#1; {89089#false} is VALID [2022-02-20 22:06:46,080 INFO L290 TraceCheckUtils]: 141: Hoare triple {89089#false} ldv_blk_make_request_#t~ret396#1 := IS_ERR___0_#res#1;assume { :end_inline_IS_ERR___0 } true;assume -9223372036854775808 <= ldv_blk_make_request_#t~ret396#1 && ldv_blk_make_request_#t~ret396#1 <= 9223372036854775807;ldv_blk_make_request_~tmp___0~14#1 := ldv_blk_make_request_#t~ret396#1;havoc ldv_blk_make_request_#t~ret396#1; {89089#false} is VALID [2022-02-20 22:06:46,081 INFO L290 TraceCheckUtils]: 142: Hoare triple {89089#false} assume 0 == ldv_blk_make_request_~tmp___0~14#1;~ldv_blk_rq~0 := 1; {89089#false} is VALID [2022-02-20 22:06:46,081 INFO L290 TraceCheckUtils]: 143: Hoare triple {89089#false} ldv_blk_make_request_#res#1.base, ldv_blk_make_request_#res#1.offset := ldv_blk_make_request_~res~1#1.base, ldv_blk_make_request_~res~1#1.offset; {89089#false} is VALID [2022-02-20 22:06:46,081 INFO L290 TraceCheckUtils]: 144: Hoare triple {89089#false} ldv_blk_make_request_5_#t~ret391#1.base, ldv_blk_make_request_5_#t~ret391#1.offset := ldv_blk_make_request_#res#1.base, ldv_blk_make_request_#res#1.offset;assume { :end_inline_ldv_blk_make_request } true;ldv_blk_make_request_5_~tmp~29#1.base, ldv_blk_make_request_5_~tmp~29#1.offset := ldv_blk_make_request_5_#t~ret391#1.base, ldv_blk_make_request_5_#t~ret391#1.offset;havoc ldv_blk_make_request_5_#t~ret391#1.base, ldv_blk_make_request_5_#t~ret391#1.offset;ldv_blk_make_request_5_#res#1.base, ldv_blk_make_request_5_#res#1.offset := ldv_blk_make_request_5_~tmp~29#1.base, ldv_blk_make_request_5_~tmp~29#1.offset; {89089#false} is VALID [2022-02-20 22:06:46,081 INFO L290 TraceCheckUtils]: 145: Hoare triple {89089#false} virtblk_get_id_#t~ret241#1.base, virtblk_get_id_#t~ret241#1.offset := ldv_blk_make_request_5_#res#1.base, ldv_blk_make_request_5_#res#1.offset;assume { :end_inline_ldv_blk_make_request_5 } true;virtblk_get_id_~req~1#1.base, virtblk_get_id_~req~1#1.offset := virtblk_get_id_#t~ret241#1.base, virtblk_get_id_#t~ret241#1.offset;havoc virtblk_get_id_#t~mem239#1.base, virtblk_get_id_#t~mem239#1.offset;havoc virtblk_get_id_#t~mem240#1.base, virtblk_get_id_#t~mem240#1.offset;havoc virtblk_get_id_#t~ret241#1.base, virtblk_get_id_#t~ret241#1.offset; {89089#false} is VALID [2022-02-20 22:06:46,081 INFO L272 TraceCheckUtils]: 146: Hoare triple {89089#false} call virtblk_get_id_#t~ret242#1 := IS_ERR(virtblk_get_id_~req~1#1.base, virtblk_get_id_~req~1#1.offset); {89089#false} is VALID [2022-02-20 22:06:46,081 INFO L290 TraceCheckUtils]: 147: Hoare triple {89089#false} ~ptr.base, ~ptr.offset := #in~ptr.base, #in~ptr.offset;havoc ~tmp~28; {89089#false} is VALID [2022-02-20 22:06:46,081 INFO L272 TraceCheckUtils]: 148: Hoare triple {89089#false} call #t~ret390 := ldv_is_err(~ptr.base, ~ptr.offset); {89089#false} is VALID [2022-02-20 22:06:46,081 INFO L290 TraceCheckUtils]: 149: Hoare triple {89089#false} ~ptr.base, ~ptr.offset := #in~ptr.base, #in~ptr.offset;#res := (if 0 == (if (~ptr.base + ~ptr.offset) % 18446744073709551616 > 2012 then 1 else 0) then 0 else 1); {89089#false} is VALID [2022-02-20 22:06:46,082 INFO L290 TraceCheckUtils]: 150: Hoare triple {89089#false} assume true; {89089#false} is VALID [2022-02-20 22:06:46,082 INFO L284 TraceCheckUtils]: 151: Hoare quadruple {89089#false} {89089#false} #1184#return; {89089#false} is VALID [2022-02-20 22:06:46,082 INFO L290 TraceCheckUtils]: 152: Hoare triple {89089#false} ~tmp~28 := #t~ret390;havoc #t~ret390;#res := ~tmp~28 % 256; {89089#false} is VALID [2022-02-20 22:06:46,082 INFO L290 TraceCheckUtils]: 153: Hoare triple {89089#false} assume true; {89089#false} is VALID [2022-02-20 22:06:46,082 INFO L284 TraceCheckUtils]: 154: Hoare quadruple {89089#false} {89089#false} #1170#return; {89089#false} is VALID [2022-02-20 22:06:46,082 INFO L290 TraceCheckUtils]: 155: Hoare triple {89089#false} assume -9223372036854775808 <= virtblk_get_id_#t~ret242#1 && virtblk_get_id_#t~ret242#1 <= 9223372036854775807;virtblk_get_id_~tmp___2~1#1 := virtblk_get_id_#t~ret242#1;havoc virtblk_get_id_#t~ret242#1; {89089#false} is VALID [2022-02-20 22:06:46,082 INFO L290 TraceCheckUtils]: 156: Hoare triple {89089#false} assume !(0 != virtblk_get_id_~tmp___2~1#1);call write~int(7, virtblk_get_id_~req~1#1.base, 64 + virtblk_get_id_~req~1#1.offset, 4);call virtblk_get_id_#t~mem244#1.base, virtblk_get_id_#t~mem244#1.offset := read~$Pointer$(virtblk_get_id_~vblk~2#1.base, 72 + virtblk_get_id_~vblk~2#1.offset, 8);call virtblk_get_id_#t~mem245#1.base, virtblk_get_id_#t~mem245#1.offset := read~$Pointer$(virtblk_get_id_#t~mem244#1.base, 1067 + virtblk_get_id_#t~mem244#1.offset, 8);call virtblk_get_id_#t~mem246#1.base, virtblk_get_id_#t~mem246#1.offset := read~$Pointer$(virtblk_get_id_~vblk~2#1.base, 72 + virtblk_get_id_~vblk~2#1.offset, 8);assume { :begin_inline_blk_execute_rq } true;blk_execute_rq_#in~arg0#1.base, blk_execute_rq_#in~arg0#1.offset, blk_execute_rq_#in~arg1#1.base, blk_execute_rq_#in~arg1#1.offset, blk_execute_rq_#in~arg2#1.base, blk_execute_rq_#in~arg2#1.offset, blk_execute_rq_#in~arg3#1 := virtblk_get_id_#t~mem245#1.base, virtblk_get_id_#t~mem245#1.offset, virtblk_get_id_#t~mem246#1.base, virtblk_get_id_#t~mem246#1.offset, virtblk_get_id_~req~1#1.base, virtblk_get_id_~req~1#1.offset, 0;havoc blk_execute_rq_#res#1;havoc blk_execute_rq_#t~nondet402#1, blk_execute_rq_~arg0#1.base, blk_execute_rq_~arg0#1.offset, blk_execute_rq_~arg1#1.base, blk_execute_rq_~arg1#1.offset, blk_execute_rq_~arg2#1.base, blk_execute_rq_~arg2#1.offset, blk_execute_rq_~arg3#1;blk_execute_rq_~arg0#1.base, blk_execute_rq_~arg0#1.offset := blk_execute_rq_#in~arg0#1.base, blk_execute_rq_#in~arg0#1.offset;blk_execute_rq_~arg1#1.base, blk_execute_rq_~arg1#1.offset := blk_execute_rq_#in~arg1#1.base, blk_execute_rq_#in~arg1#1.offset;blk_execute_rq_~arg2#1.base, blk_execute_rq_~arg2#1.offset := blk_execute_rq_#in~arg2#1.base, blk_execute_rq_#in~arg2#1.offset;blk_execute_rq_~arg3#1 := blk_execute_rq_#in~arg3#1;assume -2147483648 <= blk_execute_rq_#t~nondet402#1 && blk_execute_rq_#t~nondet402#1 <= 2147483647;blk_execute_rq_#res#1 := blk_execute_rq_#t~nondet402#1;havoc blk_execute_rq_#t~nondet402#1; {89089#false} is VALID [2022-02-20 22:06:46,082 INFO L290 TraceCheckUtils]: 157: Hoare triple {89089#false} virtblk_get_id_#t~ret247#1 := blk_execute_rq_#res#1;assume { :end_inline_blk_execute_rq } true;assume -2147483648 <= virtblk_get_id_#t~ret247#1 && virtblk_get_id_#t~ret247#1 <= 2147483647;virtblk_get_id_~tmp___3~1#1 := virtblk_get_id_#t~ret247#1;havoc virtblk_get_id_#t~mem244#1.base, virtblk_get_id_#t~mem244#1.offset;havoc virtblk_get_id_#t~mem245#1.base, virtblk_get_id_#t~mem245#1.offset;havoc virtblk_get_id_#t~mem246#1.base, virtblk_get_id_#t~mem246#1.offset;havoc virtblk_get_id_#t~ret247#1;virtblk_get_id_#res#1 := virtblk_get_id_~tmp___3~1#1; {89089#false} is VALID [2022-02-20 22:06:46,083 INFO L290 TraceCheckUtils]: 158: Hoare triple {89089#false} virtblk_ioctl_#t~ret250#1 := virtblk_get_id_#res#1;assume { :end_inline_virtblk_get_id } true;assume -2147483648 <= virtblk_ioctl_#t~ret250#1 && virtblk_ioctl_#t~ret250#1 <= 2147483647;virtblk_ioctl_~err~1#1 := virtblk_ioctl_#t~ret250#1;havoc virtblk_ioctl_#t~ret250#1; {89089#false} is VALID [2022-02-20 22:06:46,083 INFO L290 TraceCheckUtils]: 159: Hoare triple {89089#false} assume !(0 == virtblk_ioctl_~err~1#1); {89089#false} is VALID [2022-02-20 22:06:46,083 INFO L290 TraceCheckUtils]: 160: Hoare triple {89089#false} virtblk_ioctl_#res#1 := virtblk_ioctl_~err~1#1;call ULTIMATE.dealloc(virtblk_ioctl_~#id_str~0#1.base, virtblk_ioctl_~#id_str~0#1.offset);havoc virtblk_ioctl_~#id_str~0#1.base, virtblk_ioctl_~#id_str~0#1.offset; {89089#false} is VALID [2022-02-20 22:06:46,083 INFO L290 TraceCheckUtils]: 161: Hoare triple {89089#false} main_#t~ret386#1 := virtblk_ioctl_#res#1;assume { :end_inline_virtblk_ioctl } true;assume -2147483648 <= main_#t~ret386#1 && main_#t~ret386#1 <= 2147483647;havoc main_#t~mem384#1;havoc main_#t~mem385#1;havoc main_#t~ret386#1;~ldv_state_variable_2~0 := 1; {89089#false} is VALID [2022-02-20 22:06:46,083 INFO L290 TraceCheckUtils]: 162: Hoare triple {89089#false} assume -2147483648 <= main_#t~nondet374#1 && main_#t~nondet374#1 <= 2147483647;main_~tmp___0~12#1 := main_#t~nondet374#1;havoc main_#t~nondet374#1;main_#t~switch375#1 := 0 == main_~tmp___0~12#1; {89089#false} is VALID [2022-02-20 22:06:46,083 INFO L290 TraceCheckUtils]: 163: Hoare triple {89089#false} assume !main_#t~switch375#1;main_#t~switch375#1 := main_#t~switch375#1 || 1 == main_~tmp___0~12#1; {89089#false} is VALID [2022-02-20 22:06:46,083 INFO L290 TraceCheckUtils]: 164: Hoare triple {89089#false} assume main_#t~switch375#1; {89089#false} is VALID [2022-02-20 22:06:46,083 INFO L290 TraceCheckUtils]: 165: Hoare triple {89089#false} assume 0 != ~ldv_state_variable_0~0;assume -2147483648 <= main_#t~nondet379#1 && main_#t~nondet379#1 <= 2147483647;main_~tmp___2~4#1 := main_#t~nondet379#1;havoc main_#t~nondet379#1;main_#t~switch380#1 := 0 == main_~tmp___2~4#1; {89089#false} is VALID [2022-02-20 22:06:46,084 INFO L290 TraceCheckUtils]: 166: Hoare triple {89089#false} assume main_#t~switch380#1; {89089#false} is VALID [2022-02-20 22:06:46,084 INFO L290 TraceCheckUtils]: 167: Hoare triple {89089#false} assume 3 == ~ldv_state_variable_0~0 && 0 == ~ref_cnt~0;assume { :begin_inline_fini } true;assume { :begin_inline_unregister_blkdev } true;unregister_blkdev_#in~arg0#1, unregister_blkdev_#in~arg1#1.base, unregister_blkdev_#in~arg1#1.offset := ~major~0, 10, 0;havoc unregister_blkdev_~arg0#1, unregister_blkdev_~arg1#1.base, unregister_blkdev_~arg1#1.offset;unregister_blkdev_~arg0#1 := unregister_blkdev_#in~arg0#1;unregister_blkdev_~arg1#1.base, unregister_blkdev_~arg1#1.offset := unregister_blkdev_#in~arg1#1.base, unregister_blkdev_#in~arg1#1.offset; {89089#false} is VALID [2022-02-20 22:06:46,084 INFO L290 TraceCheckUtils]: 168: Hoare triple {89089#false} assume { :end_inline_unregister_blkdev } true;assume { :begin_inline_unregister_virtio_driver } true;unregister_virtio_driver_#in~arg0#1.base, unregister_virtio_driver_#in~arg0#1.offset := ~#virtio_blk~0.base, ~#virtio_blk~0.offset;havoc unregister_virtio_driver_~arg0#1.base, unregister_virtio_driver_~arg0#1.offset;unregister_virtio_driver_~arg0#1.base, unregister_virtio_driver_~arg0#1.offset := unregister_virtio_driver_#in~arg0#1.base, unregister_virtio_driver_#in~arg0#1.offset; {89089#false} is VALID [2022-02-20 22:06:46,084 INFO L290 TraceCheckUtils]: 169: Hoare triple {89089#false} assume { :end_inline_unregister_virtio_driver } true; {89089#false} is VALID [2022-02-20 22:06:46,084 INFO L290 TraceCheckUtils]: 170: Hoare triple {89089#false} assume { :end_inline_fini } true;~ldv_state_variable_0~0 := 2; {89089#false} is VALID [2022-02-20 22:06:46,084 INFO L290 TraceCheckUtils]: 171: Hoare triple {89089#false} assume { :begin_inline_ldv_check_final_state } true; {89089#false} is VALID [2022-02-20 22:06:46,084 INFO L290 TraceCheckUtils]: 172: Hoare triple {89089#false} assume 0 != ~ldv_blk_rq~0; {89089#false} is VALID [2022-02-20 22:06:46,084 INFO L272 TraceCheckUtils]: 173: Hoare triple {89089#false} call ldv_error(); {89089#false} is VALID [2022-02-20 22:06:46,085 INFO L290 TraceCheckUtils]: 174: Hoare triple {89089#false} assume !false; {89089#false} is VALID [2022-02-20 22:06:46,085 INFO L134 CoverageAnalysis]: Checked inductivity of 114 backedges. 41 proven. 0 refuted. 0 times theorem prover too weak. 73 trivial. 0 not checked. [2022-02-20 22:06:46,085 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 22:06:46,085 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [75700772] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 22:06:46,085 INFO L191 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-02-20 22:06:46,086 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [8] total 10 [2022-02-20 22:06:46,086 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2124586528] [2022-02-20 22:06:46,086 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 22:06:46,086 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 24.25) internal successors, (97), 4 states have internal predecessors, (97), 2 states have call successors, (19), 2 states have call predecessors, (19), 3 states have return successors, (18), 2 states have call predecessors, (18), 2 states have call successors, (18) Word has length 175 [2022-02-20 22:06:46,087 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 22:06:46,087 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 4 states, 4 states have (on average 24.25) internal successors, (97), 4 states have internal predecessors, (97), 2 states have call successors, (19), 2 states have call predecessors, (19), 3 states have return successors, (18), 2 states have call predecessors, (18), 2 states have call successors, (18) [2022-02-20 22:06:46,189 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 134 edges. 134 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 22:06:46,189 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-02-20 22:06:46,189 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 22:06:46,190 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-02-20 22:06:46,190 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=22, Invalid=68, Unknown=0, NotChecked=0, Total=90 [2022-02-20 22:06:46,190 INFO L87 Difference]: Start difference. First operand 3070 states and 4053 transitions. Second operand has 4 states, 4 states have (on average 24.25) internal successors, (97), 4 states have internal predecessors, (97), 2 states have call successors, (19), 2 states have call predecessors, (19), 3 states have return successors, (18), 2 states have call predecessors, (18), 2 states have call successors, (18) [2022-02-20 22:06:49,689 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 22:06:49,690 INFO L93 Difference]: Finished difference Result 6128 states and 8094 transitions. [2022-02-20 22:06:49,690 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-02-20 22:06:49,690 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 24.25) internal successors, (97), 4 states have internal predecessors, (97), 2 states have call successors, (19), 2 states have call predecessors, (19), 3 states have return successors, (18), 2 states have call predecessors, (18), 2 states have call successors, (18) Word has length 175 [2022-02-20 22:06:49,691 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 22:06:49,691 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 24.25) internal successors, (97), 4 states have internal predecessors, (97), 2 states have call successors, (19), 2 states have call predecessors, (19), 3 states have return successors, (18), 2 states have call predecessors, (18), 2 states have call successors, (18) [2022-02-20 22:06:49,702 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 1170 transitions. [2022-02-20 22:06:49,703 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 24.25) internal successors, (97), 4 states have internal predecessors, (97), 2 states have call successors, (19), 2 states have call predecessors, (19), 3 states have return successors, (18), 2 states have call predecessors, (18), 2 states have call successors, (18) [2022-02-20 22:06:49,714 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 1170 transitions. [2022-02-20 22:06:49,714 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 1170 transitions. [2022-02-20 22:06:50,549 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 1170 edges. 1170 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 22:06:50,993 INFO L225 Difference]: With dead ends: 6128 [2022-02-20 22:06:50,994 INFO L226 Difference]: Without dead ends: 3071 [2022-02-20 22:06:51,000 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 222 GetRequests, 213 SyntacticMatches, 0 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 14 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=28, Invalid=82, Unknown=0, NotChecked=0, Total=110 [2022-02-20 22:06:51,001 INFO L933 BasicCegarLoop]: 584 mSDtfsCounter, 3 mSDsluCounter, 1163 mSDsCounter, 0 mSdLazyCounter, 10 mSolverCounterSat, 1 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 3 SdHoareTripleChecker+Valid, 1747 SdHoareTripleChecker+Invalid, 11 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 1 IncrementalHoareTripleChecker+Valid, 10 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 22:06:51,001 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [3 Valid, 1747 Invalid, 11 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [1 Valid, 10 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 22:06:51,004 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 3071 states. [2022-02-20 22:06:51,089 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 3071 to 3071. [2022-02-20 22:06:51,090 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 22:06:51,094 INFO L82 GeneralOperation]: Start isEquivalent. First operand 3071 states. Second operand has 3071 states, 2358 states have (on average 1.2595419847328244) internal successors, (2970), 2393 states have internal predecessors, (2970), 535 states have call successors, (535), 176 states have call predecessors, (535), 177 states have return successors, (549), 533 states have call predecessors, (549), 533 states have call successors, (549) [2022-02-20 22:06:51,098 INFO L74 IsIncluded]: Start isIncluded. First operand 3071 states. Second operand has 3071 states, 2358 states have (on average 1.2595419847328244) internal successors, (2970), 2393 states have internal predecessors, (2970), 535 states have call successors, (535), 176 states have call predecessors, (535), 177 states have return successors, (549), 533 states have call predecessors, (549), 533 states have call successors, (549) [2022-02-20 22:06:51,102 INFO L87 Difference]: Start difference. First operand 3071 states. Second operand has 3071 states, 2358 states have (on average 1.2595419847328244) internal successors, (2970), 2393 states have internal predecessors, (2970), 535 states have call successors, (535), 176 states have call predecessors, (535), 177 states have return successors, (549), 533 states have call predecessors, (549), 533 states have call successors, (549)