mirror of
git://sourceware.org/git/glibc.git
synced 2025-04-24 14:41:06 +08:00
hurd: fix warning
timer_ptr2id and timer_id2ptr are used to convert between application-visible timer_t and struct timer_node *. timer_ptr2id was made to use void * instead of timer_t in 49b650430eb5 ('Update.') for no reason. It happens that on Linux timer_t is void *, so both that change and this commit are no-ops there, but not on systems where timer_t is not void *. Using timer_ptr2id for filling sival_ptr also does not make sense since that actually is a void *. * sysdeps/pthread/posix-timer.h (timer_ptr2id): Cast to timer_t instead of void *. * sysdeps/pthread/timer_create.c (timer_create): Do not use timer_ptr2id to cast struct timer_node * to void *.
This commit is contained in:
parent
05ebfe87fa
commit
61a3a8c6ce
@ -13,6 +13,10 @@
|
|||||||
return 0.
|
return 0.
|
||||||
* sysdeps/mach/hurd/dl-sysdep.c (_dl_sysdep_start): Cast
|
* sysdeps/mach/hurd/dl-sysdep.c (_dl_sysdep_start): Cast
|
||||||
vm_address_t * to ElfW(Addr) * for dl_main parameter.
|
vm_address_t * to ElfW(Addr) * for dl_main parameter.
|
||||||
|
* sysdeps/pthread/posix-timer.h (timer_ptr2id): Cast to timer_t
|
||||||
|
instead of void *.
|
||||||
|
* sysdeps/pthread/timer_create.c (timer_create): Do not use
|
||||||
|
timer_ptr2id to cast struct timer_node * to void *.
|
||||||
|
|
||||||
2018-01-27 James Clarke <jrtc27@jrtc27.com>
|
2018-01-27 James Clarke <jrtc27@jrtc27.com>
|
||||||
|
|
||||||
|
@ -87,7 +87,7 @@ extern struct thread_node __timer_signal_thread_rclk;
|
|||||||
|
|
||||||
/* Return pointer to timer structure corresponding to ID. */
|
/* Return pointer to timer structure corresponding to ID. */
|
||||||
#define timer_id2ptr(timerid) ((struct timer_node *) timerid)
|
#define timer_id2ptr(timerid) ((struct timer_node *) timerid)
|
||||||
#define timer_ptr2id(timerid) ((void *) timerid)
|
#define timer_ptr2id(timerid) ((timer_t) timerid)
|
||||||
|
|
||||||
/* Check whether timer is valid; global mutex must be held. */
|
/* Check whether timer is valid; global mutex must be held. */
|
||||||
static inline int
|
static inline int
|
||||||
|
@ -77,7 +77,7 @@ timer_create (clockid_t clock_id, struct sigevent *evp, timer_t *timerid)
|
|||||||
{
|
{
|
||||||
newtimer->event.sigev_notify = SIGEV_SIGNAL;
|
newtimer->event.sigev_notify = SIGEV_SIGNAL;
|
||||||
newtimer->event.sigev_signo = SIGALRM;
|
newtimer->event.sigev_signo = SIGALRM;
|
||||||
newtimer->event.sigev_value.sival_ptr = timer_ptr2id (newtimer);
|
newtimer->event.sigev_value.sival_ptr = newtimer;
|
||||||
newtimer->event.sigev_notify_function = 0;
|
newtimer->event.sigev_notify_function = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user