qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] [PATCH 15/16] tcg: Make tb_flush() thread safe


From: Richard Henderson
Subject: Re: [Qemu-devel] [PATCH 15/16] tcg: Make tb_flush() thread safe
Date: Fri, 23 Sep 2016 11:06:09 -0700
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.3.0

On 09/23/2016 12:31 AM, Paolo Bonzini wrote:
+    unsigned tb_flush_req = (unsigned) (uintptr_t) data;

Extra cast?

-    tcg_ctx.tb_ctx.tb_flush_count++;
+    atomic_inc(&tcg_ctx.tb_ctx.tb_flush_count);

Since this is the only place this value is incremented, and we're under a lock, it should be cheaper to use

  atomic_mb_set(&tcg_ctx.tb_ctx.tb_flush_count, tb_flush_req + 1);

+        uintptr_t tb_flush_req = (uintptr_t)
+            atomic_read(&tcg_ctx.tb_ctx.tb_flush_count);

Extra cast?

That said, it's correct as-is so,

Reviewed-by: Richard Henderson <address@hidden>


r~



reply via email to

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