Conversation
58c0f70 to
fb42421
Compare
5e3b045 to
18aadd2
Compare
5b7a8a0 to
d82f7c8
Compare
0e136c1 to
47320db
Compare
2a7e414 to
6f78a13
Compare
ee7e88f to
38d17a2
Compare
e87f5fb to
06eed0a
Compare
|
Hi, Thanks for the job. How can I help test it? I have no idea how to solve the qemu. As I tested, QEMU always crashes on dynamic-linked program. Can we get a static program? Or maybe I can get a physical device to test it. So just tell me how to test it. |
244a408 to
4f7ef6a
Compare
5da2773 to
b2930f2
Compare
d63a11a to
9ad1393
Compare
|
@Dirreke Thanks for your advice and sorry for the late response. After properly static linking, basic functions like standard output started working, but then it crashed. Then I found that this crash could be avoided by passing Also, when I disabled the code using ldex/stex, it also worked with the default cpu (and Test code is in Ideally, I'd like to run a full test suite by |
I've been a bit busy recently, so I may not have looked into it very thoroughly. However, my initial investigation suggests the compilation error originates from the |
Thanks for the investigation! I'm not sure why, but quickcheck indeed to be related, disabling quickcheck-related tests allowed the full test suite to build. In multi-threaded tests, hangs or the following assertion failures in glibc or pthread occur (can be reproduced without this crate's atomics). Considering the discussion in rust-lang/rust#117306 that libatomic is broken and likely causing data races, this is an understandable result. As for the issue that QEMU cannot run tests using ldex/stex when non-ck860 CPU is specified (#32 (comment)), looking at the Linux kernel code, only ck860 set CPU_HAS_LDSTEX, so it seems QEMU is correct here.
Updated PR to check the |
|
As for "multiple definition of `__lll_lock_wait_private'" error, it maybe related to https://sourceware.org/bugzilla/show_bug.cgi?id=15648 that was fixed in glibc 2.34. |
This has been resolved by applying a patch to quickcheck that uses fastrand instead of rand. |
Of the CPU architectures supported by Rust, this is the last architectures not supported by this crate.
The build passed, but has not yet been tested. The qemu binary mentioned on the platform support docs does not work with even a minimal program due to the following error:UPDATE: See #32 (comment)TODO: ldex/stex is ck860* only? #32 (comment)UPDATE: See #32 (comment)