* [PATCH 0/1] meson: Deprecate 32-bit host systems
@ 2025-01-28 0:42 Richard Henderson
2025-01-28 0:42 ` [PATCH 1/1] meson: Deprecate 32-bit host support Richard Henderson
2025-01-28 4:00 ` [PATCH 0/1] meson: Deprecate 32-bit host systems Thomas Huth
0 siblings, 2 replies; 19+ messages in thread
From: Richard Henderson @ 2025-01-28 0:42 UTC (permalink / raw)
To: qemu-devel
Cc: thuth, peter.maydell, stefanha, pbonzini, berrange, philmd,
mark.cave-ayland, alex.bennee
Time for our biennial attempt to kill ancient hosts.
I've been re-working the tcg code generator a bit over the holidays.
One place that screams for a bit of cleanup is with 64-bit guest
addresses on 32-bit hosts. Of course the best "cleanup" is to not
have to handle such silliness at all.
Two years after Thomas' last attempt,
https://lore.kernel.org/qemu-devel/20230130114428.1297295-1-thuth@redhat.com/
which resulted only in deprecation of i686 host for system emulation.
By itself, this just isn't enough for large-scale cleanups.
I'll note that we've separately deprecated mips32, set to expire
with the end of Debian bookworm, set to enter LTS in June 2026.
I'll note that there is *already* no Debian support for ppc32,
and that I am currently unable to cross-compile that host at all.
Showing my hand a bit, I am willing to limit deprecation to
64-bit guests on 32-bit hosts. But I'd prefer to go the whole hog:
unconditional support for TCG_TYPE_I64 would remove a *lot* of
32-bit fallback code.
r~
Richard Henderson (1):
meson: Deprecate 32-bit host support
docs/about/deprecated.rst | 8 ++++++++
meson.build | 6 ++----
2 files changed, 10 insertions(+), 4 deletions(-)
--
2.43.0
^ permalink raw reply [flat|nested] 19+ messages in thread
* [PATCH 1/1] meson: Deprecate 32-bit host support
2025-01-28 0:42 [PATCH 0/1] meson: Deprecate 32-bit host systems Richard Henderson
@ 2025-01-28 0:42 ` Richard Henderson
2025-01-28 4:00 ` [PATCH 0/1] meson: Deprecate 32-bit host systems Thomas Huth
1 sibling, 0 replies; 19+ messages in thread
From: Richard Henderson @ 2025-01-28 0:42 UTC (permalink / raw)
To: qemu-devel
Cc: thuth, peter.maydell, stefanha, pbonzini, berrange, philmd,
mark.cave-ayland, alex.bennee
We deprecated i686 system mode support for qemu 8.0.
However, to make real cleanups to TCG we need to remove
all 32-bit hosts.
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
---
docs/about/deprecated.rst | 8 ++++++++
meson.build | 6 ++----
2 files changed, 10 insertions(+), 4 deletions(-)
diff --git a/docs/about/deprecated.rst b/docs/about/deprecated.rst
index 4a3c302962..a200f4fd28 100644
--- a/docs/about/deprecated.rst
+++ b/docs/about/deprecated.rst
@@ -204,6 +204,14 @@ is going to be so much slower it wouldn't make sense for any serious
instrumentation. Due to implementation differences there will also be
anomalies in things like memory instrumentation.
+32-bit host operating systems (since 10.0)
+''''''''''''''''''''''''''''''''''''''''''
+
+Keeping the 32-bit support alive is a substantial burden for the QEMU
+project. Thus QEMU will soon drop the support for 32-bit host systems.
+Recent testing on 32-bit host OS has been inadequate at best, apparently
+due to lack of interest and usage on such hosts.
+
System emulator CPUs
--------------------
diff --git a/meson.build b/meson.build
index 15a066043b..0bf5c93777 100644
--- a/meson.build
+++ b/meson.build
@@ -4834,14 +4834,12 @@ if host_arch == 'unknown'
message('configure has succeeded and you can continue to build, but')
message('QEMU will use a slow interpreter to emulate the target CPU.')
endif
-elif host_arch == 'mips'
+elif cc.sizeof('void *') < 8
message()
warning('DEPRECATED HOST CPU')
message()
message('Support for CPU host architecture ' + cpu + ' is going to be')
- message('dropped as soon as the QEMU project stops supporting Debian 12')
- message('("Bookworm"). Going forward, the QEMU project will not guarantee')
- message('that QEMU will compile or work on this host CPU.')
+ message('dropped in a future QEMU release.')
endif
if not supported_oses.contains(host_os)
--
2.43.0
^ permalink raw reply related [flat|nested] 19+ messages in thread
* Re: [PATCH 0/1] meson: Deprecate 32-bit host systems
2025-01-28 0:42 [PATCH 0/1] meson: Deprecate 32-bit host systems Richard Henderson
2025-01-28 0:42 ` [PATCH 1/1] meson: Deprecate 32-bit host support Richard Henderson
@ 2025-01-28 4:00 ` Thomas Huth
2025-01-28 9:02 ` Alex Bennée
1 sibling, 1 reply; 19+ messages in thread
From: Thomas Huth @ 2025-01-28 4:00 UTC (permalink / raw)
To: Richard Henderson, qemu-devel
Cc: peter.maydell, stefanha, pbonzini, berrange, philmd,
mark.cave-ayland, alex.bennee, Liviu Ionescu
On 28/01/2025 01.42, Richard Henderson wrote:
> Time for our biennial attempt to kill ancient hosts.
>
> I've been re-working the tcg code generator a bit over the holidays.
> One place that screams for a bit of cleanup is with 64-bit guest
> addresses on 32-bit hosts. Of course the best "cleanup" is to not
> have to handle such silliness at all.
>
> Two years after Thomas' last attempt,
>
> https://lore.kernel.org/qemu-devel/20230130114428.1297295-1-thuth@redhat.com/
>
> which resulted only in deprecation of i686 host for system emulation.
> By itself, this just isn't enough for large-scale cleanups.
>
> I'll note that we've separately deprecated mips32, set to expire
> with the end of Debian bookworm, set to enter LTS in June 2026.
>
> I'll note that there is *already* no Debian support for ppc32,
> and that I am currently unable to cross-compile that host at all.
IIRC the biggest pushback that I got two years ago was with regards to
32-bit arm: The recommended version of Raspberry Pi OS is still 32-bit:
https://lore.kernel.org/qemu-devel/F852C238-77B8-4E24-9494-8D060EB78F9F@livius.net/
And looking at https://www.raspberrypi.com/software/operating-systems/ this
still seems to be the case...
So I guess the main question is now: Would it be ok to kill support for
32-bit Raspberry Pi OS nowadays?
> Showing my hand a bit, I am willing to limit deprecation to
> 64-bit guests on 32-bit hosts. But I'd prefer to go the whole hog:
> unconditional support for TCG_TYPE_I64 would remove a *lot* of
> 32-bit fallback code.
Sound like a good alternative to me!
Thomas
^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: [PATCH 0/1] meson: Deprecate 32-bit host systems
2025-01-28 4:00 ` [PATCH 0/1] meson: Deprecate 32-bit host systems Thomas Huth
@ 2025-01-28 9:02 ` Alex Bennée
2025-01-28 9:16 ` Daniel P. Berrangé
` (2 more replies)
0 siblings, 3 replies; 19+ messages in thread
From: Alex Bennée @ 2025-01-28 9:02 UTC (permalink / raw)
To: Thomas Huth
Cc: Richard Henderson, qemu-devel, peter.maydell, stefanha, pbonzini,
berrange, philmd, mark.cave-ayland, Liviu Ionescu
Thomas Huth <thuth@redhat.com> writes:
> On 28/01/2025 01.42, Richard Henderson wrote:
>> Time for our biennial attempt to kill ancient hosts.
>> I've been re-working the tcg code generator a bit over the holidays.
>> One place that screams for a bit of cleanup is with 64-bit guest
>> addresses on 32-bit hosts. Of course the best "cleanup" is to not
>> have to handle such silliness at all.
>> Two years after Thomas' last attempt,
>> https://lore.kernel.org/qemu-devel/20230130114428.1297295-1-thuth@redhat.com/
>> which resulted only in deprecation of i686 host for system
>> emulation.
>> By itself, this just isn't enough for large-scale cleanups.
>> I'll note that we've separately deprecated mips32, set to expire
>> with the end of Debian bookworm, set to enter LTS in June 2026.
>> I'll note that there is *already* no Debian support for ppc32,
>> and that I am currently unable to cross-compile that host at all.
>
> IIRC the biggest pushback that I got two years ago was with regards to
> 32-bit arm: The recommended version of Raspberry Pi OS is still
> 32-bit:
>
> https://lore.kernel.org/qemu-devel/F852C238-77B8-4E24-9494-8D060EB78F9F@livius.net/
>
> And looking at https://www.raspberrypi.com/software/operating-systems/
> this still seems to be the case...
>
> So I guess the main question is now: Would it be ok to kill support
> for 32-bit Raspberry Pi OS nowadays?
I would argue yes for a few reasons.
- you can't buy 32 bit only Pi's AFAICT, even the Pi Zero 2W can work
with a 64 bit OS.
- It's not like the versions shipping in bullseye and bookworm will
stop working.
- Even if we deprecate now there will likely be one more Debian
release cycle that gets 32 bit host support.
>> Showing my hand a bit, I am willing to limit deprecation to
>> 64-bit guests on 32-bit hosts. But I'd prefer to go the whole hog:
>> unconditional support for TCG_TYPE_I64 would remove a *lot* of
>> 32-bit fallback code.
I support going the whole hog. I would be curious what use cases still
exist for an up to date 32-on-32 QEMU based emulation?
>
> Sound like a good alternative to me!
>
> Thomas
--
Alex Bennée
Virtualisation Tech Lead @ Linaro
^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: [PATCH 0/1] meson: Deprecate 32-bit host systems
2025-01-28 9:02 ` Alex Bennée
@ 2025-01-28 9:16 ` Daniel P. Berrangé
2025-01-28 9:17 ` Philippe Mathieu-Daudé
2025-02-01 15:20 ` James Cloos
2 siblings, 0 replies; 19+ messages in thread
From: Daniel P. Berrangé @ 2025-01-28 9:16 UTC (permalink / raw)
To: Alex Bennée
Cc: Thomas Huth, Richard Henderson, qemu-devel, peter.maydell,
stefanha, pbonzini, philmd, mark.cave-ayland, Liviu Ionescu
On Tue, Jan 28, 2025 at 09:02:48AM +0000, Alex Bennée wrote:
> Thomas Huth <thuth@redhat.com> writes:
>
> > On 28/01/2025 01.42, Richard Henderson wrote:
> >> Time for our biennial attempt to kill ancient hosts.
> >> I've been re-working the tcg code generator a bit over the holidays.
> >> One place that screams for a bit of cleanup is with 64-bit guest
> >> addresses on 32-bit hosts. Of course the best "cleanup" is to not
> >> have to handle such silliness at all.
> >> Two years after Thomas' last attempt,
> >> https://lore.kernel.org/qemu-devel/20230130114428.1297295-1-thuth@redhat.com/
> >> which resulted only in deprecation of i686 host for system
> >> emulation.
> >> By itself, this just isn't enough for large-scale cleanups.
> >> I'll note that we've separately deprecated mips32, set to expire
> >> with the end of Debian bookworm, set to enter LTS in June 2026.
> >> I'll note that there is *already* no Debian support for ppc32,
> >> and that I am currently unable to cross-compile that host at all.
> >
> > IIRC the biggest pushback that I got two years ago was with regards to
> > 32-bit arm: The recommended version of Raspberry Pi OS is still
> > 32-bit:
> >
> > https://lore.kernel.org/qemu-devel/F852C238-77B8-4E24-9494-8D060EB78F9F@livius.net/
> >
> > And looking at https://www.raspberrypi.com/software/operating-systems/
> > this still seems to be the case...
> >
> > So I guess the main question is now: Would it be ok to kill support
> > for 32-bit Raspberry Pi OS nowadays?
>
> I would argue yes for a few reasons.
>
> - you can't buy 32 bit only Pi's AFAICT, even the Pi Zero 2W can work
> with a 64 bit OS.
>
> - It's not like the versions shipping in bullseye and bookworm will
> stop working.
>
> - Even if we deprecate now there will likely be one more Debian
> release cycle that gets 32 bit host support.
>
> >> Showing my hand a bit, I am willing to limit deprecation to
> >> 64-bit guests on 32-bit hosts. But I'd prefer to go the whole hog:
> >> unconditional support for TCG_TYPE_I64 would remove a *lot* of
> >> 32-bit fallback code.
>
> I support going the whole hog. I would be curious what use cases still
> exist for an up to date 32-on-32 QEMU based emulation?
Last time we discussed this, we distinguished between system emulation
and linux-user. I believe Richard is proposing to deprecated *both*,
but lets call that out explicitly in any deprecation message to avoid
mis-understandings.
With regards,
Daniel
--
|: https://berrange.com -o- https://www.flickr.com/photos/dberrange :|
|: https://libvirt.org -o- https://fstop138.berrange.com :|
|: https://entangle-photo.org -o- https://www.instagram.com/dberrange :|
^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: [PATCH 0/1] meson: Deprecate 32-bit host systems
2025-01-28 9:02 ` Alex Bennée
2025-01-28 9:16 ` Daniel P. Berrangé
@ 2025-01-28 9:17 ` Philippe Mathieu-Daudé
2025-01-28 9:27 ` Daniel P. Berrangé
2025-02-01 15:20 ` James Cloos
2 siblings, 1 reply; 19+ messages in thread
From: Philippe Mathieu-Daudé @ 2025-01-28 9:17 UTC (permalink / raw)
To: Alex Bennée, Thomas Huth
Cc: Richard Henderson, qemu-devel, peter.maydell, stefanha, pbonzini,
berrange, mark.cave-ayland, Liviu Ionescu
On 28/1/25 10:02, Alex Bennée wrote:
> Thomas Huth <thuth@redhat.com> writes:
>
>> On 28/01/2025 01.42, Richard Henderson wrote:
>>> Time for our biennial attempt to kill ancient hosts.
>>> I've been re-working the tcg code generator a bit over the holidays.
>>> One place that screams for a bit of cleanup is with 64-bit guest
>>> addresses on 32-bit hosts. Of course the best "cleanup" is to not
>>> have to handle such silliness at all.
>>> Two years after Thomas' last attempt,
>>> https://lore.kernel.org/qemu-devel/20230130114428.1297295-1-thuth@redhat.com/
>>> which resulted only in deprecation of i686 host for system
>>> emulation.
>>> By itself, this just isn't enough for large-scale cleanups.
>>> I'll note that we've separately deprecated mips32, set to expire
>>> with the end of Debian bookworm, set to enter LTS in June 2026.
>>> I'll note that there is *already* no Debian support for ppc32,
>>> and that I am currently unable to cross-compile that host at all.
>>
>> IIRC the biggest pushback that I got two years ago was with regards to
>> 32-bit arm: The recommended version of Raspberry Pi OS is still
>> 32-bit:
>>
>> https://lore.kernel.org/qemu-devel/F852C238-77B8-4E24-9494-8D060EB78F9F@livius.net/
>>
>> And looking at https://www.raspberrypi.com/software/operating-systems/
>> this still seems to be the case...
>>
>> So I guess the main question is now: Would it be ok to kill support
>> for 32-bit Raspberry Pi OS nowadays?
>
> I would argue yes for a few reasons.
>
> - you can't buy 32 bit only Pi's AFAICT, even the Pi Zero 2W can work
> with a 64 bit OS.
>
> - It's not like the versions shipping in bullseye and bookworm will
> stop working.
>
> - Even if we deprecate now there will likely be one more Debian
> release cycle that gets 32 bit host support.
>
>>> Showing my hand a bit, I am willing to limit deprecation to
>>> 64-bit guests on 32-bit hosts. But I'd prefer to go the whole hog:
>>> unconditional support for TCG_TYPE_I64 would remove a *lot* of
>>> 32-bit fallback code.
>
> I support going the whole hog. I would be curious what use cases still
> exist for an up to date 32-on-32 QEMU based emulation?
Current maintainers don't have spare time to support the 32-on-32
emulation. If there is interest in the community for such niche,
someone needs to step forward, willing to maintain it.
^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: [PATCH 0/1] meson: Deprecate 32-bit host systems
2025-01-28 9:17 ` Philippe Mathieu-Daudé
@ 2025-01-28 9:27 ` Daniel P. Berrangé
2025-01-28 10:01 ` Philippe Mathieu-Daudé
2025-01-28 20:39 ` Richard Henderson
0 siblings, 2 replies; 19+ messages in thread
From: Daniel P. Berrangé @ 2025-01-28 9:27 UTC (permalink / raw)
To: Philippe Mathieu-Daudé
Cc: Alex Bennée, Thomas Huth, Richard Henderson, qemu-devel,
peter.maydell, stefanha, pbonzini, mark.cave-ayland,
Liviu Ionescu
On Tue, Jan 28, 2025 at 10:17:33AM +0100, Philippe Mathieu-Daudé wrote:
> On 28/1/25 10:02, Alex Bennée wrote:
> > Thomas Huth <thuth@redhat.com> writes:
> >
> > > On 28/01/2025 01.42, Richard Henderson wrote:
> > > > Time for our biennial attempt to kill ancient hosts.
> > > > I've been re-working the tcg code generator a bit over the holidays.
> > > > One place that screams for a bit of cleanup is with 64-bit guest
> > > > addresses on 32-bit hosts. Of course the best "cleanup" is to not
> > > > have to handle such silliness at all.
> > > > Two years after Thomas' last attempt,
> > > > https://lore.kernel.org/qemu-devel/20230130114428.1297295-1-thuth@redhat.com/
> > > > which resulted only in deprecation of i686 host for system
> > > > emulation.
> > > > By itself, this just isn't enough for large-scale cleanups.
> > > > I'll note that we've separately deprecated mips32, set to expire
> > > > with the end of Debian bookworm, set to enter LTS in June 2026.
> > > > I'll note that there is *already* no Debian support for ppc32,
> > > > and that I am currently unable to cross-compile that host at all.
> > >
> > > IIRC the biggest pushback that I got two years ago was with regards to
> > > 32-bit arm: The recommended version of Raspberry Pi OS is still
> > > 32-bit:
> > >
> > > https://lore.kernel.org/qemu-devel/F852C238-77B8-4E24-9494-8D060EB78F9F@livius.net/
> > >
> > > And looking at https://www.raspberrypi.com/software/operating-systems/
> > > this still seems to be the case...
> > >
> > > So I guess the main question is now: Would it be ok to kill support
> > > for 32-bit Raspberry Pi OS nowadays?
> >
> > I would argue yes for a few reasons.
> >
> > - you can't buy 32 bit only Pi's AFAICT, even the Pi Zero 2W can work
> > with a 64 bit OS.
> >
> > - It's not like the versions shipping in bullseye and bookworm will
> > stop working.
> >
> > - Even if we deprecate now there will likely be one more Debian
> > release cycle that gets 32 bit host support.
> >
> > > > Showing my hand a bit, I am willing to limit deprecation to
> > > > 64-bit guests on 32-bit hosts. But I'd prefer to go the whole hog:
> > > > unconditional support for TCG_TYPE_I64 would remove a *lot* of
> > > > 32-bit fallback code.
> >
> > I support going the whole hog. I would be curious what use cases still
> > exist for an up to date 32-on-32 QEMU based emulation?
>
> Current maintainers don't have spare time to support the 32-on-32
> emulation. If there is interest in the community for such niche,
> someone needs to step forward, willing to maintain it.
I'm not sure that's the case here.
32-on-32 is already effectively unmaintained, so we're not suffering
in terms of keeping the 32-on-32 code reliable.
We're suffering from the complexity that 32-on-32 code places on the
rest of the XX-on-64 code that we do care about.
IOW if someone volunteered to maintain 32-on-32 that's not actually
solving the complexity problem, just perpetuating it.
The current maintainers only interested in XX-on-64 will still suffer
ongoing burden from the code complexity caused by 32-on-32 merely
existing.
So again lets be clear...
Either we...
* ...want to kill 32-on-32 code to reduce the complexity on the
main XX-on-64 codebase regardless of interest in 32-on-32
Or
* ...want to kill 32-on-32 code because it is buggy due to lack
of maintainers, but would welcome someone to step forward to
maintain it
It sounded like we were wanting the former, not the latter.
With regards,
Daniel
--
|: https://berrange.com -o- https://www.flickr.com/photos/dberrange :|
|: https://libvirt.org -o- https://fstop138.berrange.com :|
|: https://entangle-photo.org -o- https://www.instagram.com/dberrange :|
^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: [PATCH 0/1] meson: Deprecate 32-bit host systems
2025-01-28 9:27 ` Daniel P. Berrangé
@ 2025-01-28 10:01 ` Philippe Mathieu-Daudé
2025-01-28 10:02 ` Philippe Mathieu-Daudé
2025-01-28 20:39 ` Richard Henderson
1 sibling, 1 reply; 19+ messages in thread
From: Philippe Mathieu-Daudé @ 2025-01-28 10:01 UTC (permalink / raw)
To: Daniel P. Berrangé
Cc: Alex Bennée, Thomas Huth, Richard Henderson, qemu-devel,
peter.maydell, stefanha, pbonzini, mark.cave-ayland,
Liviu Ionescu
On 28/1/25 10:27, Daniel P. Berrangé wrote:
> On Tue, Jan 28, 2025 at 10:17:33AM +0100, Philippe Mathieu-Daudé wrote:
>> On 28/1/25 10:02, Alex Bennée wrote:
>>> Thomas Huth <thuth@redhat.com> writes:
>>>
>>>> On 28/01/2025 01.42, Richard Henderson wrote:
>>>>> Time for our biennial attempt to kill ancient hosts.
>>>>> I've been re-working the tcg code generator a bit over the holidays.
>>>>> One place that screams for a bit of cleanup is with 64-bit guest
>>>>> addresses on 32-bit hosts. Of course the best "cleanup" is to not
>>>>> have to handle such silliness at all.
>>>>> Two years after Thomas' last attempt,
>>>>> https://lore.kernel.org/qemu-devel/20230130114428.1297295-1-thuth@redhat.com/
>>>>> which resulted only in deprecation of i686 host for system
>>>>> emulation.
>>>>> By itself, this just isn't enough for large-scale cleanups.
>>>>> I'll note that we've separately deprecated mips32, set to expire
>>>>> with the end of Debian bookworm, set to enter LTS in June 2026.
>>>>> I'll note that there is *already* no Debian support for ppc32,
>>>>> and that I am currently unable to cross-compile that host at all.
>>>>
>>>> IIRC the biggest pushback that I got two years ago was with regards to
>>>> 32-bit arm: The recommended version of Raspberry Pi OS is still
>>>> 32-bit:
>>>>
>>>> https://lore.kernel.org/qemu-devel/F852C238-77B8-4E24-9494-8D060EB78F9F@livius.net/
>>>>
>>>> And looking at https://www.raspberrypi.com/software/operating-systems/
>>>> this still seems to be the case...
>>>>
>>>> So I guess the main question is now: Would it be ok to kill support
>>>> for 32-bit Raspberry Pi OS nowadays?
>>>
>>> I would argue yes for a few reasons.
>>>
>>> - you can't buy 32 bit only Pi's AFAICT, even the Pi Zero 2W can work
>>> with a 64 bit OS.
>>>
>>> - It's not like the versions shipping in bullseye and bookworm will
>>> stop working.
>>>
>>> - Even if we deprecate now there will likely be one more Debian
>>> release cycle that gets 32 bit host support.
>>>
>>>>> Showing my hand a bit, I am willing to limit deprecation to
>>>>> 64-bit guests on 32-bit hosts. But I'd prefer to go the whole hog:
>>>>> unconditional support for TCG_TYPE_I64 would remove a *lot* of
>>>>> 32-bit fallback code.
>>>
>>> I support going the whole hog. I would be curious what use cases still
>>> exist for an up to date 32-on-32 QEMU based emulation?
>>
>> Current maintainers don't have spare time to support the 32-on-32
>> emulation. If there is interest in the community for such niche,
>> someone needs to step forward, willing to maintain it.
>
> I'm not sure that's the case here.
>
> 32-on-32 is already effectively unmaintained, so we're not suffering
> in terms of keeping the 32-on-32 code reliable.
>
> We're suffering from the complexity that 32-on-32 code places on the
> rest of the XX-on-64 code that we do care about.
>
> IOW if someone volunteered to maintain 32-on-32 that's not actually
> solving the complexity problem, just perpetuating it.
>
> The current maintainers only interested in XX-on-64 will still suffer
> ongoing burden from the code complexity caused by 32-on-32 merely
> existing.
>
> So again lets be clear...
>
> Either we...
>
> * ...want to kill 32-on-32 code to reduce the complexity on the
> main XX-on-64 codebase regardless of interest in 32-on-32
>
> Or
>
> * ...want to kill 32-on-32 code because it is buggy due to lack
> of maintainers, but would welcome someone to step forward to
> maintain it
>
> It sounded like we were wanting the former, not the latter.
Yes, we want to former. But as Thomas pointed out, last time
someone showed up, and while the maintainers weren't willing to
keep 32-on-32 [*], they kept maintaining it at the price of restricting
XX-on-64.
[*] back then we proved system emulation XX-on-32 wasn't really useful
anymore, and user emulation 64-on-32 was partly broken, so only
32-on-32 user emulation was functional.
^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: [PATCH 0/1] meson: Deprecate 32-bit host systems
2025-01-28 10:01 ` Philippe Mathieu-Daudé
@ 2025-01-28 10:02 ` Philippe Mathieu-Daudé
2025-01-29 6:23 ` Thomas Huth
0 siblings, 1 reply; 19+ messages in thread
From: Philippe Mathieu-Daudé @ 2025-01-28 10:02 UTC (permalink / raw)
To: Daniel P. Berrangé
Cc: Alex Bennée, Thomas Huth, Richard Henderson, qemu-devel,
peter.maydell, stefanha, pbonzini, mark.cave-ayland,
Liviu Ionescu
On 28/1/25 11:01, Philippe Mathieu-Daudé wrote:
> On 28/1/25 10:27, Daniel P. Berrangé wrote:
>> On Tue, Jan 28, 2025 at 10:17:33AM +0100, Philippe Mathieu-Daudé wrote:
>>> On 28/1/25 10:02, Alex Bennée wrote:
>>>> Thomas Huth <thuth@redhat.com> writes:
>>>>
>>>>> On 28/01/2025 01.42, Richard Henderson wrote:
>>>>>> Time for our biennial attempt to kill ancient hosts.
>>>>>> I've been re-working the tcg code generator a bit over the holidays.
>>>>>> One place that screams for a bit of cleanup is with 64-bit guest
>>>>>> addresses on 32-bit hosts. Of course the best "cleanup" is to not
>>>>>> have to handle such silliness at all.
>>>>>> Two years after Thomas' last attempt,
>>>>>> https://lore.kernel.org/qemu-devel/20230130114428.1297295-1-
>>>>>> thuth@redhat.com/
>>>>>> which resulted only in deprecation of i686 host for system
>>>>>> emulation.
>>>>>> By itself, this just isn't enough for large-scale cleanups.
>>>>>> I'll note that we've separately deprecated mips32, set to expire
>>>>>> with the end of Debian bookworm, set to enter LTS in June 2026.
>>>>>> I'll note that there is *already* no Debian support for ppc32,
>>>>>> and that I am currently unable to cross-compile that host at all.
>>>>>
>>>>> IIRC the biggest pushback that I got two years ago was with regards to
>>>>> 32-bit arm: The recommended version of Raspberry Pi OS is still
>>>>> 32-bit:
>>>>>
>>>>> https://lore.kernel.org/qemu-devel/
>>>>> F852C238-77B8-4E24-9494-8D060EB78F9F@livius.net/
>>>>>
>>>>> And looking at https://www.raspberrypi.com/software/operating-systems/
>>>>> this still seems to be the case...
>>>>>
>>>>> So I guess the main question is now: Would it be ok to kill support
>>>>> for 32-bit Raspberry Pi OS nowadays?
>>>>
>>>> I would argue yes for a few reasons.
>>>>
>>>> - you can't buy 32 bit only Pi's AFAICT, even the Pi Zero 2W can
>>>> work
>>>> with a 64 bit OS.
>>>>
>>>> - It's not like the versions shipping in bullseye and bookworm will
>>>> stop working.
>>>>
>>>> - Even if we deprecate now there will likely be one more Debian
>>>> release cycle that gets 32 bit host support.
>>>>
>>>>>> Showing my hand a bit, I am willing to limit deprecation to
>>>>>> 64-bit guests on 32-bit hosts. But I'd prefer to go the whole hog:
>>>>>> unconditional support for TCG_TYPE_I64 would remove a *lot* of
>>>>>> 32-bit fallback code.
>>>>
>>>> I support going the whole hog. I would be curious what use cases still
>>>> exist for an up to date 32-on-32 QEMU based emulation?
>>>
>>> Current maintainers don't have spare time to support the 32-on-32
>>> emulation. If there is interest in the community for such niche,
>>> someone needs to step forward, willing to maintain it.
>>
>> I'm not sure that's the case here.
>>
>> 32-on-32 is already effectively unmaintained, so we're not suffering
>> in terms of keeping the 32-on-32 code reliable.
>>
>> We're suffering from the complexity that 32-on-32 code places on the
>> rest of the XX-on-64 code that we do care about.
>>
>> IOW if someone volunteered to maintain 32-on-32 that's not actually
>> solving the complexity problem, just perpetuating it.
>>
>> The current maintainers only interested in XX-on-64 will still suffer
>> ongoing burden from the code complexity caused by 32-on-32 merely
>> existing.
>>
>> So again lets be clear...
>>
>> Either we...
>>
>> * ...want to kill 32-on-32 code to reduce the complexity on the
>> main XX-on-64 codebase regardless of interest in 32-on-32
>>
>> Or
>>
>> * ...want to kill 32-on-32 code because it is buggy due to lack
>> of maintainers, but would welcome someone to step forward to
>> maintain it
>>
>> It sounded like we were wanting the former, not the latter.
>
> Yes, we want to former. But as Thomas pointed out, last time
> someone showed up, and while the maintainers weren't willing to
> keep 32-on-32 [*], they kept maintaining it at the price of restricting
> XX-on-64.
>
> [*] back then we proved system emulation XX-on-32 wasn't really useful
> anymore, and user emulation 64-on-32 was partly broken, so only
> 32-on-32 user emulation was functional.
So it seems reasonable to deprecate and ask interested 32-on-32 user
emulation users to use QEMU 10.1 release.
^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: [PATCH 0/1] meson: Deprecate 32-bit host systems
2025-01-28 9:27 ` Daniel P. Berrangé
2025-01-28 10:01 ` Philippe Mathieu-Daudé
@ 2025-01-28 20:39 ` Richard Henderson
1 sibling, 0 replies; 19+ messages in thread
From: Richard Henderson @ 2025-01-28 20:39 UTC (permalink / raw)
To: Daniel P. Berrangé, Philippe Mathieu-Daudé
Cc: Alex Bennée, Thomas Huth, qemu-devel, peter.maydell,
stefanha, pbonzini, mark.cave-ayland, Liviu Ionescu
On 1/28/25 01:27, Daniel P. Berrangé wrote:
> I'm not sure that's the case here.
>
> 32-on-32 is already effectively unmaintained, so we're not suffering
> in terms of keeping the 32-on-32 code reliable.
Correct.
As evidence, on i686, the absolutely easiest available 32-bit host, we have the following
failures with make check-functional:
> 2/185 qemu:func-thorough+func-aarch64-thorough+thorough / func-aarch64-aarch64_rme_virt ERROR 1.50s exit status 1
> 3/185 qemu:func-thorough+func-aarch64-thorough+thorough / func-aarch64-aarch64_rme_sbsaref ERROR 2.69s exit status 1
> 4/185 qemu:func-thorough+func-aarch64-thorough+thorough / func-aarch64-aarch64_virt ERROR 206.84s exit status 1
> 12/185 qemu:func-thorough+func-ppc64-thorough+thorough / func-ppc64-ppc64_tuxrun ERROR 4.95s exit status 1
> 17/185 qemu:func-thorough+func-aarch64-thorough+thorough / func-aarch64-aarch64_aspeed TIMEOUT 600.01s killed by signal 15 SIGTERM
> 24/185 qemu:func-thorough+func-ppc64-thorough+thorough / func-ppc64-ppc64_powernv TIMEOUT 480.01s killed by signal 15 SIGTERM
> 115/185 qemu:func-quick+func-x86_64 / func-x86_64-mem_addr_space ERROR 8.92s exit status 1
> 132/185 qemu:func-thorough+func-aarch64-thorough+thorough / func-aarch64-aarch64_xlnx_versal ERROR 0.35s exit status 1
> 147/185 qemu:func-thorough+func-m68k-thorough+thorough / func-m68k-m68k_q800 ERROR 0.88s exit status 1
> 156/185 qemu:func-thorough+func-riscv64-thorough+thorough / func-riscv64-riscv64_tuxrun TIMEOUT 120.01s killed by signal 15 SIGTERM
> 163/185 qemu:func-thorough+func-x86_64-thorough+thorough / func-x86_64-x86_64_kvm_xen TIMEOUT 180.01s killed by signal 15 SIGTERM
> 177/185 qemu:func-thorough+func-x86_64-thorough+thorough / func-x86_64-linux_initrd ERROR 0.35s exit status 1
> 178/185 qemu:func-thorough+func-x86_64-thorough+thorough / func-x86_64-multiprocess ERROR 0.77s exit status 1
8 of these are due to the test asking for more RAM than the host can provide to the guest.
Output: qemu-system-aarch64: at most 2047 MB RAM can be simulated
Output: qemu-system-ppc64: ram size 4294967296 exceeds permitted maximum 4294967295
Output: qemu-system-x86_64: ram size 4294967296 exceeds permitted maximum 4294967295
Some are probably trivially fixable, simply by asking for less RAM. But the point is that
no one has reported the failures, and I can only conclude that no one cares about this
host. And if we can't keep i686 working, then other more obscure hosts have even less chance.
I'll also note that those error messages above are misleading -- in at least some of the
x86_64 cases the command-line is "-m 512,slots=1,maxmem=59.6G". So we're asking to
reserve physical address space for almost 60G, which is not what the error message suggests.
> We're suffering from the complexity that 32-on-32 code places on the
> rest of the XX-on-64 code that we do care about.
>
> IOW if someone volunteered to maintain 32-on-32 that's not actually
> solving the complexity problem, just perpetuating it.
Correct.
> So again lets be clear...
>
> Either we...
>
> * ...want to kill 32-on-32 code to reduce the complexity on the
> main XX-on-64 codebase regardless of interest in 32-on-32
>
> Or
>
> * ...want to kill 32-on-32 code because it is buggy due to lack
> of maintainers, but would welcome someone to step forward to
> maintain it
>
> It sounded like we were wanting the former, not the latter.
Correct.
Frankly, no one has stepped forward in the last 2 years, the last time we mooted
deprecating all 32-bit hosts, but got talked out of it. So I don't think option 2 is a
real option.
r~
^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: [PATCH 0/1] meson: Deprecate 32-bit host systems
2025-01-28 10:02 ` Philippe Mathieu-Daudé
@ 2025-01-29 6:23 ` Thomas Huth
2025-01-29 12:23 ` Peter Maydell
0 siblings, 1 reply; 19+ messages in thread
From: Thomas Huth @ 2025-01-29 6:23 UTC (permalink / raw)
To: Philippe Mathieu-Daudé, Daniel P. Berrangé
Cc: Alex Bennée, Richard Henderson, qemu-devel, peter.maydell,
stefanha, pbonzini, mark.cave-ayland, Liviu Ionescu
On 28/01/2025 11.02, Philippe Mathieu-Daudé wrote:
> On 28/1/25 11:01, Philippe Mathieu-Daudé wrote:
>> On 28/1/25 10:27, Daniel P. Berrangé wrote:
>>> On Tue, Jan 28, 2025 at 10:17:33AM +0100, Philippe Mathieu-Daudé wrote:
>>>> On 28/1/25 10:02, Alex Bennée wrote:
>>>>> Thomas Huth <thuth@redhat.com> writes:
>>>>>
>>>>>> On 28/01/2025 01.42, Richard Henderson wrote:
>>>>>>> Time for our biennial attempt to kill ancient hosts.
>>>>>>> I've been re-working the tcg code generator a bit over the holidays.
>>>>>>> One place that screams for a bit of cleanup is with 64-bit guest
>>>>>>> addresses on 32-bit hosts. Of course the best "cleanup" is to not
>>>>>>> have to handle such silliness at all.
>>>>>>> Two years after Thomas' last attempt,
>>>>>>> https://lore.kernel.org/qemu-devel/20230130114428.1297295-1-
>>>>>>> thuth@redhat.com/
>>>>>>> which resulted only in deprecation of i686 host for system
>>>>>>> emulation.
>>>>>>> By itself, this just isn't enough for large-scale cleanups.
>>>>>>> I'll note that we've separately deprecated mips32, set to expire
>>>>>>> with the end of Debian bookworm, set to enter LTS in June 2026.
>>>>>>> I'll note that there is *already* no Debian support for ppc32,
>>>>>>> and that I am currently unable to cross-compile that host at all.
>>>>>>
>>>>>> IIRC the biggest pushback that I got two years ago was with regards to
>>>>>> 32-bit arm: The recommended version of Raspberry Pi OS is still
>>>>>> 32-bit:
>>>>>>
>>>>>> https://lore.kernel.org/qemu-devel/
>>>>>> F852C238-77B8-4E24-9494-8D060EB78F9F@livius.net/
>>>>>>
>>>>>> And looking at https://www.raspberrypi.com/software/operating-systems/
>>>>>> this still seems to be the case...
>>>>>>
>>>>>> So I guess the main question is now: Would it be ok to kill support
>>>>>> for 32-bit Raspberry Pi OS nowadays?
>>>>>
>>>>> I would argue yes for a few reasons.
>>>>>
>>>>> - you can't buy 32 bit only Pi's AFAICT, even the Pi Zero 2W can work
>>>>> with a 64 bit OS.
>>>>>
>>>>> - It's not like the versions shipping in bullseye and bookworm will
>>>>> stop working.
>>>>>
>>>>> - Even if we deprecate now there will likely be one more Debian
>>>>> release cycle that gets 32 bit host support.
>>>>>
>>>>>>> Showing my hand a bit, I am willing to limit deprecation to
>>>>>>> 64-bit guests on 32-bit hosts. But I'd prefer to go the whole hog:
>>>>>>> unconditional support for TCG_TYPE_I64 would remove a *lot* of
>>>>>>> 32-bit fallback code.
>>>>>
>>>>> I support going the whole hog. I would be curious what use cases still
>>>>> exist for an up to date 32-on-32 QEMU based emulation?
>>>>
>>>> Current maintainers don't have spare time to support the 32-on-32
>>>> emulation. If there is interest in the community for such niche,
>>>> someone needs to step forward, willing to maintain it.
>>>
>>> I'm not sure that's the case here.
>>>
>>> 32-on-32 is already effectively unmaintained, so we're not suffering
>>> in terms of keeping the 32-on-32 code reliable.
>>>
>>> We're suffering from the complexity that 32-on-32 code places on the
>>> rest of the XX-on-64 code that we do care about.
>>>
>>> IOW if someone volunteered to maintain 32-on-32 that's not actually
>>> solving the complexity problem, just perpetuating it.
>>>
>>> The current maintainers only interested in XX-on-64 will still suffer
>>> ongoing burden from the code complexity caused by 32-on-32 merely
>>> existing.
>>>
>>> So again lets be clear...
>>>
>>> Either we...
>>>
>>> * ...want to kill 32-on-32 code to reduce the complexity on the
>>> main XX-on-64 codebase regardless of interest in 32-on-32
>>>
>>> Or
>>>
>>> * ...want to kill 32-on-32 code because it is buggy due to lack
>>> of maintainers, but would welcome someone to step forward to
>>> maintain it
>>>
>>> It sounded like we were wanting the former, not the latter.
>>
>> Yes, we want to former. But as Thomas pointed out, last time
>> someone showed up, and while the maintainers weren't willing to
>> keep 32-on-32 [*], they kept maintaining it at the price of restricting
>> XX-on-64.
>>
>> [*] back then we proved system emulation XX-on-32 wasn't really useful
>> anymore, and user emulation 64-on-32 was partly broken, so only
>> 32-on-32 user emulation was functional.
>
> So it seems reasonable to deprecate and ask interested 32-on-32 user
> emulation users to use QEMU 10.1 release.
So unless someone complains immediately with a good reason, I'm also in
favor of marking it as deprecated now. If then someone complains during the
deprecation period, we still can reconsider and remove the deprecation note
again.
Thus for this patch from my side:
Reviewed-by: Thomas Huth <thuth@redhat.com>
^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: [PATCH 0/1] meson: Deprecate 32-bit host systems
2025-01-29 6:23 ` Thomas Huth
@ 2025-01-29 12:23 ` Peter Maydell
2025-01-29 12:47 ` Paolo Bonzini
2025-02-03 9:10 ` Alex Bennée
0 siblings, 2 replies; 19+ messages in thread
From: Peter Maydell @ 2025-01-29 12:23 UTC (permalink / raw)
To: Thomas Huth
Cc: Philippe Mathieu-Daudé, Daniel P. Berrangé,
Alex Bennée, Richard Henderson, qemu-devel, stefanha,
pbonzini, mark.cave-ayland, Liviu Ionescu
On Wed, 29 Jan 2025 at 06:23, Thomas Huth <thuth@redhat.com> wrote:
> So unless someone complains immediately with a good reason, I'm also in
> favor of marking it as deprecated now. If then someone complains during the
> deprecation period, we still can reconsider and remove the deprecation note
> again.
Well, I mean the reason would be that I suspect we do still have
users who are using QEMU for some purposes on 32-bit arm hosts.
That doesn't mean they're trying to run massively complex or
high memory guests or that they care that our whole test suite
doesn't run.
I'm not really strongly opposed to dropping 32-bit host support,
but I don't think a thread on qemu-devel is exactly likely to
get the attention of the people who might be using this
functionality. (You could argue that functionality without
representation among the developer community is fair game
for being dumped even if it has users, of course.)
-- PMM
^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: [PATCH 0/1] meson: Deprecate 32-bit host systems
2025-01-29 12:23 ` Peter Maydell
@ 2025-01-29 12:47 ` Paolo Bonzini
2025-01-31 16:46 ` Richard Henderson
2025-02-03 9:10 ` Alex Bennée
1 sibling, 1 reply; 19+ messages in thread
From: Paolo Bonzini @ 2025-01-29 12:47 UTC (permalink / raw)
To: Peter Maydell, Thomas Huth
Cc: Philippe Mathieu-Daudé, Daniel P. Berrangé,
Alex Bennée, Richard Henderson, qemu-devel, stefanha,
mark.cave-ayland, Liviu Ionescu
On 1/29/25 13:23, Peter Maydell wrote:
> I'm not really strongly opposed to dropping 32-bit host support,
> but I don't think a thread on qemu-devel is exactly likely to
> get the attention of the people who might be using this
> functionality. (You could argue that functionality without
> representation among the developer community is fair game
> for being dumped even if it has users, of course.)
On the other hand, broken tests that no one even runs among the
developers are not particularly significant. It's not surprising that
tests do not pass the first time and need a little tweaking when trying
them on a new platform.
There are many examples of parts of QEMU that stayed unmaintained for
years, working relatively well for limited use cases, and were only
later revamped. Most of those that I can remember are guest side: the
TCG frontend for x86, ESP emulation in hw/scsi, VGA. In fact VGA still
has a good number of emulation deficiencies and it's deprecated for
virtualization use, but no one in their right mind would suggest slating
it for removal.
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.
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.
Paolo
^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: [PATCH 0/1] meson: Deprecate 32-bit host systems
2025-01-29 12:47 ` Paolo Bonzini
@ 2025-01-31 16:46 ` Richard Henderson
2025-01-31 17:08 ` Paolo Bonzini
0 siblings, 1 reply; 19+ messages in thread
From: Richard Henderson @ 2025-01-31 16:46 UTC (permalink / raw)
To: Paolo Bonzini, Peter Maydell, Thomas Huth
Cc: Philippe Mathieu-Daudé, Daniel P. Berrangé,
Alex Bennée, qemu-devel, stefanha, mark.cave-ayland,
Liviu Ionescu
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?
> 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.
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.
r~
^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: [PATCH 0/1] meson: Deprecate 32-bit host systems
2025-01-31 16:46 ` Richard Henderson
@ 2025-01-31 17:08 ` Paolo Bonzini
2025-01-31 21:28 ` Daniel P. Berrangé
0 siblings, 1 reply; 19+ messages in thread
From: Paolo Bonzini @ 2025-01-31 17:08 UTC (permalink / raw)
To: Richard Henderson
Cc: Peter Maydell, Thomas Huth, Philippe Mathieu-Daudé,
Daniel P. Berrangé, Alex Bennée, qemu-devel,
Hajnoczi, Stefan, Mark Cave-Ayland, Liviu Ionescu
[-- Attachment #1: Type: text/plain, Size: 2816 bytes --]
Il ven 31 gen 2025, 17:46 Richard Henderson <richard.henderson@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
[-- Attachment #2: Type: text/html, Size: 4261 bytes --]
^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: [PATCH 0/1] meson: Deprecate 32-bit host systems
2025-01-31 17:08 ` Paolo Bonzini
@ 2025-01-31 21:28 ` Daniel P. Berrangé
0 siblings, 0 replies; 19+ messages in thread
From: Daniel P. Berrangé @ 2025-01-31 21:28 UTC (permalink / raw)
To: Paolo Bonzini
Cc: Richard Henderson, Peter Maydell, Thomas Huth,
Philippe Mathieu-Daudé, Alex Bennée, qemu-devel,
Hajnoczi, Stefan, Mark Cave-Ayland, Liviu Ionescu
On Fri, Jan 31, 2025 at 06:08:32PM +0100, Paolo Bonzini wrote:
> Il ven 31 gen 2025, 17:46 Richard Henderson <richard.henderson@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.
These days perhaps one of the more (most?) common "linux-user" scenarios
I see is foreign arch containers. When telling docker/podman to run a
non- native container image, it relies on qemu-user to make it all work
transparently. Users probably don't even realize they're relying on
QEMU, things just look a little slower.
Given the prevalence of containers these days, if you have an OS install
whether 32-bit or 64-bit you're probably relying on podman/docker to some
extent. Those who need non-native containers is admittedly relatively
niche, but it wouldn't surprise me to hear of people doing it on 32-bit
machines.
In general I think the biggest problem we have is that users that are likely
to be impacted by our decisions won't pay any attention to QEMU upstream
at all. IOW they'll never see our deprecation announcement, and thus we
will never hear any feedback if they want it kept around
So perhaps we need to make a bit more effort to broadcast this particular
plan, given its more fundamental impact that most deprecations.
I'd suggest we should put out a qemu.org blog post post asking for feedback
on the proposal to drop 32-bit support. Then get people to publicise this
to their distro forums/mailing lists, and/or CC lwn.net to ask for it to be
featured it as a news item.
With regards,
Daniel
--
|: https://berrange.com -o- https://www.flickr.com/photos/dberrange :|
|: https://libvirt.org -o- https://fstop138.berrange.com :|
|: https://entangle-photo.org -o- https://www.instagram.com/dberrange :|
^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: [PATCH 0/1] meson: Deprecate 32-bit host systems
2025-01-28 9:02 ` Alex Bennée
2025-01-28 9:16 ` Daniel P. Berrangé
2025-01-28 9:17 ` Philippe Mathieu-Daudé
@ 2025-02-01 15:20 ` James Cloos
2 siblings, 0 replies; 19+ messages in thread
From: James Cloos @ 2025-02-01 15:20 UTC (permalink / raw)
To: Alex Bennée
Cc: Thomas Huth, Richard Henderson, qemu-devel, peter.maydell,
stefanha, pbonzini, berrange, philmd, mark.cave-ayland,
Liviu Ionescu
AB> - even the Pi Zero 2W can work with a 64 bit OS.
not complaining about the idea, but the above is not entirely true.
i had to drop back to the 32 bit version to get the 802.11 to work.
they released a new version after i reported the bug, but that also
failed to work....
-JimC
--
James Cloos <cloos@jhcloos.com>
OpenPGP: https://jhcloos.com/0x997A9F17ED7DAEA6.asc
^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: [PATCH 0/1] meson: Deprecate 32-bit host systems
2025-01-29 12:23 ` Peter Maydell
2025-01-29 12:47 ` Paolo Bonzini
@ 2025-02-03 9:10 ` Alex Bennée
2025-02-03 16:06 ` Philippe Mathieu-Daudé
1 sibling, 1 reply; 19+ messages in thread
From: Alex Bennée @ 2025-02-03 9:10 UTC (permalink / raw)
To: Peter Maydell
Cc: Thomas Huth, Philippe Mathieu-Daudé, Daniel P. Berrangé,
Richard Henderson, qemu-devel, stefanha, pbonzini,
mark.cave-ayland, Liviu Ionescu
Peter Maydell <peter.maydell@linaro.org> writes:
> On Wed, 29 Jan 2025 at 06:23, Thomas Huth <thuth@redhat.com> wrote:
>> So unless someone complains immediately with a good reason, I'm also in
>> favor of marking it as deprecated now. If then someone complains during the
>> deprecation period, we still can reconsider and remove the deprecation note
>> again.
>
> Well, I mean the reason would be that I suspect we do still have
> users who are using QEMU for some purposes on 32-bit arm hosts.
> That doesn't mean they're trying to run massively complex or
> high memory guests or that they care that our whole test suite
> doesn't run.
>
> I'm not really strongly opposed to dropping 32-bit host support,
> but I don't think a thread on qemu-devel is exactly likely to
> get the attention of the people who might be using this
> functionality. (You could argue that functionality without
> representation among the developer community is fair game
> for being dumped even if it has users, of course.)
FWIW random internet poll:
https://mastodon.org.uk/deck/@stsquad/113905257703721811
26% 32 bit
74% 64 bit
with 41 respondents.
>
> -- PMM
--
Alex Bennée
Virtualisation Tech Lead @ Linaro
^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: [PATCH 0/1] meson: Deprecate 32-bit host systems
2025-02-03 9:10 ` Alex Bennée
@ 2025-02-03 16:06 ` Philippe Mathieu-Daudé
0 siblings, 0 replies; 19+ messages in thread
From: Philippe Mathieu-Daudé @ 2025-02-03 16:06 UTC (permalink / raw)
To: Alex Bennée, Peter Maydell
Cc: Thomas Huth, Daniel P. Berrangé, Richard Henderson,
qemu-devel, stefanha, pbonzini, mark.cave-ayland, Liviu Ionescu
On 3/2/25 10:10, Alex Bennée wrote:
> Peter Maydell <peter.maydell@linaro.org> writes:
>
>> On Wed, 29 Jan 2025 at 06:23, Thomas Huth <thuth@redhat.com> wrote:
>>> So unless someone complains immediately with a good reason, I'm also in
>>> favor of marking it as deprecated now. If then someone complains during the
>>> deprecation period, we still can reconsider and remove the deprecation note
>>> again.
>>
>> Well, I mean the reason would be that I suspect we do still have
>> users who are using QEMU for some purposes on 32-bit arm hosts.
>> That doesn't mean they're trying to run massively complex or
>> high memory guests or that they care that our whole test suite
>> doesn't run.
>>
>> I'm not really strongly opposed to dropping 32-bit host support,
>> but I don't think a thread on qemu-devel is exactly likely to
>> get the attention of the people who might be using this
>> functionality. (You could argue that functionality without
>> representation among the developer community is fair game
>> for being dumped even if it has users, of course.)
>
> FWIW random internet poll:
>
> https://mastodon.org.uk/deck/@stsquad/113905257703721811
>
> 26% 32 bit
> 74% 64 bit
>
> with 41 respondents.
Note that some respondents who voted to maintain 32-bit support
mixed 32-bit host with 32-bit guests.
^ permalink raw reply [flat|nested] 19+ messages in thread
end of thread, other threads:[~2025-02-03 16:07 UTC | newest]
Thread overview: 19+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-01-28 0:42 [PATCH 0/1] meson: Deprecate 32-bit host systems Richard Henderson
2025-01-28 0:42 ` [PATCH 1/1] meson: Deprecate 32-bit host support Richard Henderson
2025-01-28 4:00 ` [PATCH 0/1] meson: Deprecate 32-bit host systems Thomas Huth
2025-01-28 9:02 ` Alex Bennée
2025-01-28 9:16 ` Daniel P. Berrangé
2025-01-28 9:17 ` Philippe Mathieu-Daudé
2025-01-28 9:27 ` Daniel P. Berrangé
2025-01-28 10:01 ` Philippe Mathieu-Daudé
2025-01-28 10:02 ` Philippe Mathieu-Daudé
2025-01-29 6:23 ` Thomas Huth
2025-01-29 12:23 ` Peter Maydell
2025-01-29 12:47 ` Paolo Bonzini
2025-01-31 16:46 ` Richard Henderson
2025-01-31 17:08 ` Paolo Bonzini
2025-01-31 21:28 ` Daniel P. Berrangé
2025-02-03 9:10 ` Alex Bennée
2025-02-03 16:06 ` Philippe Mathieu-Daudé
2025-01-28 20:39 ` Richard Henderson
2025-02-01 15:20 ` James Cloos
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).