Bug 169747 - «CPU ISA level is lower than required»
Summary: «CPU ISA level is lower than required»
Status: RESOLVED WONTFIX
Alias: None
Product: LibreOffice
Classification: Unclassified
Component: LibreOffice (show other bugs)
Version:
(earliest affected)
26.2.0.0 alpha0+ master
Hardware: x86-64 (AMD64) Linux (All)
: medium normal
Assignee: Christian Lohmaier
URL: https://developers.redhat.com/blog/20...
Whiteboard:
Keywords:
: 169901 (view as bug list)
Depends on:
Blocks:
 
Reported: 2025-11-29 16:45 UTC by Camaleón
Modified: 2025-12-11 16:01 UTC (History)
4 users (show)

See Also:
Crash report or crash signature:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Camaleón 2025-11-29 16:45:07 UTC
Description:
- After installing the last devel nightly build version (LibreOfficeDev_26.2.0.0.alpha1_Linux_x86-64_deb.tar.gz) running every LO application does not open the application. 

It does nothing.

- When running it from command line (eg., «./swriter») I get:

oosplash: CPU ISA level is lower than required

And quits.

- This system's processor is an Intel Atom N455 @1.66 MHz.

Steps to Reproduce:
1. Download the latest nightly build from https://dev-builds.libreoffice.org/daily/master/current.html
2. Open every LibreOffice from menu

Actual Results:
Nothing happens, the application does not lunch.

Expected Results:
The application is open as usual.


Reproducible: Always


User Profile Reset: Yes

Additional Info:
As I cannot open any LO application, I cannot provide this information.
Comment 1 Christian Lohmaier 2025-12-05 14:30:03 UTC
$ readelf --notes /opt/libreofficedev26.2/program/soffice.bin  

Displaying notes found in: .note.gnu.property
  Owner                Data size 	Description
  GNU                  0x00000010	NT_GNU_PROPERTY_TYPE_0
      Properties: x86 ISA needed: x86-64-baseline, x86-64-v2
[…]

confirming - that is unintentional.
Comment 2 Christian Lohmaier 2025-12-05 15:21:30 UTC
I might have jumped the gun in confirming/misinterpreting the readelf output..

gcc -march=x86-64 hello_world.c
and
gcc -march=x86-64-v4 hello_world.c

both result in an identical binary with
  Properties: x86 ISA needed: x86-64-baseline, x86-64-v2


So is there just the message about lower than required but not stating what version is required and what version is supported?
Comment 3 Christian Lohmaier 2025-12-05 15:36:27 UTC
oh, shoot, I think that's a wontfix/cannot fix.

our new baseline is almalinux9 which in turn is based on/following RedHat 9 and that raised the baseline to the v2 level

https://developers.redhat.com/blog/2021/01/05/building-red-hat-enterprise-linux-9-for-the-x86-64-v2-microarchitecture-level

So everything the build/links against is v2 and I'm not sure you can compile something with lower feature set in this case.

So while the builds provided by TDF won't support it anymore, it is still possible to compile on almalinux8 or other older distributions (or newer ones at that) - the baseline bump was primarily to support newer GUI toolkits (GTK4, QT6) and in turn better accessibility.

I guess a nightly bot on an old baseline builder could still be provided, but I'd rather not offer two variants for the release builds.
Comment 4 Camaleón 2025-12-05 16:28:53 UTC
(In reply to Christian Lohmaier from comment #3)
> oh, shoot, I think that's a wontfix/cannot fix.

(...)

I see... that's bad news to me.

:-(

So:

- How can be determined what CPU ISA level do people have?

- If some processors are (from now) dropped from installing LO devel/nightly versions (because of RedHat's compiling requirements), shouldn't that be listed elsewhere in LO documentation/wiki/development-nightly build notes, or so?
Comment 5 Buovjaga 2025-12-05 20:19:29 UTC
(In reply to Camaleón from comment #4)
> So:
> 
> - How can be determined what CPU ISA level do people have?

I found a nice way in https://unix.stackexchange.com/a/646289/242927
When you have glibc 2.33 or later, you can just say

/lib/ld-linux-x86-64.so.2 --help

For my Intel i7-6700K, the last lines are

Subdirectories of glibc-hwcaps directories, in priority order:
  x86-64-v4
  x86-64-v3 (supported, searched)
  x86-64-v2 (supported, searched)

You can also find the same stuff out by studying Wikipedia and doing sometimes tedious cross-referencing:
https://en.wikipedia.org/wiki/List_of_Intel_Atom_processors#%22Pineview%22_(45_nm)_2
https://en.wikipedia.org/wiki/X86-64#Microarchitecture_levels
https://en.wikipedia.org/wiki/Penryn_(microarchitecture)#Roadmap

> - If some processors are (from now) dropped from installing LO devel/nightly
> versions (because of RedHat's compiling requirements), shouldn't that be
> listed elsewhere in LO documentation/wiki/development-nightly build notes,
> or so?

Yes, we should mention it in 26.2 release notes.
Comment 6 Buovjaga 2025-12-06 06:30:48 UTC
I added an entry to the release notes: https://wiki.documentfoundation.org/ReleaseNotes/26.2#Linux

Of very important note for the next baseline bump: RHEL 10 made x86-64-v3 the requirement
https://access.redhat.com/solutions/7066628
"Red Hat will upgrade the instruction set architecture (ISA) baseline to the x86-64-v3 microarchitecture level in RHEL 10 and x86-64-v1 and x86-64-v2 x86-64 microarchitecture level of CPUs will be marked deprecated in RHEL 8 and RHEL 9 and unsupported in RHEL 10."

However, AlmaLinux made the decision to offer optional x86-64-v2 compatibility:
https://almalinux.org/blog/2025-05-27-welcoming-almalinux-10/
"Extended x86-64-v2 life

Within the x86-64 architecture, there are versions that represent specific CPU feature sets. With RHEL 10, Red Hat will only support x86-64-v3 and higher, which leaves numerous completely functional CPUs without support in the Enterprise Linux ecosystem.

AlmaLinux OS 10 has followed Red Hat’s decision to ship x86-64-v3 optimized binaries by default, but we will also provide an additional x86-64-v2 architecture, allowing users on that older hardware to continue to receive security updates for another 10 years.

Extending the life of EPEL for x86-64-v2

By default, EPEL follows Red Hat’s builds, which means that all 3rd party packages for RHEL10 will be built for x86-64-v3. As we announced last week on our blog, we are happy to share that we are building EPEL packages to support users in their adoption of our x86-64-v2 release of AlmaLinux OS 10."

Quick tl;dr of what v3 means from the Wikipedia x86-64 article:
"Features match the 2013 Intel Haswell architecture, excluding Intel-specific instructions."

Again notable is that the opinion within RHEL in 2024 was "We do not think that x86-64-v4 is useful for a general-purpose operating system today":
https://developers.redhat.com/articles/2024/01/02/exploring-x86-64-v3-red-hat-enterprise-linux-10

They might still decide to bump it for RHEL 11, who knows...
Comment 7 Camaleón 2025-12-06 10:04:08 UTC
(In reply to Buovjaga from comment #5)
> (In reply to Camaleón from comment #4)
> > So:
> > 
> > - How can be determined what CPU ISA level do people have?
> 
> I found a nice way in https://unix.stackexchange.com/a/646289/242927
> When you have glibc 2.33 or later, you can just say
> 
> /lib/ld-linux-x86-64.so.2 --help
> 
> For my Intel i7-6700K, the last lines are
> 
> Subdirectories of glibc-hwcaps directories, in priority order:
>   x86-64-v4
>   x86-64-v3 (supported, searched)
>   x86-64-v2 (supported, searched)

My output (glibc 2.41):

root@netbook:~# /usr/lib64/ld-linux-x86-64.so.2 --help | tail -4
Subdirectories of glibc-hwcaps directories, in priority order:
  x86-64-v4
  x86-64-v3
  x86-64-v2

:-(

root@netbook:~# lscpu| grep -i model
Nombre del modelo:                        Intel(R) Atom(TM) CPU N455   @ 1.66GHz
Modelo:                                   28

> You can also find the same stuff out by studying Wikipedia and doing
> sometimes tedious cross-referencing:
> https://en.wikipedia.org/wiki/
> List_of_Intel_Atom_processors#%22Pineview%22_(45_nm)_2
> https://en.wikipedia.org/wiki/X86-64#Microarchitecture_levels
> https://en.wikipedia.org/wiki/Penryn_(microarchitecture)#Roadmap

I wonder how micro capabilities regarding ISA level can be discovered on systems with lower glibc versions (eg. glibc 2.31):

sm01@stt008:~$ /usr/lib64/ld-linux-x86-64.so.2 --help
--help: error while loading shared libraries: --help: cannot open shared object file

sm01@stt008:~$ lscpu| grep -i model
Modelo:                                  23
Nombre del modelo:                       Intel(R) Core(TM)2 Quad CPU    Q9550  @ 2.83GHz

> > - If some processors are (from now) dropped from installing LO devel/nightly
> > versions (because of RedHat's compiling requirements), shouldn't that be
> > listed elsewhere in LO documentation/wiki/development-nightly build notes,
> > or so?
> 
> Yes, we should mention it in 26.2 release notes.

Nice! Thanks.
Comment 8 Camaleón 2025-12-06 15:42:05 UTC
(In reply to Camaleón from comment #7)
> (In reply to Buovjaga from comment #5)

> > /lib/ld-linux-x86-64.so.2 --help
> > 
> > For my Intel i7-6700K, the last lines are
> > 
> > Subdirectories of glibc-hwcaps directories, in priority order:
> >   x86-64-v4
> >   x86-64-v3 (supported, searched)
> >   x86-64-v2 (supported, searched)
> 
> My output (glibc 2.41):
> 
> root@netbook:~# /usr/lib64/ld-linux-x86-64.so.2 --help | tail -4
> Subdirectories of glibc-hwcaps directories, in priority order:
>   x86-64-v4
>   x86-64-v3
>   x86-64-v2
> 
> :-(
> 
> root@netbook:~# lscpu| grep -i model
> Nombre del modelo:                        Intel(R) Atom(TM) CPU N455   @
> 1.66GHz
> Modelo:                                   28

Just adding a list of CPUs with no support for ISA LEVEL 2:

- Intel Pentium D 930@3.00 GHz. (desktop, secondary usage, 2006)
- Intel 2 Core Quad Q9550@2.83 GHz. (workstation, main computer, 2008)
- Intel Pentium Dual-Core T4500@2.30 GHz. (notebook, secondary usage, 2010)
- Intel Atom N455 @1.66 MHz. (notebook, for testing, 2010)

Well, that sadly means 1) all of my usual computers (main, for testing and  secondary usage) are unable to run ISA LEVEL 2 compiled programs :-C, and 2) all my computers are quite old :-C
Comment 9 Buovjaga 2025-12-09 08:35:16 UTC
*** Bug 169901 has been marked as a duplicate of this bug. ***
Comment 10 peter.geerds 2025-12-11 16:01:59 UTC
(In reply to Camaleón from comment #8)

> > > For my Intel i7-6700K, the last lines are
> > > 
> > > Subdirectories of glibc-hwcaps directories, in priority order:
> > >   x86-64-v4
> > >   x86-64-v3 (supported, searched)
> > >   x86-64-v2 (supported, searched)
> > 
> > My output (glibc 2.41):
> > 
> > root@netbook:~# /usr/lib64/ld-linux-x86-64.so.2 --help | tail -4
> > Subdirectories of glibc-hwcaps directories, in priority order:
> >   x86-64-v4
> >   x86-64-v3
> >   x86-64-v2
> > 

> Well, that sadly means 1) all of my usual computers (main, for testing and 
> secondary usage) are unable to run ISA LEVEL 2 compiled programs :-C, and 2)
> all my computers are quite old :-C

An here:
 /lib64/ld-linux-x86-64.so.2 --help
Subdirectories of glibc-hwcaps directories, in priority order:
  x86-64-v4
  x86-64-v3
  x86-64-v2

But:
AMD Athlon(tm) II X4 635 Processor
flags: sse sse2 sse4a

sse3 or sse4 is required, sse4a is not compatible and is something unique to AMD. So Dev_26 doesn't start.