diff options
| author | Aleksandr Nogikh <nogikh@google.com> | 2020-09-21 18:37:45 +0300 |
|---|---|---|
| committer | Dmitry Vyukov <dvyukov@google.com> | 2020-09-22 10:12:23 +0200 |
| commit | 3e8f6c27551f163a2fd2661e4b3cac126a5e7ef2 (patch) | |
| tree | 244bb7c316cb02764cb9074422ba32d3bb8f6d36 /docs/linux | |
| parent | 2450c42f1be626b601353c1e039f8fcbadfaffb1 (diff) | |
executor: make exit code during fail() depend on fault injection
fail()'s are often used during the validation of kernel reactions to
queries that were issued by pseudo syscalls implementations. As fault
injection may cause the kernel not to succeed in handling these
queries (e.g. socket writes or reads may fail), this could ultimately
lead to unwanted "lost connection to test machine" crashes.
In order to avoid this and, on the other hand, to still have the
ability to signal a disastrous situation, the exit code of this
function now depends on the current context.
All fail() invocations during system call execution with enabled fault
injection lead to termination with zero exit code. In all other cases,
the exit code is kFailStatus.
This is achieved by introduction of a special thread-specific variable
`current_thread` that allows to access information about the thread in
which the current code is executing.
Also, this commit eliminates current_cover as it is no longer needed.
Diffstat (limited to 'docs/linux')
0 files changed, 0 insertions, 0 deletions
