linux-um archives
 help / color / mirror / Atom feed
From: Bodo Stroesser <bstroesser@fujitsu-siemens.com>
To: Blaisorblade <blaisorblade@yahoo.it>
Cc: user-mode-linux-devel@lists.sourceforge.net,
	Jeff Dike <jdike@addtoit.com>,
	"Charles P. Wright" <cwright@cs.sunysb.edu>
Subject: Re: [uml-devel] SYSEMU getting merged - but I'm in doubt
Date: Wed, 14 Sep 2005 13:48:16 +0200	[thread overview]
Message-ID: <43280E00.6030707@fujitsu-siemens.com> (raw)
In-Reply-To: <432732E5.5010303@fujitsu-siemens.com>

Bodo Stroesser wrote:
> 
> If we talk about using a new ptrace code for the new API, old UML 
> binaries running
> on a host supporting the new API will recognize that there is no SYSEMU 
> they can
> use. So /proc/sysemu will not allow to switch on or off anything (IIRC, 
> the file
> will not even be created). That means, that an old binary will run safe 
> but slow
> in this case. One could argue, that this is a changed behaviour of the 
> old binary.
> 
> OTOH, if the new API would reuse the same ptrace code, check_sysemu of 
> the old
> binaries will fail on i386 (and I hope on x86_64, too). That means, 
> sysemu again
> will be disabled. AFAICS, it will not refuse to run at all. (Not tested, 
> taken from
> the code only)
> On s390 the check even might succeed accidentally, but that's no 
> problem, as s390
> isn't mainline yet, we can change check_sysemu() to avoid problems. 
> There will
> never be an old binary for s390.
> 
> Resume: it doesn't matter if a new ptrace code is used or the old one is 
> reused.
> Usage of sysemu will be restricted to "new UML on new host" or "old UML 
> on old host"
> as long as host doesn't support _both_ APIs (selectable by two separate 
> ptrace codes
> or by a new flag to PTRACE_SETOPTIONS). AFAICS, there is no reason to 
> change
> /proc/sysemu at all, right?

Some more points:

The new API must have PTRACE_SYSEMU _and_ PTRACE_SYSEMU_SINGLESTEP.
While with the old API SYSEMU_SINGLESTEP was inserted to improve security,
with the new one it will be necessary to allow singlestepping of processes
in UML-SKAS at all. Suppose a singlestepped userspace is stopped at a
syscall interception. Now UML needs to restart it with SYSEMU for syscall
emulation, but also wants to proceed with singlestepping. PTRACE_SYSEMU wouldn't
do the job, as it starts userspace in "normal" mode, no singlestepping.

Also, in tt new API's PTRACE_SYSEMU behaves as PTRACE_SYSCALL does, because tracer
uses PTRACE_CONT after syscall interception. So tt (do_syscall(), ...) needs to be
changed. PTRACE_SYSEMU_SINGLESTEP still should be used, as if it's name were
PTRACE_SYSCALL_SINGLESTEP.

	Bodo


-------------------------------------------------------
SF.Net email is sponsored by:
Tame your development challenges with Apache's Geronimo App Server. Download
it for free - -and be entered to win a 42" plasma tv or your very own
Sony(tm)PSP.  Click here to play: http://sourceforge.net/geronimo.php
_______________________________________________
User-mode-linux-devel mailing list
User-mode-linux-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/user-mode-linux-devel

  reply	other threads:[~2005-09-14 11:48 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2005-09-04 15:02 [uml-devel] SYSEMU getting merged - but I'm in doubt Blaisorblade
2005-09-06 16:10 ` Jeff Dike
2005-09-13 16:51   ` Bodo Stroesser
2005-09-13 18:23     ` Blaisorblade
2005-09-13 20:13       ` Bodo Stroesser
2005-09-14 11:48         ` Bodo Stroesser [this message]
2005-09-14 18:01           ` Blaisorblade
2005-09-14 18:19       ` Jeff Dike

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=43280E00.6030707@fujitsu-siemens.com \
    --to=bstroesser@fujitsu-siemens.com \
    --cc=blaisorblade@yahoo.it \
    --cc=cwright@cs.sunysb.edu \
    --cc=jdike@addtoit.com \
    --cc=user-mode-linux-devel@lists.sourceforge.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox