The GitHub Actions job "mainline-only" on tvm-ffi.git/main has failed. Run started by GitHub user tqchen (triggered by tqchen).
Head commit for run: 0ec8dc8befe3c77742cf8c42181d6e3950aa66f0 / Yong Wu <[email protected]> [FIX] Build dlpack exchange test in a per-test tmp dir to avoid JIT lock hang (#677) Fixes https://github.com/apache/tvm-ffi/issues/641 ### root cause The test JIT-compiles a C++ snippet with torch's `cpp_extension.load_inline`, which by default builds into the shared `~/.cache/torch_extensions` cache, serialized by torch's `FileBaton`: - `try_acquire()` creates an ordinary lock **file** (`os.open` `O_CREAT|O_EXCL`). - `wait()` spins on `os.path.exists(lock)` with **no timeout** and no staleness check. - `release()` (which deletes the file) only runs on the normal path. If a build is killed mid-compile — e.g. a CI time limit sends SIGTERM — the lock file is left behind. On CI where that cache sits on a persistent shared filesystem, every subsequent run then waits on the orphaned lock **forever**. ### Fix Pass `build_directory=tmp_path` to `load_inline` so each run builds in a fresh, unique directory. The baton lock is always fresh, so a killed prior run can no longer poison later runs, and the test no longer uses (or can be poisoned by) any shared cache — independent of the filesystem. Report URL: https://github.com/apache/tvm-ffi/actions/runs/29783444163 With regards, GitHub Actions via GitBox --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
