|
|
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.
|