https://bugs.kde.org/show_bug.cgi?id=484622

            Bug ID: 484622
           Summary: Forcing GDS mitigation for older CPUs on Linux makes
                    krita crash
    Classification: Applications
           Product: krita
           Version: 5.2.2
          Platform: Arch Linux
                OS: Linux
            Status: REPORTED
          Severity: crash
          Priority: NOR
         Component: General
          Assignee: krita-bugs-n...@kde.org
          Reporter: bugrepor...@freenet.de
  Target Milestone: ---

Created attachment 167863
  --> https://bugs.kde.org/attachment.cgi?id=167863&action=edit
Krita backtrace and disassembly

When the Gather Data Sampling mitigation is forced on Linux for older CPUs
(i.e. Intel Core 6th Gen Skylake) that are affected by the GDS vulnerability,
AVX/AVX2 instructions are disabled, because there is no microcode update
available.

On affected systems 'lscpu' reports:
…
Vulnerabilities:          
Gather data sampling:   Mitigation; AVX disabled, no microcode
…

This causes Krita to crash, because something is wrong with the CPU feature
detection (xsimd function call) in Krita and it's still trying to use VEX
instructions. Similar problems were already reported and fixed for pcre2 (regex
library) and Babl/Gimp. See the attached gdb backtrace/disassembly and the
following pcre2 issue (reported by me) for further information.

https://github.com/PCRE2Project/pcre2/issues/399

Babl/Gimp issue:

https://gitlab.gnome.org/GNOME/babl/-/issues/96#note_2056377

STEPS TO REPRODUCE
1. Force GDS mitigation by adding 'gather_data_sampling=force' as kernel
parameter on an affected system (AVX/AVX2 disabled).
2. Start krita and try to open a PNG image.

OBSERVED RESULT

Krita crashes with 'SIGILL, Illegal instruction'.

EXPECTED RESULT

Krita should not crash and open the file.

SOFTWARE/OS VERSIONS
Arch Linux - Linux kernel 6.8.1
krita 5.2.2-8 from the repo (compiled with -march=x86-64)

-- 
You are receiving this mail because:
You are watching all bug changes.

Reply via email to