9b0f085da1
transfer as a write to ensure the memory is writable before starting any transfer. The fault status information does not reflect this in the 'read' status bit (i.e. it shows up as a read access), so faults with a RMW access to non-writable memory was not getting the correct protection. The page would be read-only and the instruction would fault over and over. A specific example is when a process forks, and the child process attempts to execute a RMW access to a data page, which is read-only because it's CoP Copy-On-Write. When checking if the page needs to be writablek, also check the locked transfer and treat any locked transfer as a write. 68060 already handled this correctly, since it has separate read and write fault bits, and both are set on a RMW access and the trap code was checking the write status bit. Fixes PR#36848. |
||
---|---|---|
.. | ||
atari | ||
compile | ||
conf | ||
dev | ||
include | ||
isa | ||
pci | ||
stand | ||
vme | ||
Makefile |