summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGuillem Jover <guillem@hadrons.org>2011-08-30 03:09:29 +0200
committerSamuel Thibault <samuel.thibault@ens-lyon.org>2011-08-30 23:27:43 +0200
commite0a627a303df094331381a6efaa5784a5d4c97f5 (patch)
tree0d2ea595310a346d8f01419e7091ac3a3ba9539c
parente262931bb794267aa0f1a420c848767800bed7c3 (diff)
Cast function timeout() argument to fix a warning
* kern/mach_clock.h (timer_func_t): New function type. (struct timer_elt): Change fcn type to timer_func_t. * i386/i386at/com.c (comstart): Cast `ttrstrt' to `timer_funct_t *' in `timeout' call. * i386/i386at/lpr.c (lprstart): Likewise,
-rw-r--r--i386/i386at/com.c2
-rw-r--r--i386/i386at/lpr.c2
-rw-r--r--kern/mach_clock.h8
3 files changed, 7 insertions, 5 deletions
diff --git a/i386/i386at/com.c b/i386/i386at/com.c
index 4fed1ee..b1406f0 100644
--- a/i386/i386at/com.c
+++ b/i386/i386at/com.c
@@ -657,7 +657,7 @@ comst_4++;
#else
nch = getc(&tp->t_outq);
if ((nch & 0200) && ((tp->t_flags & LITOUT) == 0)) {
- timeout(ttrstrt, (char *)tp, (nch & 0x7f) + 6);
+ timeout((timer_func_t *)ttrstrt, (char *)tp, (nch & 0x7f) + 6);
tp->t_state |= TS_TIMEOUT;
comst_4++;
return;
diff --git a/i386/i386at/lpr.c b/i386/i386at/lpr.c
index 57f6f85..8d077d5 100644
--- a/i386/i386at/lpr.c
+++ b/i386/i386at/lpr.c
@@ -338,7 +338,7 @@ struct tty *tp;
#ifdef MACH_KERNEL
nch = getc(&tp->t_outq);
if ((tp->t_flags & LITOUT) == 0 && (nch & 0200)) {
- timeout(ttrstrt, (char *)tp, (nch & 0x7f) + 6);
+ timeout((timer_func_t *)ttrstrt, (char *)tp, (nch & 0x7f) + 6);
tp->t_state |= TS_TIMEOUT;
return;
}
diff --git a/kern/mach_clock.h b/kern/mach_clock.h
index 2009c70..4e4e8ff 100644
--- a/kern/mach_clock.h
+++ b/kern/mach_clock.h
@@ -37,10 +37,12 @@ extern int hz; /* number of ticks per second */
extern int tick; /* number of usec per tick */
+typedef void timer_func_t(void *);
+
/* Time-out element. */
struct timer_elt {
queue_chain_t chain; /* chain in order of expiration */
- void (*fcn)(); /* function to call */
+ timer_func_t *fcn; /* function to call */
void * param; /* with this parameter */
unsigned long ticks; /* expiration time, in ticks */
int set; /* unset | set | allocated */
@@ -99,7 +101,7 @@ extern kern_return_t host_adjust_time(
extern void mapable_time_init (void);
/* For public timer elements. */
-extern void timeout(void (*fcn)(void *), void *param, int interval);
-extern boolean_t untimeout(void (*fcn)(void *), void *param);
+extern void timeout(timer_func_t *fcn, void *param, int interval);
+extern boolean_t untimeout(timer_func_t *fcn, void *param);
#endif /* _KERN_MACH_CLOCK_H_ */