From: "Alex Bennée" <alex.bennee@linaro.org>
To: Richard Henderson <rth@twiddle.net>
Cc: Nikunj A Dadhania <nikunj@linux.vnet.ibm.com>, qemu-devel@nongnu.org
Subject: Re: [Qemu-devel] Confusion regarding temporaries with branch conditional
Date: Wed, 30 Nov 2016 18:12:07 +0000 [thread overview]
Message-ID: <87zikgsuq0.fsf@linaro.org> (raw)
In-Reply-To: <5fa51076-c0fe-4fcc-4ae0-e9064ef0e22d@twiddle.net>
Richard Henderson <rth@twiddle.net> writes:
> On 11/30/2016 08:55 AM, Alex Bennée wrote:
>>
>> Nikunj A Dadhania <nikunj@linux.vnet.ibm.com> writes:
>>
>>> Hi,
>>>
>>> I was writing one instruction and hit following issue:
>>>
>>> [snip]/qemu/tcg/tcg.c:2039: tcg fatal error
>>> qemu-ppc64le: [snip]/qemu/translate-all.c:175: tb_lock: Assertion `!have_tb_lock' failed.
>>> Segmentation fault (core dumped)
>>
>> This is confusing because something is trying to take the tb_lock while
>> you are in code generation. tb_lock is held for code generation to
>> ensure serialisation of generation.
>
> Yes, I've seen this myself. I never got around to reporting the "problem"
> properly. It's a confusing side effect of a SIGSEGV arriving during tcg code
> generation. The signal handler longjmps back with unexpected locks
> held.
So this is a SEGV which belongs to the translation code rather than the
guest?
There are places in the cpu loop where we exit that should reset the
locks on a restart - see tb_lock_reset() so I'm not quite sure what has
happened here.
>
> Probably we should simply crash earlier and less confusingly.
>
>
> r~
--
Alex Bennée
next prev parent reply other threads:[~2016-11-30 18:13 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-11-30 7:00 [Qemu-devel] Confusion regarding temporaries with branch conditional Nikunj A Dadhania
2016-11-30 7:24 ` Peter Maydell
2016-11-30 7:56 ` Nikunj A Dadhania
2016-11-30 17:08 ` Richard Henderson
2016-12-01 4:44 ` Nikunj A Dadhania
2016-11-30 16:55 ` Alex Bennée
2016-11-30 17:03 ` Richard Henderson
2016-11-30 18:12 ` Alex Bennée [this message]
2016-11-30 20:09 ` Richard Henderson
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=87zikgsuq0.fsf@linaro.org \
--to=alex.bennee@linaro.org \
--cc=nikunj@linux.vnet.ibm.com \
--cc=qemu-devel@nongnu.org \
--cc=rth@twiddle.net \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.