signal: check_signal must be called after check_need_resched.
This commit is contained in:
@ -9429,11 +9429,6 @@ long syscall(int num, ihk_mc_user_context_t *ctx)
|
||||
|
||||
save_syscall_return_value(num, l);
|
||||
|
||||
if (!list_empty(&thread->sigpending) ||
|
||||
!list_empty(&thread->sigcommon->sigpending)) {
|
||||
check_signal(l, NULL, num);
|
||||
}
|
||||
|
||||
#ifdef PROFILE_ENABLE
|
||||
{
|
||||
unsigned long ts = rdtsc();
|
||||
@ -9472,6 +9467,11 @@ long syscall(int num, ihk_mc_user_context_t *ctx)
|
||||
}
|
||||
#endif /* POSTK_DEBUG_TEMP_FIX_60 && POSTK_DEBUG_TEMP_FIX_56 */
|
||||
|
||||
if (!list_empty(&thread->sigpending) ||
|
||||
!list_empty(&thread->sigcommon->sigpending)) {
|
||||
check_signal(l, NULL, num);
|
||||
}
|
||||
|
||||
#ifdef DISABLE_SCHED_YIELD
|
||||
if (num != __NR_sched_yield)
|
||||
#endif // DISABLE_SCHED_YIELD
|
||||
|
||||
Reference in New Issue
Block a user