* [Qemu-devel] Regression in QEMU user-mode (Was: "tcg: Reload local variables after return from longjmp")
[not found] <CAAu8pHtrWpkSX2bDHLkJTZAXqXg3Rh%3DHzx1M1EmovPdst4NSCw@mail.gmail.com>
@ 2011-08-26 14:15 ` cedric.vincent
2011-08-26 14:19 ` Peter Maydell
0 siblings, 1 reply; 8+ messages in thread
From: cedric.vincent @ 2011-08-26 14:15 UTC (permalink / raw)
To: Jan Kiszka, Blue Swirl; +Cc: Riku Voipio, qemu-devel
Hi Jan Kiszka & Blue Swirl,
Hi would like to report a strange behaviour exposed by commit 0d101938
"tcg: Reload local variables after return from longjmp" (found with
`git bisect` and then reverted to be sure).
When emulating in *user-mode* the program `msgmerge`, I get the
following error(s):
$ /usr/bin/msgmerge --update -q /dev/null /dev/null
qemu-arm: pthread_mutex_lock.c:62: __pthread_mutex_lock: Assertion `mutex->__data.__owner == 0' failed.
or, from time to time:
$ /usr/bin/msgmerge --update -q /dev/null /dev/null
user-exec.c:99: handle_cpu_signal: Assertion `({ unsigned long __guest = (unsigned long)(address) - guest_base; __guest < (1ul << 32); })' failed.
For information:
- version = 0.15.0 (vanilla)
- guest = ARMedSlack 13.37 (arm)
- host 1 = Slackware64 13.37 (x86_64, gcc 4.5.3)
- host 2 = Ubuntu 10.04.1 (x86_64, 4.4.3)
Please, could you help me to understand this issue?
Thanks in advance,
Cédric,
PS:
If you wish to reproduce the problem, first download a minimal
ARMedSlack-13.37 rootfs:
ftp://ftp.armedslack.org/armedslack/armedslack-devtools/minirootfs/roots/slack-13.37-miniroot_01May11.tar.xz
and then install these three missing packages:
ftp://ftp.armedslack.org/armedslack/armedslack-13.37/slackware/d/gettext-tools-0.18.1.1-arm-1.tgz
ftp://ftp.armedslack.org/armedslack/armedslack-13.37/slackware/l/libxml2-2.7.8-arm-2.tgz
ftp://ftp.armedslack.org/armedslack/armedslack-13.37/slackware/d/gcc-4.5.2-arm-3.tgz
$ installpkg gettext-0.18.1.1-arm-1.tgz
$ installpkg libxml2-2.7.8-arm-2.tgz
$ installpkg gcc-4.5.2-arm-3.tgz
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [Qemu-devel] Regression in QEMU user-mode (Was: "tcg: Reload local variables after return from longjmp")
2011-08-26 14:15 ` [Qemu-devel] Regression in QEMU user-mode (Was: "tcg: Reload local variables after return from longjmp") cedric.vincent
@ 2011-08-26 14:19 ` Peter Maydell
2011-08-26 14:28 ` cedric.vincent
0 siblings, 1 reply; 8+ messages in thread
From: Peter Maydell @ 2011-08-26 14:19 UTC (permalink / raw)
To: cedric.vincent, Jan Kiszka, Blue Swirl, qemu-devel, Riku Voipio
On 26 August 2011 15:15, <cedric.vincent@st.com> wrote:
> Hi Jan Kiszka & Blue Swirl,
>
> Hi would like to report a strange behaviour exposed by commit 0d101938
> "tcg: Reload local variables after return from longjmp" (found with
> `git bisect` and then reverted to be sure).
>
> When emulating in *user-mode* the program `msgmerge`, I get the
> following error(s):
>
> $ /usr/bin/msgmerge --update -q /dev/null /dev/null
> qemu-arm: pthread_mutex_lock.c:62: __pthread_mutex_lock: Assertion `mutex->__data.__owner == 0' failed.
Yes; we've discussed this before in this thread:
http://lists.nongnu.org/archive/html/qemu-devel/2011-08/msg01623.html
That commit breaks multi-threaded usermode programs (well, even
more than they usually are). I think we decided that the right
fix was to make cpu_single_env thread-local (but that needs a
slight change for windows, see one of the messages in the thread).
-- PMM
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [Qemu-devel] Regression in QEMU user-mode (Was: "tcg: Reload local variables after return from longjmp")
2011-08-26 14:19 ` Peter Maydell
@ 2011-08-26 14:28 ` cedric.vincent
2011-08-26 17:37 ` Blue Swirl
0 siblings, 1 reply; 8+ messages in thread
From: cedric.vincent @ 2011-08-26 14:28 UTC (permalink / raw)
To: Peter Maydell; +Cc: Blue Swirl, Jan Kiszka, Riku Voipio, qemu-devel@nongnu.org
On Fri, Aug 26, 2011 at 04:19:26PM +0200, Peter Maydell wrote:
> Yes; we've discussed this before in this thread:
> http://lists.nongnu.org/archive/html/qemu-devel/2011-08/msg01623.html
>
> That commit breaks multi-threaded usermode programs (well, even
> more than they usually are). I think we decided that the right
> fix was to make cpu_single_env thread-local (but that needs a
> slight change for windows, see one of the messages in the thread).
Oops, I didn't read this thread correctly...
Thanks!
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [Qemu-devel] Regression in QEMU user-mode (Was: "tcg: Reload local variables after return from longjmp")
2011-08-26 14:28 ` cedric.vincent
@ 2011-08-26 17:37 ` Blue Swirl
2011-08-29 7:24 ` cedric.vincent
0 siblings, 1 reply; 8+ messages in thread
From: Blue Swirl @ 2011-08-26 17:37 UTC (permalink / raw)
To: cedric.vincent, Peter Maydell, Jan Kiszka, qemu-devel@nongnu.org,
Riku Voipio, Paolo Bonzini
On Fri, Aug 26, 2011 at 2:28 PM, <cedric.vincent@st.com> wrote:
> On Fri, Aug 26, 2011 at 04:19:26PM +0200, Peter Maydell wrote:
>> Yes; we've discussed this before in this thread:
>> http://lists.nongnu.org/archive/html/qemu-devel/2011-08/msg01623.html
>>
>> That commit breaks multi-threaded usermode programs (well, even
>> more than they usually are). I think we decided that the right
>> fix was to make cpu_single_env thread-local (but that needs a
>> slight change for windows, see one of the messages in the thread).
>
> Oops, I didn't read this thread correctly...
Since you seem to have a nice test case close at hand, could you
please test the fix proposed by Paolo?
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [Qemu-devel] Regression in QEMU user-mode (Was: "tcg: Reload local variables after return from longjmp")
2011-08-26 17:37 ` Blue Swirl
@ 2011-08-29 7:24 ` cedric.vincent
2011-08-29 7:46 ` Paolo Bonzini
0 siblings, 1 reply; 8+ messages in thread
From: cedric.vincent @ 2011-08-29 7:24 UTC (permalink / raw)
To: Blue Swirl
Cc: Peter Maydell, Riku Voipio, qemu-devel@nongnu.org, Paolo Bonzini,
Jan Kiszka
On Fri, Aug 26, 2011 at 07:37:51PM +0200, Blue Swirl wrote:
> On Fri, Aug 26, 2011 at 2:28 PM, <cedric.vincent@st.com> wrote:
> > On Fri, Aug 26, 2011 at 04:19:26PM +0200, Peter Maydell wrote:
> >> Yes; we've discussed this before in this thread:
> >> http://lists.nongnu.org/archive/html/qemu-devel/2011-08/msg01623.html
> >>
> >> That commit breaks multi-threaded usermode programs (well, even
> >> more than they usually are). I think we decided that the right
> >> fix was to make cpu_single_env thread-local (but that needs a
> >> slight change for windows, see one of the messages in the thread).
> >
> > Oops, I didn't read this thread correctly...
>
> Since you seem to have a nice test case close at hand, could you
> please test the fix proposed by Paolo?
I suppose you are talking about this one:
http://lists.nongnu.org/archive/html/qemu-devel/2011-08/msg01655.html
This patch can't fix the problem since it isn't related to the user
mode.
Regards,
Cédric.
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [Qemu-devel] Regression in QEMU user-mode (Was: "tcg: Reload local variables after return from longjmp")
2011-08-29 7:24 ` cedric.vincent
@ 2011-08-29 7:46 ` Paolo Bonzini
2011-08-29 7:48 ` cedric.vincent
0 siblings, 1 reply; 8+ messages in thread
From: Paolo Bonzini @ 2011-08-29 7:46 UTC (permalink / raw)
To: cedric.vincent, Blue Swirl, Peter Maydell, Jan Kiszka,
qemu-devel@nongnu.org, Riku Voipio
On 08/29/2011 09:24 AM, cedric.vincent@st.com wrote:
>> >
>> > Since you seem to have a nice test case close at hand, could you
>> > please test the fix proposed by Paolo?
> I suppose you are talking about this one:
>
> http://lists.nongnu.org/archive/html/qemu-devel/2011-08/msg01655.html
>
> This patch can't fix the problem since it isn't related to the user
> mode.
The patch is only partial, it is the Windows-specific part.
Paolo
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [Qemu-devel] Regression in QEMU user-mode (Was: "tcg: Reload local variables after return from longjmp")
2011-08-29 7:46 ` Paolo Bonzini
@ 2011-08-29 7:48 ` cedric.vincent
2011-08-29 7:50 ` Paolo Bonzini
0 siblings, 1 reply; 8+ messages in thread
From: cedric.vincent @ 2011-08-29 7:48 UTC (permalink / raw)
To: Paolo Bonzini
Cc: Blue Swirl, Peter Maydell, Riku Voipio, qemu-devel@nongnu.org,
Jan Kiszka
Hi Paolo,
On Mon, Aug 29, 2011 at 09:46:37AM +0200, Paolo Bonzini wrote:
> On 08/29/2011 09:24 AM, cedric.vincent@st.com wrote:
> >> >
> >> > Since you seem to have a nice test case close at hand, could you
> >> > please test the fix proposed by Paolo?
> > I suppose you are talking about this one:
> >
> > http://lists.nongnu.org/archive/html/qemu-devel/2011-08/msg01655.html
> >
> > This patch can't fix the problem since it isn't related to the user
> > mode.
>
> The patch is only partial, it is the Windows-specific part.
Is there a full patch I can test [on Linux]?
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [Qemu-devel] Regression in QEMU user-mode (Was: "tcg: Reload local variables after return from longjmp")
2011-08-29 7:48 ` cedric.vincent
@ 2011-08-29 7:50 ` Paolo Bonzini
0 siblings, 0 replies; 8+ messages in thread
From: Paolo Bonzini @ 2011-08-29 7:50 UTC (permalink / raw)
To: cedric.vincent, Blue Swirl, Peter Maydell, Jan Kiszka,
qemu-devel@nongnu.org, Riku Voipio
On 08/29/2011 09:48 AM, cedric.vincent@st.com wrote:
> Hi Paolo,
>
> On Mon, Aug 29, 2011 at 09:46:37AM +0200, Paolo Bonzini wrote:
>> On 08/29/2011 09:24 AM, cedric.vincent@st.com wrote:
>>>>>
>>>>> Since you seem to have a nice test case close at hand, could you
>>>>> please test the fix proposed by Paolo?
>>> I suppose you are talking about this one:
>>>
>>> http://lists.nongnu.org/archive/html/qemu-devel/2011-08/msg01655.html
>>>
>>> This patch can't fix the problem since it isn't related to the user
>>> mode.
>>
>> The patch is only partial, it is the Windows-specific part.
>
> Is there a full patch I can test [on Linux]?
I'll try to put together something, but I never looked very much at user
mode.
Paolo
^ permalink raw reply [flat|nested] 8+ messages in thread
end of thread, other threads:[~2011-08-29 7:51 UTC | newest]
Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
[not found] <CAAu8pHtrWpkSX2bDHLkJTZAXqXg3Rh%3DHzx1M1EmovPdst4NSCw@mail.gmail.com>
2011-08-26 14:15 ` [Qemu-devel] Regression in QEMU user-mode (Was: "tcg: Reload local variables after return from longjmp") cedric.vincent
2011-08-26 14:19 ` Peter Maydell
2011-08-26 14:28 ` cedric.vincent
2011-08-26 17:37 ` Blue Swirl
2011-08-29 7:24 ` cedric.vincent
2011-08-29 7:46 ` Paolo Bonzini
2011-08-29 7:48 ` cedric.vincent
2011-08-29 7:50 ` Paolo Bonzini
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).