Repository navigation
fix(windows): pass _wsopen_s only the permission bits it accepts and keep the isa flags for icx-cl - #2408
Merged
Conversation
lusoris
force-pushed
the
fix/msvc-wsopen-pmode
branch
from
October 7, 2026 12:35
a966a1b to
4298a7c
Compare
…keep the isa flags for icx-cl (#2408) * fix(windows): pass _wsopen_s only the permission bits it accepts and keep the isa flags for icx-cl The first Windows run after #2393 crashed test_path_utf8 and test_output and made the vmaf CLI tests exit 127: _wsopen_s and _sopen_s abort on a permission mode with bits other than _S_IREAD and _S_IWRITE, and the callers pass POSIX modes such as 0644 (_wopen ignored the rest). The mode is masked. The -mavx2 family is withheld from cl.exe only: icx-cl needs it for the intrinsics headers' target-feature check. sycl/common.cpp calls _strdup through VMAF_STRDUP, test_cambi.c casts the last uint16 to uint8 store and replaces CAMBI_TEST_NULL_POINTER with NULL under ADR-1138.
lusoris
force-pushed
the
fix/msvc-wsopen-pmode
branch
from
October 7, 2026 13:10
4298a7c to
782acca
Compare
This was referenced Oct 7, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
BLUF: master's Windows builds crash in
test_path_utf8andtest_output(0xc0000409) and thevmafCLI tests exit 127 since #2393:_wsopen_s/_sopen_streat a permission mode with bits other than_S_IREAD/_S_IWRITEas an invalid parameter and abort, and callers pass0644. The mode is masked to those two bits (what_wopeneffectively did). Found in the Windows ARM64 log of the next PR's run (job 112729402258).Also in this PR: the
-mavx2family goes to every compiler but cl.exe (icx-cl needs it: its target-feature check of the intrinsics headers fails without, which broke the MSVC+SYCL leg),sycl/common.cppcallsVMAF_STRDUP, the last test narrowing (test_cambi.c, uint16 to uint8 store) is cast, andtest_cambi.creplacesCAMBI_TEST_NULL_POINTERwithNULLunder ADR-1138.Type
fix— bug fixChecklist
Bug-status hygiene
Netflix golden-data gate
assertAlmostEqual(...)score in the Netflix golden Python tests.Deep-dive deliverables
_wsopen_sis the non-deprecated spelling; masking keeps the old effective behaviour).AGENTS.mdinvariant note — no rebase-sensitive invariants.changelog.d/fixed/windows-wsopen-pmode.md.docs/rebase-notes.md.Reproducer
Windows:
python scripts\ci\run_meson_test.py -- -C build --suite fast;test_path_utf8andtest_outputpass.Known follow-ups
Windows MSVC+SYCL (icx-cl) leg warnings (
-Woverriding-option, unused-experimental:c11atomics,__stdcallin the pthread shim) follow after #2401.