#include "buddy.h"
#include "hash-quadratic.h"
#include "instrumentation/st-instrumentation.h"
#include "ross-extern.h"
#include "ross-kernel-inline.h"
#include "ross-types.h"
Go to the source code of this file.
Macros | |
#define | ROSS_DEBUG 0 |
#define | CMP_EVENT_TO_GVT(e, pe) |
Functions | |
static void | tw_eventq_debug (tw_eventq *q) |
static void | tw_eventq_push_list (tw_eventq *q, tw_event *h, tw_event *t, long cnt) |
static void | tw_eventq_fossil_collect (tw_eventq *q, tw_pe *pe) |
static void | tw_eventq_alloc (tw_eventq *q, unsigned int cnt) |
static void | tw_eventq_push (tw_eventq *q, tw_event *e) |
static tw_event * | tw_eventq_peek (tw_eventq *q) |
static tw_event * | tw_eventq_pop (tw_eventq *q) |
static void | tw_eventq_unshift (tw_eventq *q, tw_event *e) |
static tw_event * | tw_eventq_peek_head (tw_eventq *q) |
static tw_event * | tw_eventq_shift (tw_eventq *q) |
static void | tw_eventq_delete_any (tw_eventq *q, tw_event *e) |
static tw_event * | tw_eventq_pop_list (tw_eventq *q) |
static void | tw_eventq_splice (tw_eventq *q, tw_event *h, tw_event *t, int cnt) |
#define CMP_EVENT_TO_GVT | ( | e, | |
pe ) |
Definition at line 147 of file tw-eventq.h.
#define ROSS_DEBUG 0 |
Definition at line 11 of file tw-eventq.h.
|
inlinestatic |
allocate a events into a given tw_eventq
Definition at line 210 of file tw-eventq.h.
References g_tw_event_msg_sz, g_tw_events_per_pe, g_tw_gvt_threshold, g_tw_msg_sz, g_tw_net_device_size, tw_eventq::head, tw_event::next, tw_event::owner, tw_event::prev, ROSS_MAX, tw_eventq::size, tw_event::state, tw_eventq::tail, tw_calloc(), TW_LOC, and TW_pe_free_q.
|
inlinestatic |
debug assitant fuction
Definition at line 17 of file tw-eventq.h.
References tw_eventq::head, tw_event::next, tw_event::prev, tw_eventq::size, tw_eventq::tail, tw_error(), and TW_LOC.
delete an event from anywhere in the list
Definition at line 408 of file tw-eventq.h.
References tw_eventq::head, tw_event::next, tw_event::prev, tw_eventq::size, tw_eventq::tail, and tw_eventq_debug().
Given a list, move the portion of its contents that is older than GVT to the free list.
Assumptions:
Definition at line 160 of file tw-eventq.h.
References CMP_EVENT_TO_GVT, tw_eventq::head, tw_event::next, pe, tw_event::prev, tw_eventq::size, tw_eventq::tail, and tw_eventq_push_list().
pop to tail of list
Definition at line 313 of file tw-eventq.h.
References tw_eventq::head, tw_event::next, tw_event::prev, tw_eventq::size, tw_eventq::tail, and tw_eventq_debug().
pop the entire list. After this operation, the size of the provided q is 0.
Definition at line 436 of file tw-eventq.h.
References tw_eventq::head, tw_eventq::size, and tw_eventq::tail.
push to tail of list
Definition at line 281 of file tw-eventq.h.
References tw_eventq::head, tw_event::next, tw_event::prev, tw_eventq::size, tw_eventq::tail, and tw_eventq_debug().
push the contents of one list onto another??
Definition at line 54 of file tw-eventq.h.
References buddy_free(), tw_event::cause_next, tw_event::caused_by_me, tw_lptype::commit, COMMIT_TRACE, tw_lp::cur_state, tw_event::cv, tw_event::delta_buddy, tw_event::dest_lp, tw_event::event_id, g_st_ev_trace, g_tw_clock_rate, g_tw_pe, tw_eventq::head, tw_lp::lp_stats, tw_event::next, tw_event::owner, pe, tw_lp::pe, tw_event::prev, tw_event::remote, st_lp_stats::s_process_event, tw_event::send_pe, tw_eventq::size, tw_event::src_lp, st_collect_event_data(), tw_event::state, tw_eventq::tail, tw_clock_read(), tw_event_data(), tw_event_free(), tw_eventq_debug(), tw_free_output_messages(), tw_hash_remove(), TW_pe_free_q, TW_pe_sevent_q, and tw_lp::type.
pop from head of list
Definition at line 377 of file tw-eventq.h.
References tw_eventq::head, tw_event::next, tw_event::prev, tw_eventq::size, tw_eventq::tail, and tw_eventq_debug().
The purpose of this function is to be able to remove some part of a list.. could be all of list, from head to some inner buffer, or from some inner buffer to tail. I only care about the last case..
Definition at line 453 of file tw-eventq.h.
References tw_eventq::head, tw_event::next, tw_event::prev, tw_eventq::size, tw_eventq::tail, and tw_eventq_debug().
push to head of list
Definition at line 344 of file tw-eventq.h.
References tw_eventq::head, tw_event::next, tw_event::prev, tw_eventq::size, tw_eventq::tail, and tw_eventq_debug().