@@ -144,26 +144,6 @@ void Machine::ipre_remote_resume_now(bool save_all, std::function<void(Machine&)
144144 // 2. Connect to remote now
145145 const auto remote_fsbase = this ->remote_activate_now ();
146146
147- bool do_prepare = false ;
148- if (this ->memory .foreign_banks .size () < remote ().memory .banks .size ()) {
149- // New working memory pages have been created in the remote,
150- // so we need to make sure we see the latest changes.
151- const size_t start_idx = this ->memory .foreign_banks .size ();
152- for (size_t i = start_idx; i < remote ().memory .banks .size (); i++)
153- {
154- const auto & bank = remote ().memory .banks .at (i);
155- const VirtualMem vmem = bank.to_vmem ();
156- if constexpr (VERBOSE_REMOTE) {
157- fprintf (stderr, " IPRE remote: mapped bank %u at 0x%lX-0x%lX\n " ,
158- bank.idx , bank.addr , bank.addr + bank.size ());
159- }
160- const unsigned new_idx = memory.allocate_region_idx ();
161- this ->install_memory (new_idx, vmem, false );
162- memory.foreign_banks .push_back (new_idx);
163- }
164- do_prepare = true ;
165- }
166-
167147 // 3. Copy remote registers into current state
168148 tinykvm::Machine& remote_vm = remote ();
169149 copy_callee_saved_registers (save_all, this ->registers (), remote_vm.registers ());
@@ -179,8 +159,6 @@ void Machine::ipre_remote_resume_now(bool save_all, std::function<void(Machine&)
179159 // 4. Resume execution
180160 // Set RDI to our FSBASE for the remote VM
181161 this ->registers ().rdi = remote_fsbase;
182- if (do_prepare)
183- this ->prepare_vmresume (remote_fsbase, true );
184162 this ->run (0 .0f );
185163 } catch (const std::exception& e) {
186164 // If an exception occurred, disconnect and restore FSBASE
0 commit comments