123456789101112131415161718192021222324252627282930313233 |
- /*
- * timer_delete.c - delete a per-process timer.
- */
- #include <errno.h>
- #include <stdlib.h>
- #include <time.h>
- #include <sys/syscall.h>
- #include "kernel-posix-timers.h"
- #ifdef __NR_timer_delete
- #define __NR___syscall_timer_delete __NR_timer_delete
- static inline _syscall1(int, __syscall_timer_delete, kernel_timer_t, ktimerid);
- /* Delete a per-process timer */
- int timer_delete(timer_t timerid)
- {
- int res;
- struct timer *kt = (struct timer *)timerid;
- /* Delete the kernel timer object */
- res = __syscall_timer_delete(kt->ktimerid);
- if (res == 0) {
- free(kt); /* Free the memory */
- return 0;
- }
- return -1;
- }
- #endif
|