-
Notifications
You must be signed in to change notification settings - Fork 0
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
Debug and Fix shutdown
#50
Comments
After perfroming |
There’s an occasional bug in the To address the modifications in fdtable, I propose adding locks. Given the high frequency of read and write operations on the fdtable interface, I recommend using Arc for efficient synchronization. However, I'd like to open this up for discussion before proceeding with the fix. That would be really helpful if @JustinCappos @rennergade @yzhang71 have any suggestions / comments on this issue. |
I don't think this needs to directly go into fdtables. The issue here isn't locking, as I understand it, but it's what happens when a thread is aborted. The big question from yesterday is what happens when an shutdown occurs. What happens if you pthread kill a Rust thread? Should we be doing this? What happens? Is this ever likely to be safe? We need to understand these things first. |
I thought about this a bit last night and it should be simple enough to safely exit threads within trusted code (RawPOSIX) by adding an exit flag and checking it (a bit more complicated when in blocking kernel calls but we can implement the same thing we did in RustPOSIX with timeouts). There are less options for exiting while stuck in untrusted code (ie userspace loops etc). I wonder if we can harness this to handle them: bytecodealliance/wasmtime#1490 |
Previously, when testing newest fdtable interface with Lind general test suite, the
shutdown
test failed, and error seems related toclose
. Open an issue to track the progress of debug and fixes.The text was updated successfully, but these errors were encountered: