Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

v3.1.10 commits and release notes #1492

Merged
merged 18 commits into from
Jul 31, 2023

Conversation

cary-ilm
Copy link
Member

This still needs a fix for the DWAA/B aarch64 test failure described in #1460 but should otherwise be ready to go.

Patch release that addresses miscellaneous build issues, test failures, and performance regressions, as well as:

OSS-fuzz 59457 Heap-buffer-overflow in LossyDctDecoder_execute

#1490 Readdress #1456: disallow NaNs in testOptimizedInterleavePatterns
#1488 Revert pre-computed values
#1484 Fix handling for corrupt number of DC components
#1482 Add OPENEXR_MISSING_ARM_VLD1 workaround to internal_dwa_simd.h
#1480 Fix Huffman performance regression on Linux/clang
#1472 Fix range check in dwa compressor
#1470 Fix build with i386 and musl libc
#1469 Fix the code contains unhandled character
#1467 Fix cpu detection of sse2 on non-64 x86
#1466 Fix the code contains unhandled character
#1463 Fix gcc-11 warnings: signed/unsigned integer comparison, unused variables
#1462 Fix macOS and Windows build failures when threading is disabled
#1447 Fix build error on win_arm64

cary-ilm and others added 18 commits July 24, 2023 17:25
…emySoftwareFoundation#1462)

* Fix macOS and Windows build failures when threading is disabled

Addresses AcademySoftwareFoundation#1455

The logic around which implementation of the IlmThread::Semaphore
class to use is now consolidated into the block of code that deciphers
the platform and specifies the #includes, rather than spread across
multiple files.

Signed-off-by: Cary Phillips <[email protected]>

* Add macOS/Windows builds with threading disabled

Signed-off-by: Cary Phillips <[email protected]>

* Fix typo with ILMTHREAD_SEMAPHORE_OTHER, and add missing macOS includes

Signed-off-by: Cary Phillips <[email protected]>

* Add threads-enabled='ON' so it shows up in the job name

Signed-off-by: Cary Phillips <[email protected]>

---------

Signed-off-by: Cary Phillips <[email protected]>
* Fix cpu detection of sse2 on non-64 x86

Previous code accidentally elided the i386 (i.e. non-64 bit versions of
x86 compiles). This refactors and simplifies the ifdef snarl to clarify
and fix that.

Fixes AcademySoftwareFoundation#1459

Signed-off-by: Kimball Thurston <[email protected]>

* Fix mismatch with windows and enable avx support check there

Signed-off-by: Kimball Thurston <[email protected]>

* Disable avx detection under msvc for now

We require gcc / clang style inline asm for avx support, detecting it
properly causes problems for the dwa support which uses that. Disable
again.

Signed-off-by: Kimball Thurston <[email protected]>

---------

Signed-off-by: Kimball Thurston <[email protected]>
…1466)

It looks like there are some non-ASCII characters present in the code. Specifically, the character "–" in the line:

Signed-off-by: zengwei2000 <[email protected]>
…1469)

It looks like there are some non-ASCII characters present in the code. Specifically, the character "–" in the line:

Signed-off-by: zengwei2000 <[email protected]>
The current code asumes glibc == linux. This patch extends support to all non-glibc Linux systems.

Signed-off-by: Cristian Othón Martínez Vera <[email protected]>
* Fix build error on win_arm64

Signed-off-by: Christoph Gohlke <[email protected]>

* Simplify fix for build error on win_arm64

Signed-off-by: Christoph Gohlke <[email protected]>

---------

Signed-off-by: Christoph Gohlke <[email protected]>
…bles (AcademySoftwareFoundation#1463)

* Fix gcc-11 warnings: signed/unsigned integer comparision, unused variables

Signed-off-by: Cary Phillips <[email protected]>

* declare loop variable i as unsigned int

Signed-off-by: Cary Phillips <[email protected]>

* uncomment-out failable_free

Signed-off-by: Cary Phillips <[email protected]>

* add commented-out assignment of failable_free as TODO

Signed-off-by: Cary Phillips <[email protected]>

---------

Signed-off-by: Cary Phillips <[email protected]>
…ndation#1480)

PR AcademySoftwareFoundation#1323 introduces a nested #ifdef check that results in a performance
regression on Linux systems that use the clang compiler. This is because
the check for __clang__ succeeds, but the nested check for __APPLE__
fails. As a result, the elif case is not taken on Linux.

Fixes issue AcademySoftwareFoundation#1479

Signed-off-by: Peter Urbanec <[email protected]>
…zedInterleavePatterns ... (AcademySoftwareFoundation#1490)

* Readdress AcademySoftwareFoundation#1456: disallow NaNs in testOptimizedInterleavePatterns unless both writing and reading as half

Signed-off-by: Peter Hillman <[email protected]>

* fix typos

Signed-off-by: Peter Hillman <[email protected]>

---------

Signed-off-by: Peter Hillman <[email protected]>
It would appear the precomputed values cause differences from the
specific computed values on other architectures.

Signed-off-by: Kimball Thurston <[email protected]>
…dation#1484)

When the number of DC components has been incorrectly stored in the dwa
subheader, this causes a cascade of errors, resulting in out of bounds
access. Instead, track how many we've read and detect when we're out as
soon as possible

Fixes OSS-Fuzz #59457

Signed-off-by: Kimball Thurston <[email protected]>
Signed-off-by: Cary Phillips <[email protected]>
Signed-off-by: Cary Phillips <[email protected]>
Signed-off-by: Cary Phillips <[email protected]>
Signed-off-by: Cary Phillips <[email protected]>
@cary-ilm
Copy link
Member Author

I'm going to merge this and stage the v3.1.10 release as is.

@cary-ilm cary-ilm merged commit 913f07d into AcademySoftwareFoundation:RB-3.1 Jul 31, 2023
28 of 29 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

8 participants