qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: xen bits broke x32 build


From: Philippe Mathieu-Daudé
Subject: Re: xen bits broke x32 build
Date: Wed, 12 Apr 2023 12:19:46 +0200
User-agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.9.1

On 11/4/23 19:30, Michael Tokarev wrote:
11.04.2023 15:09, Peter Maydell wrote:
..
Frankly I would prefer to just say "we don't support x32".
It's a weird non-standard configuration that as far as I'm
aware is very little used. Its stats in the debian
popularity-contest graphs peaked at 18 users in 2017, and
have mostly been fluctuating between 1 and 3 for the last
couple of years:
https://popcon.debian.org/stat/sub-x32.png

x32 was a nice idea but it lacked some final steps for it
to fly.

I used to use a FreeRTOS POSIX/ucontext port compiled in x32.
This was useful to mimic FreeRTOS baremetal ARM32 memory footprint.

I see having a x32 QEMU binary as a masochist experiment =)

In my opinion anyway.  Its compactness and speed
are fantastic, - qemu build is about 10..15% faster with
x32 gcc than it is with x86_64 gcc.

At the time debian picked it up, it was not very usable
b/c too many things didn't work and needed care.  Today,
much more software actually works on x32. It is more,
today with debian multiarch setup, it is possible to install
some *parts* of the system to be x32 while the rest being
x86_64, either for parts which benefits from x32 the most,
or the other way around, main x32 and some parts x86_64.
But it *still* lacks some infrastructure in debian, so it
is possible to do with stable or testing distribution, -
right now it is possible with unstable only.  Maybe we
can change that for bookworm+.

The thing is that now, it is much more complete than it
was in 2017, and it'd be really sad if it goes away.

x32 reveals some interesting problems in the code such
as type misuse, it already helped to find and fix some
bugs in some software, - for example in samba, where
a pointer was misused to store a time_t (which would
break with past-2038 time_t).

Why wasn't this caught by other 32-bit target?

qemu never said it supports x32, and no one demanded
such support from it. It's interesting to have it working
there still, I *think*, as long as it does not require
extra efforts.

I'm fine to maintain the change required to keep it at
least buildable on x32 in debian - again as long as it
does not require huge efforts.

We're currently planning to deprecate-and-drop 32-bit x86
hosts, which are much more widely used than this. I see
no reason why we should care about this oddball failed
experiment of an ABI...

Thanks,

/mjt





reply via email to

[Prev in Thread] Current Thread [Next in Thread]