Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Panic when run make image ARCH=riscv64 #295

Closed
shzhxh opened this issue May 13, 2022 · 3 comments
Closed

Panic when run make image ARCH=riscv64 #295

shzhxh opened this issue May 13, 2022 · 3 comments
Labels
bug Something isn't working

Comments

@shzhxh
Copy link
Contributor

shzhxh commented May 13, 2022

the panic is as follows:

thread 'main' panicked at 'called Result::unwrap() on an Err value: Os { code: 18, kind: CrossesDevices, message: "Invalid cross-device link" }', xtask/src/download.rs:19:30

When change fs::rename to fs::copy in the line where the error was reported, the error disappeared.
Document of Rust STD library shows that std::fs::rename will not work if the new name is on a different mount point. And I tested it locally, it does report the same error when I rename file to a different mount point.

@shzhxh shzhxh added the bug Something isn't working label May 13, 2022
@YdrMaster
Copy link
Collaborator

了解了,确实原理上 rename 不可能跨 mount。不过 CI 没问题,是因为 CI 的文件系统整个都是虚拟出来的,都和 /tmp 在一起?

@YdrMaster
Copy link
Collaborator

我本地 wget 下载这些东西很难成功,所以测试不够充分……

@shzhxh
Copy link
Contributor Author

shzhxh commented May 16, 2022

是的,猜测github CI上/tmp只是一个普通目录,没有挂载为内存文件系统。

@shzhxh shzhxh closed this as completed May 16, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

2 participants