diff options
author | Keir Fraser <keir.fraser@citrix.com> | 2010-04-14 10:44:29 +0100 |
---|---|---|
committer | Keir Fraser <keir.fraser@citrix.com> | 2010-04-14 10:44:29 +0100 |
commit | 58f293ed52f73282e8e71db854801a06aa0a168e (patch) | |
tree | 6808b71d452896ca16114427357ee0106d81624b /xen/include/xen/softirq.h | |
parent | 822cdd45d1eb196b569da50ebde213b8a8330634 (diff) | |
download | xen-58f293ed52f73282e8e71db854801a06aa0a168e.tar.gz xen-58f293ed52f73282e8e71db854801a06aa0a168e.tar.bz2 xen-58f293ed52f73282e8e71db854801a06aa0a168e.zip |
Per-cpu tasklet lists.
Signed-off-by: Juergen Gross <juergen.gross@ts.fujitsu.com>
Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
Diffstat (limited to 'xen/include/xen/softirq.h')
-rw-r--r-- | xen/include/xen/softirq.h | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/xen/include/xen/softirq.h b/xen/include/xen/softirq.h index b02c8e2509..0e3c4ea5f2 100644 --- a/xen/include/xen/softirq.h +++ b/xen/include/xen/softirq.h @@ -47,7 +47,7 @@ void process_pending_softirqs(void); struct tasklet { struct list_head list; - bool_t is_scheduled; + int scheduled_on; bool_t is_running; bool_t is_dead; void (*func)(unsigned long); @@ -55,10 +55,12 @@ struct tasklet }; #define DECLARE_TASKLET(name, func, data) \ - struct tasklet name = { LIST_HEAD_INIT(name.list), 0, 0, 0, func, data } + struct tasklet name = { LIST_HEAD_INIT(name.list), -1, 0, 0, func, data } +void tasklet_schedule_on_cpu(struct tasklet *t, unsigned int cpu); void tasklet_schedule(struct tasklet *t); void tasklet_kill(struct tasklet *t); +void migrate_tasklets_from_cpu(unsigned int cpu); void tasklet_init( struct tasklet *t, void (*func)(unsigned long), unsigned long data); |