Debian Patches

Status for libjpeg-turbo/1:2.1.5-3

Patch Description Author Forwarded Bugs Origin Last update
1001-use-utc-timestamp.patch Use UTC timezone for build timestamp
While CMake respects SOURCE_DATE_EPOCH, it still can produce a
different date depending on the timezone of the running system.

Specify timezone in UTC to enable a reproducible build.
Vagrant Cascadian <vagrant@reproducible-builds.org> no
2001_dont-set-RPATH.patch Don't set rpath in jpeg progs. Mike Gabriel <mike.gabriel@das-netzwerkteam.de> invalid
1001_fix-groff-warning-macro-f-not-defined.patch Fix lintian issue "W: libjpeg-turbo-progs: groff-message usr/share/man/man1/jpegtran.1.gz (line 1) 170: warning: macro 'f'' not defined" Mike Gabriel <mike.gabriel@das-netzwerkteam.de> no
0001_initialize-simd-support-before-every-use.patch [PATCH] SIMD/x86: Initialize simd_support before every use
As long as a libjpeg instance is only used by one thread at a time, a
program is technically within its rights to call jpeg_start_*compress()
in one thread and jpeg_(read|write)_*(), with the same libjpeg instance,
in a second thread. However, because the various jsimd_can*() functions
are called within the body of jpeg_start_*compress() and simd_support is
now thread-local (due to f579cc11b33e5bfeb9931e37cc74b4a33c95d2e6), that
led to a situation in which simd_support was initialized in the first
thread but not the second. The uninitialized value of simd_support is
0xFFFFFFFF, which the second thread interpreted to mean that it could
use any instruction set, and when it attempted to use AVX2 instructions
on a CPU that didn't support them, an illegal instruction error
occurred.

This issue was known to affect libvips.

This commit modifies the i386 and x86-64 SIMD dispatchers so that the
various jsimd_*() functions always call init_simd(), if simd_support is
uninitialized, prior to dispatching based on the value of simd_support.
Note that the other SIMD dispatchers don't need this, because only the
x86 SIMD extensions currently support multiple instruction sets.

This patch has been verified to be performance-neutral to within
+/- 0.4% with 32-bit and 64-bit code running on a 2.8 GHz Intel Xeon
W3530 and a 3.6 GHz Intel Xeon W2123.

Fixes #649
DRC <information@libjpeg-turbo.org> no 2023-02-02

All known versions for source package 'libjpeg-turbo'

Links