Changeset View
Changeset View
Standalone View
Standalone View
head/sys/sys/gtaskqueue.h
Show First 20 Lines • Show All 46 Lines • ▼ Show 20 Lines | |||||
void gtaskqueue_block(struct gtaskqueue *queue); | void gtaskqueue_block(struct gtaskqueue *queue); | ||||
void gtaskqueue_unblock(struct gtaskqueue *queue); | void gtaskqueue_unblock(struct gtaskqueue *queue); | ||||
int gtaskqueue_cancel(struct gtaskqueue *queue, struct gtask *gtask); | int gtaskqueue_cancel(struct gtaskqueue *queue, struct gtask *gtask); | ||||
void gtaskqueue_drain(struct gtaskqueue *queue, struct gtask *task); | void gtaskqueue_drain(struct gtaskqueue *queue, struct gtask *task); | ||||
void gtaskqueue_drain_all(struct gtaskqueue *queue); | void gtaskqueue_drain_all(struct gtaskqueue *queue); | ||||
void grouptask_block(struct grouptask *grouptask); | |||||
void grouptask_unblock(struct grouptask *grouptask); | |||||
int grouptaskqueue_enqueue(struct gtaskqueue *queue, struct gtask *task); | int grouptaskqueue_enqueue(struct gtaskqueue *queue, struct gtask *task); | ||||
void taskqgroup_attach(struct taskqgroup *qgroup, struct grouptask *grptask, | void taskqgroup_attach(struct taskqgroup *qgroup, struct grouptask *grptask, | ||||
void *uniq, int irq, const char *name); | void *uniq, int irq, const char *name); | ||||
int taskqgroup_attach_cpu(struct taskqgroup *qgroup, struct grouptask *grptask, | int taskqgroup_attach_cpu(struct taskqgroup *qgroup, struct grouptask *grptask, | ||||
void *uniq, int cpu, int irq, const char *name); | void *uniq, int cpu, int irq, const char *name); | ||||
void taskqgroup_detach(struct taskqgroup *qgroup, struct grouptask *gtask); | void taskqgroup_detach(struct taskqgroup *qgroup, struct grouptask *gtask); | ||||
struct taskqgroup *taskqgroup_create(const char *name); | struct taskqgroup *taskqgroup_create(const char *name); | ||||
void taskqgroup_destroy(struct taskqgroup *qgroup); | void taskqgroup_destroy(struct taskqgroup *qgroup); | ||||
int taskqgroup_adjust(struct taskqgroup *qgroup, int cnt, int stride); | int taskqgroup_adjust(struct taskqgroup *qgroup, int cnt, int stride); | ||||
void taskqgroup_config_gtask_init(void *ctx, struct grouptask *gtask, gtask_fn_t *fn, | void taskqgroup_config_gtask_init(void *ctx, struct grouptask *gtask, gtask_fn_t *fn, | ||||
const char *name); | const char *name); | ||||
void taskqgroup_config_gtask_deinit(struct grouptask *gtask); | void taskqgroup_config_gtask_deinit(struct grouptask *gtask); | ||||
#define TASK_ENQUEUED 0x1 | #define TASK_ENQUEUED 0x1 | ||||
#define TASK_SKIP_WAKEUP 0x2 | #define TASK_SKIP_WAKEUP 0x2 | ||||
#define TASK_NOENQUEUE 0x4 | |||||
#define GTASK_INIT(task, flags, priority, func, context) do { \ | #define GTASK_INIT(task, flags, priority, func, context) do { \ | ||||
(task)->ta_flags = flags; \ | (task)->ta_flags = flags; \ | ||||
(task)->ta_priority = (priority); \ | (task)->ta_priority = (priority); \ | ||||
(task)->ta_func = (func); \ | (task)->ta_func = (func); \ | ||||
(task)->ta_context = (context); \ | (task)->ta_context = (context); \ | ||||
} while (0) | } while (0) | ||||
Show All 36 Lines |