rpcsx/rpcs3/Emu/Memory
Eladash 2d9929059f
vm: Fix an overflow at vm::alloc, fix vm::find_map (#10760)
* The statement addr += align could have overflowed resulting in either infinite loop or allocating memory outside of the region (illegal).
Add a check checking if it's the last iteration of the loop, then break without adding.

* vm::find_map condition didn't consider the size of the map to be allocated, allowing illegal occupation of [<=0xB000'0000]-0xCFFF'FFFF. (0xC000'0000-0xCFFF'FFFF is reserved for RSX)
2021-08-26 18:14:08 +03:00
..
vm.cpp vm: Fix an overflow at vm::alloc, fix vm::find_map (#10760) 2021-08-26 18:14:08 +03:00
vm.h types.hpp: implement min_v<>, max_v<>, SignedInt, UnsignedInt, FPInt concepts 2021-05-23 19:43:51 +03:00
vm_locking.h Remove vm::cleanup_unlock 2021-02-22 12:47:45 +03:00
vm_ptr.h vm_ptr.h: Improve try_read() (#10627) 2021-07-29 21:14:29 +03:00
vm_ref.h vm::ref: remove erroneous default constructor 2021-05-31 15:31:20 +03:00
vm_reservation.h Add -Werror=missing-noreturn (GCC, clang) 2021-04-08 10:29:47 +03:00
vm_var.h Improve ppu_thread::stack_push 2021-06-28 14:09:24 +03:00