Skip to content

Fix #10010: mv Cross-Device Symlink Fallback EEXIST - #10069

Open
minimoog wants to merge 5 commits into
uutils:mainfrom
minimoog:fix-10010
Open

Fix #10010: mv Cross-Device Symlink Fallback EEXIST#10069
minimoog wants to merge 5 commits into
uutils:mainfrom
minimoog:fix-10010

Conversation

@minimoog

@minimoog minimoog commented Jan 5, 2026

Copy link
Copy Markdown

When mv uses symlink across filesystems instead relinking (returns EEXITS), now rename_symlink_fallback tries, atomically, to recreate the link if it's across devices.

Added test_mv_cross_device_symlink_overwrite() to test this scenario.

@sylvestre

Copy link
Copy Markdown
Contributor

please update the title of the PR

@github-actions

github-actions Bot commented Jan 5, 2026

Copy link
Copy Markdown

GNU testsuite comparison:

GNU test failed: tests/shuf/shuf-reservoir. tests/shuf/shuf-reservoir is passing on 'main'. Maybe you have to rebase?
GNU test failed: tests/sort/sort-stale-thread-mem. tests/sort/sort-stale-thread-mem is passing on 'main'. Maybe you have to rebase?

@cakebaker cakebaker linked an issue Jan 5, 2026 that may be closed by this pull request
@minimoog minimoog changed the title Fix 10010 Fix #10010: mv Cross-Device Symlink Fallback EEXIST Jan 5, 2026
@minimoog

minimoog commented Jan 5, 2026

Copy link
Copy Markdown
Author

I need to figure out how to test mv across device symlinks for WSL2, FreeBSD, OpenBSD and Android, since test is using /dev/shm as temp folder which works on Linux.

@github-actions

github-actions Bot commented Jan 5, 2026

Copy link
Copy Markdown

GNU testsuite comparison:

GNU test failed: tests/sort/sort-stale-thread-mem. tests/sort/sort-stale-thread-mem is passing on 'main'. Maybe you have to rebase?
Skip an intermittent issue tests/timeout/timeout (fails in this run but passes in the 'main' branch)

@github-actions

github-actions Bot commented Jan 6, 2026

Copy link
Copy Markdown

GNU testsuite comparison:

Congrats! The gnu test tests/shuf/shuf-reservoir is no longer failing!
Congrats! The gnu test tests/sort/sort-stale-thread-mem is no longer failing!

@github-actions

github-actions Bot commented Jan 8, 2026

Copy link
Copy Markdown

GNU testsuite comparison:

Skip an intermittent issue tests/timeout/timeout (fails in this run but passes in the 'main' branch)

@github-actions

github-actions Bot commented Jan 8, 2026

Copy link
Copy Markdown

GNU testsuite comparison:

Skipping an intermittent issue tests/tty/tty-eof (passes in this run but fails in the 'main' branch)

@minimoog
minimoog marked this pull request as ready for review January 9, 2026 10:58
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.

mv Cross-Device Symlink Fallback EEXIST

2 participants