qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [Qemu-devel] linux-user: drop support for "unknown" host CPUs (ie hppa and m68k) ?
@ 2016-06-13  9:26 Peter Maydell
  2016-06-13  9:40 ` Laurent Vivier
  2016-06-13 22:06 ` Richard Henderson
  0 siblings, 2 replies; 3+ messages in thread
From: Peter Maydell @ 2016-06-13  9:26 UTC (permalink / raw)
  To: QEMU Developers; +Cc: Riku Voipio, Laurent Vivier

Currently our configure script allows linux-user targets to be built
for "unknown" host CPU architectures (which must be using the TCI
interpreter). However, code like user-exec.c has host-architecture
#ifdef ladders which in practice mean you can't build linux-user for
an arbitrary host architecture. The only two host architectures which
have code in user-exec.c but aren't recognised by configure are
HPPA and m68k.

I'd like to move to an "every supported host architecture has a
linux-user/host/$(ARCH)/hostdep.h header" model (this fixes a problem
in the code currently in master where make doesn't notice it needs to
rebuild if a host arch moves from "using generic/" to "using $(ARCH)").
Host architectures which we sort-of-but-don't support are an annoying
corner case I'd like to be able to drop entirely, by either:
 (1) just dropping the support outright
 (2) promoting them to at least being recognised by configure as
   a known architecture, even if one without a tcg backend

Does this seem like a good idea?

I think HPPA should definitely be in category (1) -- we dropped
the TCG backend years back, and I don't think any of us has a
machine to test changes on,.

Which category should m68k host support go into? Does anybody
actually use m68k host + TCI interpreter linux-user ? My guess
is this isn't actually used, because the m68k-specific code in
user-exec.c doesn't set the "is_write" flag correctly, which means
that guests which do self-modifying code won't work (including
anything using a signal handler with an on-stack trampoline).
So my preference would be to drop the m68k-host code too.

thanks
-- PMM

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [Qemu-devel] linux-user: drop support for "unknown" host CPUs (ie hppa and m68k) ?
  2016-06-13  9:26 [Qemu-devel] linux-user: drop support for "unknown" host CPUs (ie hppa and m68k) ? Peter Maydell
@ 2016-06-13  9:40 ` Laurent Vivier
  2016-06-13 22:06 ` Richard Henderson
  1 sibling, 0 replies; 3+ messages in thread
From: Laurent Vivier @ 2016-06-13  9:40 UTC (permalink / raw)
  To: Peter Maydell, QEMU Developers; +Cc: Riku Voipio



Le 13/06/2016 à 11:26, Peter Maydell a écrit :
> Currently our configure script allows linux-user targets to be built
> for "unknown" host CPU architectures (which must be using the TCI
> interpreter). However, code like user-exec.c has host-architecture
> #ifdef ladders which in practice mean you can't build linux-user for
> an arbitrary host architecture. The only two host architectures which
> have code in user-exec.c but aren't recognised by configure are
> HPPA and m68k.
> 
> I'd like to move to an "every supported host architecture has a
> linux-user/host/$(ARCH)/hostdep.h header" model (this fixes a problem
> in the code currently in master where make doesn't notice it needs to
> rebuild if a host arch moves from "using generic/" to "using $(ARCH)").
> Host architectures which we sort-of-but-don't support are an annoying
> corner case I'd like to be able to drop entirely, by either:
>  (1) just dropping the support outright
>  (2) promoting them to at least being recognised by configure as
>    a known architecture, even if one without a tcg backend
> 
> Does this seem like a good idea?
> 
> I think HPPA should definitely be in category (1) -- we dropped
> the TCG backend years back, and I don't think any of us has a
> machine to test changes on,.

I have an HPPA server sleeping in my garage, if someone needs it...

> Which category should m68k host support go into? Does anybody
> actually use m68k host + TCI interpreter linux-user ? My guess
> is this isn't actually used, because the m68k-specific code in
> user-exec.c doesn't set the "is_write" flag correctly, which means
> that guests which do self-modifying code won't work (including
> anything using a signal handler with an on-stack trampoline).
> So my preference would be to drop the m68k-host code too.

I've never tried to use an m68k computer as a QEMU host, and I think it
should be horribly slow (for 68040 at 40 Mhz, and I don't have coldfire).

IMHO, I see no problem to remove m68k-host (1) while it does not break
qemu-m68k and qemu-system-m68k.

Thanks,
Laurent

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [Qemu-devel] linux-user: drop support for "unknown" host CPUs (ie hppa and m68k) ?
  2016-06-13  9:26 [Qemu-devel] linux-user: drop support for "unknown" host CPUs (ie hppa and m68k) ? Peter Maydell
  2016-06-13  9:40 ` Laurent Vivier
@ 2016-06-13 22:06 ` Richard Henderson
  1 sibling, 0 replies; 3+ messages in thread
From: Richard Henderson @ 2016-06-13 22:06 UTC (permalink / raw)
  To: Peter Maydell, QEMU Developers; +Cc: Riku Voipio, Laurent Vivier

On 06/13/2016 02:26 AM, Peter Maydell wrote:
> Currently our configure script allows linux-user targets to be built
> for "unknown" host CPU architectures (which must be using the TCI
> interpreter). However, code like user-exec.c has host-architecture
> #ifdef ladders which in practice mean you can't build linux-user for
> an arbitrary host architecture. The only two host architectures which
> have code in user-exec.c but aren't recognised by configure are
> HPPA and m68k.
>
> I'd like to move to an "every supported host architecture has a
> linux-user/host/$(ARCH)/hostdep.h header" model (this fixes a problem
> in the code currently in master where make doesn't notice it needs to
> rebuild if a host arch moves from "using generic/" to "using $(ARCH)").
> Host architectures which we sort-of-but-don't support are an annoying
> corner case I'd like to be able to drop entirely, by either:
>  (1) just dropping the support outright

I'm ok with this.


r~

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2016-06-13 22:06 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-06-13  9:26 [Qemu-devel] linux-user: drop support for "unknown" host CPUs (ie hppa and m68k) ? Peter Maydell
2016-06-13  9:40 ` Laurent Vivier
2016-06-13 22:06 ` Richard Henderson

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).