Il ven 31 gen 2025, 17:46 Richard Henderson <richard.hender...@linaro.org>
ha scritto:

> On 1/29/25 04:47, Paolo Bonzini wrote:
> > The difference with TCG of course is that TCG is in active development,
> and therefore its
> > 32-bit host support is not surviving passively in the same way that a
> random device is.
> > Still, I think we can identify at least three different parts that
> should be treated
> > differently: 64-on-32, 32-on-32 system-mode emulation and 32-on-32
> user-mode emulation.
>
> Why the user/system split for 32-on-32?
>

Various reasons which overall point at 32-on-32 system emulation being not
used very much.

1) 32-bit has the address space size limitation, which makes it harder to
test even moderately sized (2G) guests.

2) I might be wrong but user mode emulation has no equivalent of the
forced-64bit hwaddr or ram_addr_t types; 32 bit is not very 32 bit anyway
in the case of system emulation

3) 32-bit virtualization support only exists on x86 and possibly MIPS

4) system emulation is used mostly on development systems, whereas user
mode emulation might be used on small systems to run short-lived
proprietary programs

5) for those 32-bit hosts that have a completely separate TCG backend
(well, that's Arm), getting rid TLB accesses does eliminate a bit of code.

None of them may be compelling, or maybe deprecating only one of the two
don't really make a difference in terms of maintainability, but this at
least makes the case for 32-on-32 system emulation a lot weaker.

More specifically, I don't believe anything other than 32-bit Arm hosts are
in user and for anything but user mode emulation, but those have a nonzero
chance of being in use.

> We could and should remove 64-on-32, maybe even without a deprecation
> period, but the rest
> > I'm not so sure.  I don't know enough to understand their maintenance
> cost (other than the
> > mere existence of the 32-bit TCG backends), but it's certainly not
> comparable to 64-on-32.
>
> Ok, lemme see how easy it is to prohibit configuring 64-on-32.
>

Probably very easy, and I would really want to do that without even a
deprecation period.

But I also think we should still deprecate 32-bit hosts, sooner rather than
> later.  Even
> if we have no immediate plans to remove them.  I think we want interested
> parties to speak
> up.  At some point this decade I want to be able to say: we've given you
> fair warning and
> time is up.
>

Fair enough. We have several deprecations that are in limbo and probably
won't go away soon, and it makes sense for 32-bit hosts to be another.

Also, I don't want this to look like stonewalling, so I will point out that
we can always decide to remove only *some* 32-bit hosts (or some 32-bit TCG
backends), once the deprecation countdown has ticked for some time.

Paolo

Reply via email to