On Wed, Aug 26, 2015 at 02:17:42 +0200, Paolo Bonzini wrote:
> Signed-off-by: Paolo Bonzini <pbonz...@redhat.com>
> ---
>  cpu-exec.c | 6 +++++-
>  qom/cpu.c  | 2 ++
>  2 files changed, 7 insertions(+), 1 deletion(-)

I like this patch.

Are we making sure that other writes to tcg_exit_req are preceded by
a write barrier? For instance:

qom/cpu.c-116-    cpu->exit_request = 1;
qom/cpu.c:117:    cpu->tcg_exit_req = 1;

translate-all.c-1478-    } else {
translate-all.c:1479:        cpu->tcg_exit_req = 1;

translate-all.c-1643-    cpu->interrupt_request |= mask;
translate-all.c:1644:    cpu->tcg_exit_req = 1;

Current master certainly doesn't have them, but I wonder if
you have barriers at those places in the tree you're working on. If not
I'd expand this patch to add them.

And while at it, can we pleeease get rid of the hideous 'volatile sigatomic_t'
type for tcg_exit_req?

Thanks,

                Emilio

Reply via email to