qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Fabrice Bellard <fabrice@bellard.org>
To: qemu-devel@nongnu.org
Subject: Re: [Qemu-devel] [PATCH] linux-user sysinfo support & do_sigreturn fix	for i386-user
Date: Sat, 19 Jun 2004 19:01:30 +0200	[thread overview]
Message-ID: <40D4716A.3080402@bellard.org> (raw)
In-Reply-To: <BAY12-F124NLh7tps3W00017591@hotmail.com>

François Guimond wrote:

> First is the fix to signal handling.  When I paid attention to strace's 
> changes in sigprocmask, I realize that masks entering linux-user's 
> signal processing handler would be wrong leaving the handler.  Upon 
> further investigation I noticed that the mask was getting written in the 
> sig frame using __put_user but getting restored by simple assignment, so 
> in this case it would result in the wrong value as qemu-i386 was running 
> on a PowerPC with a different endianess than a x86.   Looking around in 
> the code I saw the 'generic' do_sigreturn used __get_user properly to 
> retrieve it, so I copied over that bit of code into the x86 
> do_sigreturn, and it fixed the deadlock problem I was experiencing 
> (which was caused by wrong sigprocmask).  Here's the related patch:

The code was buggy, but your patch is still not correct. I tried to make 
a correction. Try it !

> The next problem I was running into was the sysinfo not implemented 
> syscall.  The problem would just run in a loop waiting to get a decent 
> result from it, so I had to implement (so far tested by me and two 
> others, all running PowerMac G3s with qemu-i386 as the target).

OK. A small note: it is better now to use __get_user() and __put_user() 
to access to the target memory.

Fabrice.

      reply	other threads:[~2004-06-19 17:00 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2004-06-18 17:27 [Qemu-devel] [PATCH] linux-user sysinfo support & do_sigreturn fix for i386-user François Guimond
2004-06-19 17:01 ` Fabrice Bellard [this message]

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=40D4716A.3080402@bellard.org \
    --to=fabrice@bellard.org \
    --cc=qemu-devel@nongnu.org \
    /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 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).