15.0.0: Difference between revisions
No edit summary |
Move this to the sensible place. |
||
(3 intermediate revisions by 3 users not shown) | |||
Line 126: | Line 126: | ||
*** KMemoryState_Io now supports the CanAlignedDeviceMap and CanDeviceMap flags. | *** KMemoryState_Io now supports the CanAlignedDeviceMap and CanDeviceMap flags. | ||
*** KPageTableBase::GetContiguousMemoryRangeWithState no longer checks that the passed memory address is heap. | *** KPageTableBase::GetContiguousMemoryRangeWithState no longer checks that the passed memory address is heap. | ||
**** KPageTable::MemoryRange now tracks whether the range is reference counted, and Close() only closes the pages if they are. | |||
*** KPageTableBase::OpenMemoryRangeForMapDeviceAddressSpace no longer checks passes KMemoryState_FlagReferenceCounted. | *** KPageTableBase::OpenMemoryRangeForMapDeviceAddressSpace no longer checks passes KMemoryState_FlagReferenceCounted. | ||
*** KPageTableBase::LockForMapDeviceAddressSpace takes two new arguments, an output bool * to write whether the state was io, and a bool for whether to check KMemoryState_FlagReferenceCounted. | *** KPageTableBase::LockForMapDeviceAddressSpace takes two new arguments, an output bool * to write whether the state was io, and a bool for whether to check KMemoryState_FlagReferenceCounted. | ||
Line 176: | Line 177: | ||
===[[RO_services|ro]]=== | ===[[RO_services|ro]]=== | ||
The broken RNG for ASLR was [[Switch_System_Flaws|fixed]]. | The broken RNG for ASLR was [[Switch_System_Flaws|fixed]]. | ||
===nnSdk=== | |||
<code>nn::diag::detail::VAbortImpl</code> when handling the retaddr for storing elsewhere, now uses instruction [https://developer.arm.com/documentation/dui0801/g/A64-General-Instructions/XPACD--XPACI--XPACLRI xpaclri]. PAC instructions are NOPs on ARM hardware which doesn't support it, which includes current NX consoles. | |||
This is likely due to a LLVM [https://reviews.llvm.org/D84502 patch] where xpaclri is now always emitted and not related to actual Armv8.3 hardware. | |||
=== IPC Interface Changes === | === IPC Interface Changes === |