All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Daniel P. Berrangé" <berrange@redhat.com>
To: Paolo Bonzini <pbonzini@redhat.com>
Cc: Alexander Monakov <amonakov@ispras.ru>,
	qemu-devel@nongnu.org,
	Richard Henderson <richard.henderson@linaro.org>
Subject: Re: [PATCH 0/5] Reinstate ability to use Qemu on pre-SSE4.1 x86 hosts
Date: Wed, 12 Jun 2024 12:38:14 +0100	[thread overview]
Message-ID: <ZmmIpr5f0sQy-VGl@redhat.com> (raw)
In-Reply-To: <CABgObfbGa=xpp9-cLwzqCpPFsf27qM+K-svfXEvc6ffjb=_VAg@mail.gmail.com>

On Wed, Jun 12, 2024 at 01:12:43PM +0200, Paolo Bonzini wrote:
> On Wed, Jun 12, 2024 at 1:04 PM Daniel P. Berrangé <berrange@redhat.com> wrote:
> >
> > On Wed, Jun 12, 2024 at 01:55:20PM +0300, Alexander Monakov wrote:
> > > Hello,
> > >
> > > I'm sending straightforward reverts to recent patches that bumped minimum
> > > required x86 instruction set to SSE4.2. The older chips did not stop working,
> > > and people still test and use new software on older hardware:
> > > https://sourceware.org/bugzilla/show_bug.cgi?id=31867
> > >
> > > Considering the very minor gains from the baseline raise, I'm honestly not
> > > sure why it happened. It seems better to let distributions handle that.
> >
> > Indeed distros are opinionated about the x86_64 baseline they want
> > to target.
> >
> > While RHEL-9 switched to a x86_64-v2 baseline, Fedora has repeatedly
> > rejected the idea of moving to an x86_64-v2 baseline, wanting to retain
> > full backwards compat. So this assumption in QEMU is preventing the
> > distros from satisfying their chosen build target goals.
> 
> I didn't do this because of RHEL9, I did it because it's silly that
> QEMU cannot use POPCNT and has to waste 2% of the L1 d-cache to
> compute the x86 parity flag (and POPCNT was introduced at the same
> time as SSE4.2).
> 
> Intel x86_64-v2 processors have been around for about 15 years, AMD
> for a little less (2011). I'd rather hear from users about the
> usecases for running QEMU on such old processors before reverting, as
> this does not get in the way of booting/installing distros on old
> machines. Unless QEMU is run from within the installation media, which
> it isn't, requiring a particular processor family does not prevent
> Fedora from being installable on pre-v2 processors.

This isn't anything to do with the distro installer. The use case is that
the distro wants all its software to be able to run on the x86_64 baseline
it has chosen to build with.

If we want to use POPCNT in the TCG code, can we not do a runtime check
and selectively build pieces of code with  __attribute__((target("popcnt"))),
as we've done historically for the bufferiszero.c code, rather than
changing the entire QEMU baseline ?


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 :|



  parent reply	other threads:[~2024-06-12 11:39 UTC|newest]

Thread overview: 30+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-06-12 10:55 [PATCH 0/5] Reinstate ability to use Qemu on pre-SSE4.1 x86 hosts Alexander Monakov
2024-06-12 10:55 ` [PATCH 1/5] Revert "host/i386: assume presence of POPCNT" Alexander Monakov
2024-06-12 10:55 ` [PATCH 2/5] Revert "host/i386: assume presence of SSSE3" Alexander Monakov
2024-06-12 10:55 ` [PATCH 3/5] Revert "host/i386: assume presence of SSE2" Alexander Monakov
2024-06-12 10:55 ` [PATCH 4/5] Revert "host/i386: assume presence of CMOV" Alexander Monakov
2024-06-12 10:55 ` [PATCH 5/5] Revert "meson: assume x86-64-v2 baseline ISA" Alexander Monakov
2024-06-12 11:04 ` [PATCH 0/5] Reinstate ability to use Qemu on pre-SSE4.1 x86 hosts Daniel P. Berrangé
2024-06-12 11:12   ` Paolo Bonzini
2024-06-12 11:19     ` Alexander Monakov
2024-06-12 11:29       ` Paolo Bonzini
2024-06-12 11:46         ` Alexander Monakov
2024-06-12 11:58           ` Paolo Bonzini
2024-06-12 12:10             ` Alexander Monakov
2024-06-12 12:13               ` Paolo Bonzini
2024-06-12 13:34                 ` Alexander Monakov
2024-06-12 13:39                   ` Paolo Bonzini
2024-06-12 14:27                     ` Alexander Monakov
2024-06-12 11:38     ` Daniel P. Berrangé [this message]
2024-06-12 11:51       ` Paolo Bonzini
2024-06-12 12:21         ` Daniel P. Berrangé
2024-06-12 15:09           ` Daniel P. Berrangé
2024-06-12 15:29             ` Paolo Bonzini
2024-06-12 15:40             ` Alexander Monakov
2024-06-12 16:24               ` Daniel P. Berrangé
2024-06-12 17:06             ` Daniel P. Berrangé
2024-06-12 17:00         ` Daniel P. Berrangé
2024-06-12 17:08           ` Paolo Bonzini
2024-06-23 21:27     ` Alexander Monakov
2024-06-23 22:14       ` Richard Henderson
2024-06-12 11:14   ` Alexander Monakov

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=ZmmIpr5f0sQy-VGl@redhat.com \
    --to=berrange@redhat.com \
    --cc=amonakov@ispras.ru \
    --cc=pbonzini@redhat.com \
    --cc=qemu-devel@nongnu.org \
    --cc=richard.henderson@linaro.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.