Triang3l
968c337d22
[APU] Temp XMA context allocation region workaround
2019-08-16 09:47:28 +03:00
Triang3l
126978d960
[Memory] Fix memory watch addresses
2019-08-16 08:49:48 +03:00
Triang3l
834ced0d63
[Memory] 0xE0000000: Fix a typo, re-enable and cleanup
2019-08-15 23:55:33 +03:00
Triang3l
e862169156
[Memory] BaseHeap::TranslateRelative including host address offset
2019-08-15 00:31:21 +03:00
Triang3l
0451153760
[Memory] Temporarily disable allocation in 0xE0000000
2019-08-15 00:06:27 +03:00
Triang3l
003c02c640
[CPU, Memory] 0xE0000000 adjustment by @elad335 and mapping
2019-08-14 21:37:52 +03:00
Triang3l
0067f5561d
[Kernel] More TranslateVirtual/HostToGuestVirtual usage
2019-08-14 08:28:30 +03:00
Triang3l
2152c79965
[Memory] 0xE… adjustment in TranslateVirtual
2019-08-14 00:07:27 +03:00
Triang3l
741b5ae2ec
[Memory] Add HostToGuestVirtual and use it in a couple of places
2019-08-13 23:49:49 +03:00
Triang3l
cb0e18c7dc
[Memory] BaseHeap::host_address_offset
2019-08-04 23:55:54 +03:00
Triang3l
25675cb8b8
[Memory] E0000000 adjustment in watches only for Windows
2019-08-04 23:10:59 +03:00
Triang3l
d20c2fa9da
[Memory/Vulkan] Move old memory watches to the Vulkan backend
2019-08-03 21:06:59 +03:00
Triang3l
0370f8bbd9
[Memory] Pass exact_range to watch callbacks
2019-08-03 19:16:04 +03:00
Triang3l
352f12f92e
[D3D12] Switch from gflags to cvars
2019-08-03 16:53:23 +03:00
Jonathan Goyvaerts
c1af632562
Replace all gflag implementations with cvar implementations
2019-08-03 02:34:07 +02:00
Triang3l
9d0986030f
[Memory] Don't mark non-writable pages as watched
2019-07-31 08:40:26 +03:00
Triang3l
24383b9137
[Memory/D3D12] Unwatch up to 256 KB ranges
2019-07-31 00:18:12 +03:00
Triang3l
b5fb84473d
[Memory] Replace forgotten InvalidateRange in NtReadFile
2019-07-30 09:06:23 +03:00
Triang3l
4aceeb73c4
[Memory] Move new watches to heap-aware Memory from MMIOHandler
2019-07-30 08:00:20 +03:00
Triang3l
6e36101b42
[D3D12] Experimental write watch implementation for shared memory
2018-09-24 23:18:16 +03:00
Triang3l
db625892ea
[D3D12] Shared memory typo fix and improvements
2018-08-01 01:09:51 +03:00
Triang3l
4f7edff19d
[D3D12] SHM: Watches prototype, some uploading
2018-07-26 22:52:26 +03:00
DrChat
db53559611
Merge branch 'master'
2018-02-16 16:34:17 -06:00
DrChat
0cc2b0fc9f
[Core] Protect the last 64kb of memory
2018-02-14 21:58:05 -06:00
DrChat
d0460122f4
[Core] BaseHeap::QueryBaseAndSize
2018-02-10 21:58:44 -06:00
DrChat
e3787c05c1
[Core] QueryRegionInfo - report the original allocation size
2018-02-10 19:14:58 -06:00
DrChat
325599948a
[Core] Remove hardcoded type field from HeapAllocationInfo
2018-02-10 16:47:53 -06:00
DrChat
4db94473ec
[Core] Memory::GetPhysicalHeap
2018-02-10 16:45:06 -06:00
DrChat
063db77346
[Core] Don't pass in old protection pointer if the caller doesn't need it
2017-12-20 17:54:31 -06:00
DrChat
aaf281351d
Format all code with new clang-format
2017-12-14 20:44:43 -06:00
Dr. Chat
aee5601c68
xboxkrnl: Initial (untested) implementation of NtProtectVirtualMemory
2017-07-24 21:41:47 -05:00
Dr. Chat
e388b74dbe
BaseHeap::Release: Disallow freeing of 0x0
2017-05-17 04:44:48 -05:00
Dr. Chat
92859f5a28
Protect the first 64kb of virtual memory with no access permissions by default.
2016-08-03 18:46:15 -05:00
gibbed
16a15bab98
Exposed total page count.
2016-06-21 10:10:08 -05:00
gibbed
d07e16b056
I'm bad.
2016-06-21 10:09:45 -05:00
gibbed
32e0ef397c
Attempt at reporting something of an 'accurate' unreserved physical page
...
count. Still needs work.
2016-06-21 09:37:21 -05:00
gibbed
6a082c42d3
Fixed top-down memory allocations when alignment > page size.
2016-06-20 12:02:48 -05:00
Dr. Chat
0e3c113375
Physical write watches -> access watches (read and/or write watching)
2016-03-17 21:55:16 -05:00
Ben Vanik
431088d35e
Faster clearing of heaps to speed up tests.
2015-12-29 20:26:01 -08:00
Dr. Chat
9ed81b6876
Fix not assigning write access to WriteCombine pages on restore.
2015-12-29 13:09:40 -08:00
Dr. Chat
5ef21d3714
memory: Write no access pages to the savefile.
2015-12-29 13:09:36 -08:00
Ben Vanik
bbff23a8bb
REBASE: Fixing Memory::Reset().
2015-12-29 13:09:18 -08:00
Dr. Chat
432e32f7c2
memory Save/Restore
2015-12-29 13:09:18 -08:00
Ben Vanik
ca8d658ffe
Speeding up PPC tests significantly.
2015-12-27 12:03:30 -08:00
Ben Vanik
295c62c7a4
Guarding protect-on-release behavior behind --protect_on_release.
...
Workaround for #456 until it can be identified.
2015-12-05 23:27:25 -08:00
Ben Vanik
249b952de9
Adding some comments.
2015-12-02 17:37:48 -08:00
Dr. Chat
c98d10545e
Invalidate MMIO Ranges when memory is released or access protections are changed.
2015-11-08 19:14:06 -06:00
Dr. Chat
a2bc0443f2
Quick-kill the MMIO handler if the fault address is above the mapping range.
2015-09-07 21:26:33 -05:00
Ben Vanik
068b2056ca
Explode more gracefully on crashes while crashing.
2015-09-06 13:34:39 -07:00
Ben Vanik
3c96b6fa0a
DANGER DANGER. Switching to global critical region.
...
This changes almost all locks held by guest threads to use a single global
critical region. This emulates the behavior on the PPC of disabling
interrupts (by calls like KeRaiseIrqlToDpcLevel or masking interrupts),
and prevents deadlocks from occuring when threads are suspended or
otherwise blocked.
This has performance implications and a pass is needed to ensure the
locking is as granular as possible. It could also break everything
because it's fundamentally unsound. We'll see.
2015-09-06 09:30:54 -07:00