source: mainline/kernel/generic/include/smp/smp_call.h@ 2ee1ccc

lfn serial ticket/834-toolchain-update topic/msim-upgrade topic/simplify-dev-export
Last change on this file since 2ee1ccc was 2ee1ccc, checked in by Adam Hraska <adam.hraska+hos@…>, 13 years ago

smp_call: initial unicast version for ia32, amd64.

  • Property mode set to 100644
File size: 637 bytes
Line 
1/*
2 */
3
4#ifndef KERN_SMP_CALL_H_
5#define KERN_SMP_CALL_H_
6
7#include <adt/list.h>
8#include <synch/spinlock.h>
9#include <atomic.h>
10
11typedef void (*smp_call_func_t)(void *);
12
13typedef struct smp_call {
14 smp_call_func_t func;
15 void *arg;
16 link_t calls_link;
17 atomic_t pending;
18} smp_call_t;
19
20
21
22extern void smp_call(unsigned int, smp_call_func_t, void *);
23extern void smp_call_async(unsigned int, smp_call_func_t, void *, smp_call_t *);
24extern void smp_call_wait(smp_call_t *);
25//extern void smp_broadcast_call(smp_call_func_t, void *);
26
27extern void smp_call_init(void);
28extern void smp_call_ipi_recv(void);
29
30
31
32#endif /* KERN_SMP_CALL_H_ */
33
Note: See TracBrowser for help on using the repository browser.