|
From: | Richard Henderson |
Subject: | Re: [PATCH v2] target/riscv: Call probe_write() before atomic operations |
Date: | Fri, 1 Apr 2022 06:31:33 -0600 |
User-agent: | Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101 Thunderbird/91.7.0 |
On 3/31/22 19:49, Alistair Francis wrote:
+void helper_atomic_check(CPURISCVState *env, target_ulong address, + int mmu_idx) +{ +#ifndef CONFIG_USER_ONLY + void *phost; + int ret = probe_access_flags(env, address, MMU_DATA_STORE, mmu_idx, false, + &phost, GETPC()); + + if (ret & TLB_MMIO) { + env->amo_store_fault = true; + } +#endif +}
You've got to turn this off somewhere too.I've got a better solution for you, using TARGET_INSN_START_EXTRA_WORDS, which will handle I/O regions as well. I'll send it separately in a minute.
r~
[Prev in Thread] | Current Thread | [Next in Thread] |