On Thu, Oct 27, 2022 at 05:49 AM, Tony Harminc wrote:
On Wed, 26 Oct 2022 at 08:06, Joe Monk <joemonk64@...> wrote:
Dave,
Compare_and_swap is a non-privileged instruction. But he's getting a
protection exception. Now how is that possible?
If we look at his PSW ... 078D2000000383EC
Remember, we are under VM so thats probably not what MVS thinks is the PSW
DAT is controlled by bit 5 in a EC mode PSW. He's got a 7 in the second
nibble, so the DAT bit is on. Thus, DAT is on. So, with DAT on, how is he
getting a protection exception?
As Fish said early in this thread, "the program is running in Problem State
with PSW Key 8 (the "8D" in your PSW), but the storage the 'CS' (Compare
and Swap) instruction is trying to access is Key 0 (the '0' in "K:06")".
That's how he's getting a protection exception.
Again that is what VM has loaded into the PSW. MVS may believe that DAT is off and he is in supervisor state.
Compare and swap is two registers and a memory location. Nothing requiring
a supervisor key...
What is a "supervisor key"? I know of no such thing in the S/370
architecture.
Sorry to ask a novice question, but does supervisor state by-pass storage protection?
Tony H.
Dave