diff mbox

target/ppc: reset reservation in do_rfi()

Message ID 20170515083509.24607-1-nikunj@linux.vnet.ibm.com (mailing list archive)
State New, archived
Headers show

Commit Message

Nikunj A. Dadhania May 15, 2017, 8:35 a.m. UTC
For transitioning back to userspace after the interrupt.

Suggested-by: Richard Henderson <rth@twiddle.net>
Signed-off-by: Nikunj A Dadhania <nikunj@linux.vnet.ibm.com>
---
 target/ppc/excp_helper.c | 3 +++
 1 file changed, 3 insertions(+)

Comments

David Gibson May 16, 2017, 2:55 a.m. UTC | #1
On Mon, May 15, 2017 at 02:05:09PM +0530, Nikunj A Dadhania wrote:
> For transitioning back to userspace after the interrupt.
> 
> Suggested-by: Richard Henderson <rth@twiddle.net>
> Signed-off-by: Nikunj A Dadhania <nikunj@linux.vnet.ibm.com>

Applied to ppc-for-2.10. thanks.

> ---
>  target/ppc/excp_helper.c | 3 +++
>  1 file changed, 3 insertions(+)
> 
> diff --git a/target/ppc/excp_helper.c b/target/ppc/excp_helper.c
> index a6bcb47..9cb2123 100644
> --- a/target/ppc/excp_helper.c
> +++ b/target/ppc/excp_helper.c
> @@ -995,6 +995,9 @@ static inline void do_rfi(CPUPPCState *env, target_ulong nip, target_ulong msr)
>       */
>      cs->interrupt_request |= CPU_INTERRUPT_EXITTB;
>  
> +    /* Reset the reservation */
> +    env->reserve_addr = -1;
> +
>      /* Context synchronizing: check if TCG TLB needs flush */
>      check_tlb_flush(env, false);
>  }
diff mbox

Patch

diff --git a/target/ppc/excp_helper.c b/target/ppc/excp_helper.c
index a6bcb47..9cb2123 100644
--- a/target/ppc/excp_helper.c
+++ b/target/ppc/excp_helper.c
@@ -995,6 +995,9 @@  static inline void do_rfi(CPUPPCState *env, target_ulong nip, target_ulong msr)
      */
     cs->interrupt_request |= CPU_INTERRUPT_EXITTB;
 
+    /* Reset the reservation */
+    env->reserve_addr = -1;
+
     /* Context synchronizing: check if TCG TLB needs flush */
     check_tlb_flush(env, false);
 }