Add some typedefs to make it clearer when we passing a function,

Add fm_panic define
Add another bad atomic hack (need to do this right)


git-svn-id: https://outreach.scidac.gov/svn/spl/trunk@35 7e1ea52c-4ff2-0310-8f11-9dd32ca42a1c
This commit is contained in:
behlendo
2008-03-10 19:25:20 +00:00
parent 4098c921b6
commit 51f443a074
5 changed files with 18 additions and 5 deletions
+9
View File
@@ -10,6 +10,7 @@ extern "C" {
* get by for now since I'm only working on real 64bit systems but
* this will need to be addressed properly.
*/
static __inline__ void
atomic_inc_64(volatile uint64_t *target)
{
@@ -22,6 +23,14 @@ atomic_dec_64(volatile uint64_t *target)
(*target)--;
}
static __inline__ uint32_t
atomic_add_32(volatile uint32_t *target, int32_t delta)
{
uint32_t rc = *target;
*target += delta;
return rc;
}
static __inline__ uint64_t
atomic_add_64(volatile uint64_t *target, uint64_t delta)
{
+2
View File
@@ -13,4 +13,6 @@ extern void cmn_err(int, const char *, ...);
extern void vcmn_err(int, const char *, __va_list);
extern void vpanic(const char *, __va_list);
#define fm_panic panic
#endif /* SPL_CMN_ERR_H */
+1 -1
View File
@@ -75,7 +75,7 @@ extern taskq_t *__taskq_create(const char *, int, pri_t, int, int, uint_t);
#define taskq_create(name, thr, pri, min, max, flags) \
__taskq_create(name, thr, pri, min, max, flags)
#define taskq_dispatch(tq, func, priv, flags) \
__taskq_dispatch(tq, func, priv, flags)
__taskq_dispatch(tq, (task_func_t)func, priv, flags)
#define taskq_destroy(tq) destroy_workqueue(tq)
#define taskq_wait(tq) flush_workqueue(tq)
#define taskq_member(tq, kthr) 1 /* XXX -Just be true */
+4 -2
View File
@@ -26,14 +26,16 @@ extern "C" {
#define TS_WAIT 0x20 /* No clean linux mapping */
#endif
typedef void (*thread_func_t)(void *);
#define thread_create(stk, stksize, func, arg, len, pp, state, pri) \
__thread_create(stk, stksize, (void (*)(void *))func, \
__thread_create(stk, stksize, (thread_func_t)func, \
arg, len, pp, state, pri)
#define thread_exit() __thread_exit()
#define curthread get_current()
extern kthread_t *__thread_create(caddr_t stk, size_t stksize,
void (*func)(void *), void *args,
thread_func_t func, void *args,
size_t len, int *pp, int state,
pri_t pri);
extern void __thread_exit(void);