Skip to content

[UR][CI] Fix adapter registry tests and run the loader suite in CI - #23607

Open
KFilipek wants to merge 3 commits into
intel:syclfrom
KFilipek:ur-cmake-fixes
Open

KFilipek wants to merge 3 commits into
intel:syclfrom
KFilipek:ur-cmake-fixes

Conversation

@KFilipek

@KFilipek KFilipek commented Oct 23, 2026 •

Copy link
Copy Markdown
Contributor
  • Adapter registry tests: since the move to lit they were built from the undefined TEST_SOURCES, so the binaries had no tests and always passed. They now build from their sources (17 tests, all pass).
  • Loader CI step: CI only ran the adapter-specific and conformance suites. A new Test loader step in ur-build-hw.yml runs check-unified-runtime-loader.
  • UMF fix: the new step crashed loader_lifetime.test. With static UMF, Init takes one umfInit() reference (it runs once), but urLoaderTearDown called umfTearDown() on every successful call. This dropped UMF's own reference, so UMF was re-initialized over and over and its CTL node table overflowed after about 100 cycles. Behavior change: umfTearDown() now runs only from the last urLoaderTearDown, the one that deletes the context, and only if umfInit() succeeded. Return values are unchanged.

@KFilipek KFilipek self-assigned this Oct 23, 2026
@KFilipek
KFilipek marked this pull request as ready for review October 26, 2026 09:12
@KFilipek
KFilipek requested review from a team as code owners October 26, 2026 09:12
@KFilipek

Copy link
Copy Markdown
Contributor Author

Unrelated CI error.

KFilipek and others added 3 commits October 26, 2026 14:29
Since the move to lit these tests passed the undefined TEST_SOURCES, so
the binaries contained no tests and always passed. All 17 tests pass now.
CI only ran the adapter-specific and conformance suites, so the loader
tests, including the adapter registry tests, never ran in CI.
urLoaderTearDown released the UMF reference on every successful call, not
only when the last one deleted the context, so it also dropped UMF's own
reference. UMF was then re-initialized repeatedly, overflowing its CTL node
table after ~100 cycles and crashing loader_lifetime.test.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

@sarnex sarnex left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

devops changes lgtm, did not review python or ur code

@KFilipek
KFilipek requested a review from kswiecicki October 26, 2026 15:11

@ldorau ldorau left a comment •

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

PR description only describes commit 1. Please also mention the new loader CI step and the UMF fix, since the fix changes loader teardown behavior and was what crashed loader_lifetime.test.

@sys-ce-bb

Copy link
Copy Markdown
Contributor

@intel/llvm-gatekeepers please consider merging

@KFilipek

Copy link
Copy Markdown
Contributor Author

PR description only describes commit 1. Please also mention the new loader CI step and the UMF fix, since the fix changes loader teardown behavior and was what crashed loader_lifetime.test.

I've corrected it.

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.

4 participants