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
4
#include "
mos/platform/platform.hpp
"
5
#include "
mos/tasks/task_types.hpp
"
6
7
#include <
mos/allocator.hpp
>
8
#include <
mos/lib/structures/list.hpp
>
9
#include <
mos/tasks/signal_types.h
>
10
11
#define ERESTARTSYS 512
12
19
24
struct
sigpending_t
:
mos::NamedType
<"SigPending">
25
{
26
as_linked_list
;
27
signal_t
signal
;
28
};
29
36
long
signal_send_to_thread
(
Thread
*target,
signal_t
signal);
37
44
long
signal_send_to_process
(
Process
*target,
signal_t
signal);
45
53
ptr<platform_regs_t>
signal_exit_to_user_prepare
(
platform_regs_t
*regs);
54
64
ptr<platform_regs_t>
signal_exit_to_user_prepare
(
platform_regs_t
*regs,
reg_t
syscall_nr,
reg_t
syscall_ret);
65
66
typedef
struct
_sigreturn_data
67
{
68
signal_t
signal
;
69
bool
was_masked
;
70
}
sigreturn_data_t
;
71
76
void
signal_on_returned
(
sigreturn_data_t
*supplimentary_data);
77
82
bool
signal_has_pending
(
void
);
83
allocator.hpp
signal_send_to_process
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:122
signal_on_returned
void signal_on_returned(sigreturn_data_t *supplimentary_data)
Return from a signal handler.
Definition
signal.cpp:299
signal_exit_to_user_prepare
ptr< platform_regs_t > signal_exit_to_user_prepare(platform_regs_t *regs)
Prepare to exit to userspace.
Definition
signal.cpp:240
signal_has_pending
bool signal_has_pending(void)
Return true if there's a pending signal.
Definition
signal.cpp:307
signal_send_to_thread
long signal_send_to_thread(Thread *target, signal_t signal)
Send a signal to a thread.
Definition
signal.cpp:88
platform.hpp
list.hpp
ptr
mos::shared_ptr< T > ptr
Definition
shared_ptr.hpp:354
signal_types.h
signal_t
int signal_t
Definition
signal_types.h:11
Process
Definition
task_types.hpp:53
Thread
Definition
task_types.hpp:114
mos::NamedType
Definition
type_utils.hpp:39
platform_regs_t
Definition
platform_defs.hpp:53
sigpending_t
A pending signal.
Definition
signal.hpp:25
sigpending_t::as_linked_list
as_linked_list
Definition
signal.hpp:26
sigpending_t::signal
signal_t signal
Definition
signal.hpp:27
sigreturn_data_t
Definition
signal.hpp:67
sigreturn_data_t::was_masked
bool was_masked
Definition
signal.hpp:69
sigreturn_data_t::signal
signal_t signal
Definition
signal.hpp:68
task_types.hpp
reg_t
uintn reg_t
Definition
types.h:47
kernel
include
private
mos
tasks
signal.hpp
Generated on
for MOS Source Code by
1.14.0