5export module zxfoundation.sched.strandctx.core;
6import zxfoundation.dgp.domain.types;
7import zxfoundation.base.types;
8import arch.s390x.sched.types;
10using zxfoundation::dgp::domain::domain;
11using zxfoundation::dgp::domain::strand;
15namespace zxfoundation::sched::strandctx {
18 using strand_entry_fn =
auto (*)(
void*)
noexcept ->
void;
24 auto setup_strand_context_kernel_thread(
26 strand_entry_fn entry,
37 auto setup_strand_context_user(
39 const arch::s390x::sched::user_regs* uregs,
45 auto setup_primary_strand_context(
47 strand_entry_fn entry,
53 auto setup_primary_strand_context_user(
59 [[noreturn]]
auto domain_enter_user(strand* s)
noexcept ->
void;
62 [[noreturn]]
auto domain_enter_user(domain* d)
noexcept ->
void;