On 28/02/2023 10.01, Daniel P. Berrangé wrote:
On Tue, Feb 28, 2023 at 08:39:49AM +0100, Thomas Huth wrote:
> On 27/02/2023 19.38, Daniel P. Berrangé wrote:
>> On Mon, Feb 27, 2023 at 12:10:48PM +0100, Thomas Huth wrote:
>>> We're struggling quite badly with our CI minutes on the shared
>>> gitlab runners, so we urgently need to think of ways to cut down
>>> our supported build and target environments. qemu-system-i386 and
>>> qemu-system-arm are not really required anymore, since nobody uses
>>> KVM on the corresponding systems for production anymore, and the
>>> -x86_64 and -arch64 variants are a proper superset of those binaries.
>>> So it's time to deprecate them and the corresponding 32-bit host
>>> environments now.
>>>
>>> This is a follow-up patch series from the previous discussion here:
>>>
>>>
https://lore.kernel.org/qemu-devel/20230130114428.1297295-1-thuth@redhat....
>>>
>>> where people still mentioned that there is still interest in certain
>>> support for 32-bit host hardware. But as far as I could see, there is
>>> no real need for 32-bit host support for system emulation on x86 and
>>> arm anymore, so it should be fine if we drop these host environments
>>> now (these are also the two architectures that contribute the most to
>>> the long test times in our CI, so we would benefit a lot by dropping
>>> those).
>>
>> Your description here is a little ambiguous about what's being
>> proposed. When you say dropping 32-bit host support do you mean
>> just for the system emulator binaries, or for QEMU entirely ?
>
> Just for system emulation. Some people said that user emulation still might
> be useful for some 32-bit environments.
>
>> And when the deprecation period is passed, are you proposing
>> to actively prevent 32-bit builds, or merely stopping CI testing
>> and leave 32-bit builds still working if people want them ?
>
> CI is the main pain point, so that's the most important thing. So whether we
> throw a warning or a hard error while configuring the build, I don't care
> too much.
If we're merely wanting to drop CI support, we can do that any time and
deprecation is not required/expected. We should only be using deprecation
where we're explicitly intending that the code will cease to work.
Well, without CI, I assume that the code will bitrot quite fast (considering
that there are continuous improvements to TCG, for example). And who's then
still volunteering to fix bugs that have crept in months ago, for a host
architecture that nobody really uses anymore?
Clearly, 32-bit x86 host is pretty much dead nowadays, especially for
programs like QEMU that need beefy host hardware. Why do we still waste our
time with this?
Thomas