Skip to content

test: diagnose stdout capture failures on Windows - #552

Open
rwmcguir wants to merge 1 commit into
oneapi-src:masterfrom
rwmcguir:debug/windows-stdout-capture
Open

rwmcguir wants to merge 1 commit into
oneapi-src:masterfrom
rwmcguir:debug/windows-stdout-capture

Conversation

@rwmcguir

Copy link
Copy Markdown
Contributor

Summary

Both tests_multi_driver_stdout and tests_sigle_driver_stdout terminate with Windows status 0xc0000409 in a Windows container using MSVC 19.43, while the other 257 CTest entries pass. The same tests pass on GitHub-hosted Windows with MSVC 19.51. This does not yet establish a compiler-related cause.

Both entries invoke the same stdout-capture helper, which currently ignores temporary-filename, file-open, and descriptor-operation errors.

Changes

  • Log TEMP/TMP, filename buffer capacity, temporary filename generation, file opening, and descriptor redirection/restoration to stderr.
  • Check setup and restoration operations and report failures through GoogleTest.
  • Stop the test if capture setup fails, instead of using invalid descriptors.
  • Keep the existing 50-byte filename buffer unchanged so this diagnostic run can establish whether it is responsible.

Validation

  • Compiled the exact updated helper with C++14, warnings-as-errors, AddressSanitizer, and UndefinedBehaviorSanitizer on Linux.
  • Exercised capture/restoration and invalid descriptor handling.
  • Exercised the Windows branch with mocked CRT calls, including filename-generation and file-open failures.
  • Native Windows execution remains to be verified; the consumer CI can check out this PR head to reproduce in the failing environment.

This is a diagnostic change; no root cause is asserted and no tests are excluded.

Log temporary path settings and CRT capture operations to stderr, check capture setup and restoration errors, and stop before using invalid file descriptors. Preserve the existing filename buffer for diagnosis.

Signed-off-by: Russell McGuire <russell.w.mcguire@intel.com>
@github-actions

Copy link
Copy Markdown

Level Zero loader ABI check

last-release (v1.35.0): ✅ no ABI problems. Report

Creating compatibility report ...
Binary compatibility: 100%
Source compatibility: 100%
Total binary compatibility problems: 0, warnings: 0
Total source compatibility problems: 0, warnings: 0

master (master): ✅ no ABI problems. Report

Creating compatibility report ...
Binary compatibility: 100%
Source compatibility: 100%
Total binary compatibility problems: 0, warnings: 0
Total source compatibility problems: 0, warnings: 0

Workflow run

If an ABI change is intended, a reviewer with write access can accept it: leave an approval review on the PR head commit with the keyword abi-failure-approved in the review body. That re-runs the check.

This branch has not been deployed

No deployments
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.

1 participant