ZXFoundation™ 26h2
Loading...
Searching...
No Matches
zxfoundation.smp.csd.types Module Reference

Data Structures

struct  zxfoundation::smp::csd::call_single_data
 One cross-CPU function-call descriptor. More...
struct  zxfoundation::smp::csd::csd_stats
 csd queue statistics per CPU (read-only diagnostics). More...

Typedefs

using zxfoundation::smp::csd::csd_fn = auto (*)(u64 info, void* data) noexcept -> void
 Function pointer invoked by the target CPU on a CSD node.

Variables

u64 csd_call_count {0}
 Total smp_call_function_single invocations on this CPU.
u64 csd_call_many_count {0}
 Total smp_call_function_many invocations on this CPU.
void * data {nullptr}
u64 dispatch_count {0}
u64 done_atm {0}
u64 enqueue_count {0}
std::atomic< u32 > flags {0}
csd_fn func {nullptr}
u64 info {0}
std::atomic< call_single_data * > next {nullptr}
constexpr u32 zxfoundation::smp::csd::CSD_F_SYNC = 1U << 0
 CSD flag bits.
constexpr u32 zxfoundation::smp::csd::CSD_F_ASYNC = 1U << 1
 Fire-and-forget.
constexpr u32 zxfoundation::smp::csd::CSD_F_DONE = 1U << 2
 Set by dispatcher on completion.
constexpr u32 zxfoundation::smp::csd::CSD_F_RCU_FREE = 1U << 3
 Free via call_rcu on completion.
constexpr u32 zxfoundation::smp::csd::CSD_F_LOCKED = 1U << 4
 csd is in-flight (locked + pending).
constexpr u32 zxfoundation::smp::csd::CSD_F_QUEUED = 1U << 5
 csd is queued on a target CPU LIFO.
constexpr u32 zxfoundation::smp::csd::CSD_F_DISPATCH_LEASE = 1U << 6
 Holds one target dispatch lease.
constexpr u32 zxfoundation::smp::csd::CSD_F_SYNC = 1U << 0
 CSD flag bits.
constexpr u32 zxfoundation::smp::csd::CSD_F_ASYNC = 1U << 1
 Fire-and-forget.
constexpr u32 zxfoundation::smp::csd::CSD_F_DONE = 1U << 2
 Set by dispatcher on completion.
constexpr u32 zxfoundation::smp::csd::CSD_F_RCU_FREE = 1U << 3
 Free via call_rcu on completion.
constexpr u32 zxfoundation::smp::csd::CSD_F_LOCKED = 1U << 4
 csd is in-flight (locked + pending).
constexpr u32 zxfoundation::smp::csd::CSD_F_QUEUED = 1U << 5
 csd is queued on a target CPU LIFO.
constexpr u32 zxfoundation::smp::csd::CSD_F_DISPATCH_LEASE = 1U << 6
 Holds one target dispatch lease.

Files

file  zxfoundation/smp/csd.zcomponent/types.cxxm