From 812d03894b5e3f3675d8fa7c175079eb9954d673 Mon Sep 17 00:00:00 2001 From: Eladash Date: Sun, 16 Feb 2020 22:48:23 +0200 Subject: [PATCH] PPU exec/ovlm ldr: restrict allocations --- rpcs3/Emu/Cell/PPUModule.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/rpcs3/Emu/Cell/PPUModule.cpp b/rpcs3/Emu/Cell/PPUModule.cpp index 1140d764a9..98f53a41f5 100644 --- a/rpcs3/Emu/Cell/PPUModule.cpp +++ b/rpcs3/Emu/Cell/PPUModule.cpp @@ -1085,7 +1085,7 @@ void ppu_load_exec(const ppu_exec_object& elf) if (prog.bin.size() > size || prog.bin.size() != prog.p_filesz) fmt::throw_exception("Invalid binary size (0x%llx, memsz=0x%x)", prog.bin.size(), size); - if (!vm::falloc(addr, size)) + if (!vm::falloc(addr, size, vm::main)) fmt::throw_exception("vm::falloc() failed (addr=0x%x, memsz=0x%x)", addr, size); // Copy segment data, hash it @@ -1655,7 +1655,7 @@ std::shared_ptr ppu_load_overlay(const ppu_exec_object& elf, const if (prog.bin.size() > size || prog.bin.size() != prog.p_filesz) fmt::throw_exception("Invalid binary size (0x%llx, memsz=0x%x)", prog.bin.size(), size); - if (!vm::falloc(addr, size)) + if (!vm::get(vm::any, 0x30000000)->falloc(addr, size)) fmt::throw_exception("vm::falloc() failed (addr=0x%x, memsz=0x%x)", addr, size); // Copy segment data, hash it