-
Notifications
You must be signed in to change notification settings - Fork 63
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
The examples/riscv has a stuck bug #125
Comments
Me too. my qemu version is
|
This issue is a bit magical; after adding
By adding an output log statement, it runs normally. I suspect it might be due to a lack of volatile read? I modified codes in |
I don't think volatile access should be necessary for the used ring (e.g. in |
Maybe you are right. Despite the test case of riscv in virtio-drivers can run properly, I have another test case which can not run properly yet. My test case is in s-mode, sv39, rv64. In my test case the virtio-blk-mmio(legacy) hungs, and virtio-blk-mmio(modern) reports 'not ready' when it read blocks. But the virtio net driver runs well.(both legacy and modern) I'll try to investigate what happens. |
After talking to some other people about this, I think the issue is that we should be using atomics for some of these shared memory accesses. I'll send a PR shortly for you to test. |
@fslongjin Can you test if #128 fixes your issues reliably? |
sure, I'll test it tomorrow morning~ |
Running examples/riscv will get stuck.
Like below:
The text was updated successfully, but these errors were encountered: