MOS Source Code
Loading...
Searching...
No Matches
signal.hpp
Go to the documentation of this file.
1// SPDX-License-Identifier: GPL-3.0-or-later
2#pragma once
3
6
7#include <mos/allocator.hpp>
10
11#define ERESTARTSYS 512
12
19
29
36long signal_send_to_thread(Thread *target, signal_t signal);
37
44long signal_send_to_process(Process *target, signal_t signal);
45
53
62void signal_exit_to_user_prepare_syscall(platform_regs_t *regs, reg_t syscall_nr, reg_t syscall_ret);
63
64typedef struct _sigreturn_data
65{
69
74void signal_on_returned(sigreturn_data_t *supplimentary_data);
75
80bool signal_has_pending(void);
81
long signal_send_to_process(Process *target, signal_t signal)
Send a signal to a process, an arbitrary thread will be chosen to receive the signal.
Definition signal.cpp:121
void signal_exit_to_user_prepare_syscall(platform_regs_t *regs, reg_t syscall_nr, reg_t syscall_ret)
Prepare to exit to userspace after a syscall.
Definition signal.cpp:256
void signal_on_returned(sigreturn_data_t *supplimentary_data)
Return from a signal handler.
Definition signal.cpp:290
bool signal_has_pending(void)
Return true if there's a pending signal.
Definition signal.cpp:296
void signal_exit_to_user_prepare(platform_regs_t *regs)
Prepare to exit to userspace.
Definition signal.cpp:240
long signal_send_to_thread(Thread *target, signal_t signal)
Send a signal to a thread.
Definition signal.cpp:87
int signal_t
A pending signal.
Definition signal.hpp:25
signal_t signal
Definition signal.hpp:27
signal_t signal
Definition signal.hpp:66
uintn reg_t
Definition types.h:47