#include <signal.h>
#include "xlat/sigev_value.h"
-MPERS_PRINTER_DECL(void, print_sigevent, struct tcb *tcp, const long addr)
+MPERS_PRINTER_DECL(void, print_sigevent,
+ struct tcb *const tcp, const kernel_ulong_t addr)
{
struct_sigevent sev;
return;
tprints("{");
- if (sev.sigev_value.sival_ptr)
- tprintf("sigev_value={int=%d, ptr=%#lx}, ",
- sev.sigev_value.sival_int,
- (unsigned long) sev.sigev_value.sival_ptr);
+ if (sev.sigev_value.sival_ptr) {
+ tprintf("sigev_value={sival_int=%d, sival_ptr=",
+ sev.sigev_value.sival_int);
+ printaddr(sev.sigev_value.sival_ptr);
+ tprints("}, ");
+ }
tprints("sigev_signo=");
switch (sev.sigev_notify) {