-
Notifications
You must be signed in to change notification settings - Fork 562
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
i#3336: increase determinism of linux.syscall_pwait test. #3337
Conversation
Attempt to stabilize linux.syscall_pwait test that currently (sporadically-) fails on Android. Add simple shared synch variable among processes, decrease excessive sleep timeout. Fixes #3336
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Temporarily undoing the LGTM since I think it best to resolve this ARM synchronization issue.
It also exposed the fact that handle_pre_extended_syscall_sigmasks() does not check_signals_pending() causing the signals not being delivered.
Re-adding the "signal received" messages to the test since they are correctly received now under DR.
PTAL. |
…ing signals are detected.
Fix i#3336 by aborting system call if a signal is pending. Adds another subtest that sends signals that are not in 'pending'.
PTAL! |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The compiler wouldn't move a store across a system call
How do you know for sure this store won't be moved? I am pretty sure we have seen the compiler do nearly identical things in other cases. A developer's intuition on what the compiler might do is not enough, independent of any coding standards. Can you point to something in the language specification? Even if there were some guarantee in some situation, it would require a comment and probably still not be worth leaving out the synch that all other cases require.
Bugfix, restore correct parameter, ppoll system call.
…pre-syscall mask when setting up app's signal frame.
Removed handle_sigreturn non-rt path restoring pre-syscall mask.
s/Simply/Simplify/ |
run armtests |
Variable name.
Stabilize linux.syscall_pwait test that currently (sporadically-) fails on Android.
Checks for pending signals in emulation of p* versions of system calls and aborts call if necessary.
Changes linux.syscall_pwait to using pthreads and cond_vars.
Adds subtest to check signal in "pending" state as well as signals arriving during system call execution.
Fixes #3336, #3344