qemu-arm
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH 3/3] linux-user/arm: Implement __kernel_cmpxchg64 with host a


From: Laurent Vivier
Subject: Re: [PATCH 3/3] linux-user/arm: Implement __kernel_cmpxchg64 with host atomics
Date: Tue, 22 Mar 2022 12:52:58 +0100
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101 Thunderbird/91.5.0

Le 15/03/2022 à 19:31, Richard Henderson a écrit :
On 3/15/22 11:18, Peter Maydell wrote:
-segv:
-    end_exclusive();
-    /* We get the PC of the entry address - which is as good as anything,
-       on a real kernel what you get depends on which mode it uses. */

This comment about the PC the guest signal handler is going
to see when we take the SEGV is still valid, I think ?

Yes.  I guess I could move it to the block comment in front of atomic_mmu_lookup, because it would apply to both the SEGV and the BUS raised there.


Applied to my linux-user-for-7.0 branch with the following change:

diff --git a/linux-user/arm/cpu_loop.c b/linux-user/arm/cpu_loop.c
index d9651f199f97..0172a7aae7e8 100644
--- a/linux-user/arm/cpu_loop.c
+++ b/linux-user/arm/cpu_loop.c
@@ -78,6 +78,8 @@
 /*
  * Similar to code in accel/tcg/user-exec.c, but outside the execution loop.
  * Must be called with mmap_lock.
+ * We get the PC of the entry address - which is as good as anything,
+ * on a real kernel what you get depends on which mode it uses.
  */
 static void *atomic_mmu_lookup(CPUArchState *env, uint32_t addr, int size)
 {

Let me know if you prefer something else.

Thanks,
Laurent



reply via email to

[Prev in Thread] Current Thread [Next in Thread]