Lines Matching refs:ts

35 static inline int on_sig_stack(TaskState *ts, unsigned long sp)  in on_sig_stack()  argument
37 return sp - ts->sigaltstack_used.ss_sp < ts->sigaltstack_used.ss_size; in on_sig_stack()
40 static inline int sas_ss_flags(TaskState *ts, unsigned long sp) in sas_ss_flags() argument
42 return ts->sigaltstack_used.ss_size == 0 ? SS_DISABLE : in sas_ss_flags()
43 on_sig_stack(ts, sp) ? SS_ONSTACK : 0; in sas_ss_flags()
322 TaskState *ts = (TaskState *)thread_cpu->opaque; in block_signals() local
336 return qatomic_xchg(&ts->signal_pending, 1); in block_signals()
362 TaskState *ts = cpu->opaque; in dump_core_and_abort() local
371 if (core_dump_signal(target_sig) && (ts->bprm->core_dump != NULL)) { in dump_core_and_abort()
374 ((*ts->bprm->core_dump)(target_sig, env) == 0); in dump_core_and_abort()
424 TaskState *ts = cpu->opaque; in queue_signal() local
430 ts->sync_signal.info = *info; in queue_signal()
431 ts->sync_signal.pending = sig; in queue_signal()
433 qatomic_set(&ts->signal_pending, 1); in queue_signal()
479 TaskState *ts = cpu->opaque; in host_signal_handler() local
552 k = &ts->sigtab[guest_sig - 1]; in host_signal_handler()
555 ts->signal_pending = 1; in host_signal_handler()
588 TaskState *ts = (TaskState *)thread_cpu->opaque; in do_sigaltstack() local
594 oss.ss_sp = tswapl(ts->sigaltstack_used.ss_sp); in do_sigaltstack()
595 oss.ss_size = tswapl(ts->sigaltstack_used.ss_size); in do_sigaltstack()
596 oss.ss_flags = tswapl(sas_ss_flags(ts, sp)); in do_sigaltstack()
614 if (on_sig_stack(ts, sp)) { in do_sigaltstack()
635 ts->sigaltstack_used.ss_sp = ss.ss_sp; in do_sigaltstack()
636 ts->sigaltstack_used.ss_size = ss.ss_size; in do_sigaltstack()
717 TaskState *ts = (TaskState *)thread_cpu->opaque; in get_sigframe() local
723 if ((ka->sa_flags & TARGET_SA_ONSTACK) && sas_ss_flags(ts, sp) == 0) { in get_sigframe()
724 sp = ts->sigaltstack_used.ss_sp + ts->sigaltstack_used.ss_size; in get_sigframe()
792 TaskState *ts = (TaskState *)thread_cpu->opaque; in reset_signal_mask() local
798 ts->signal_mask = blocked; in reset_signal_mask()
842 TaskState *ts = (TaskState *)thread_cpu->opaque; in signal_init() local
849 sigprocmask(0, 0, &ts->signal_mask); in signal_init()
881 TaskState *ts = cpu->opaque; in handle_pending_signal() local
940 host_to_target_sigset_internal(&target_old_set, &ts->signal_mask); in handle_pending_signal()
942 blocked_set = ts->in_sigsuspend ? in handle_pending_signal()
943 &ts->sigsuspend_mask : &ts->signal_mask; in handle_pending_signal()
944 sigorset(&ts->signal_mask, blocked_set, &set); in handle_pending_signal()
945 ts->in_sigsuspend = false; in handle_pending_signal()
946 sigprocmask(SIG_SETMASK, &ts->signal_mask, NULL); in handle_pending_signal()
970 TaskState *ts = cpu->opaque; in process_pending_signals() local
972 while (qatomic_read(&ts->signal_pending)) { in process_pending_signals()
977 sig = ts->sync_signal.pending; in process_pending_signals()
985 if (sigismember(&ts->signal_mask, target_to_host_signal(sig)) || in process_pending_signals()
987 sigdelset(&ts->signal_mask, target_to_host_signal(sig)); in process_pending_signals()
990 handle_pending_signal(env, sig, &ts->sync_signal); in process_pending_signals()
993 k = ts->sigtab; in process_pending_signals()
995 blocked_set = ts->in_sigsuspend ? in process_pending_signals()
996 &ts->sigsuspend_mask : &ts->signal_mask; in process_pending_signals()
1012 qatomic_set(&ts->signal_pending, 0); in process_pending_signals()
1013 ts->in_sigsuspend = false; in process_pending_signals()
1014 set = ts->signal_mask; in process_pending_signals()
1019 ts->in_sigsuspend = false; in process_pending_signals()