[Question] [HW5] tsan CHECK failed
doxylee opened this issue · 6 comments
Hi, I'm getting an error only while running tsan, and I was wondering if this was an error on my logic or some other problem.
I think I've done everything right, with hand-over-hand locking and such, and don't know where to debug.
The error is like this:
$ cargo_tsan test --test list_set -- --nocapture --exact fine_grained::stress_sequential
Compiling cs431-homework v0.1.0 (/home/ubuntu/cs431/homework)
Finished `test` profile [unoptimized + debuginfo] target(s) in 6.65s
Running tests/list_set/main.rs (target/x86_64-unknown-linux-gnu/debug/deps/list_set-09e5d7d2909774fe)
ThreadSanitizer: CHECK failed: tsan_platform_linux.cpp:282 "((personality(old_personality | ADDR_NO_RANDOMIZE))) != ((-1))" (0xffffffffffffffff, 0xffffffffffffffff) (tid=1063772)
error: test failed, to rerun pass `--test list_set`
Caused by:
process didn't exit successfully: `/home/ubuntu/cs431/homework/target/x86_64-unknown-linux-gnu/debug/deps/list_set-09e5d7d2909774fe --nocapture --exact 'fine_grained::stress_sequential'` (signal: 11, SIGSEGV: invalid memory reference)
I tried removing all unsafe { Box::from_raw(cur_ptr) };
and not freed any memory but the problem still happens. Can it still have SIGSEGV error even if there's no memory freeing?
Any pointers on this would be helpful.
I checked that our model solution also fails with the same error message when I run cargo_tsan
on the development server. However, it runs correctly on my local machine. For now, I suggest you to run it on different machine. I'll let you know when I find a general solution for this problem.
This problem is resolved now. I checked that such error does not happen in both development server and gg server. If you still have the same error, please let me know.
I happen this error, too
@leeyh0623 Fixed. It will work now. Can you try again?
thank you I sovle it. but when I do ./scripts/submit.sh this code, there are no zip command. how can I solve it?
@leeyh0623 You can try sudo apt install zip
to install zip manually. After that, ./scripts/submit.sh
will work correctly.