Aurelien Jarno wrote: > On Mon, Mar 29, 2010 at 11:36:50AM +0200, Paolo Bonzini wrote: > > > >> +#ifdef __ia64 > >> + sigprocmask(SIG_SETMASK, (sigset_t *)&uc->uc_sigmask, NULL); > >> +#else > >> sigprocmask(SIG_SETMASK,&uc->uc_sigmask, NULL); > >> +#endif > > > > Any reason for the ifdef? > > > > It is not strictly needed, as all architectures can cope with the ia64 > version. I have added it to make sure that a new architecture triggers a > warning if uc->uc_sigmask is not of type sigset_t, so that a human can > verify the cast is correct.
What type is the ia64 uc_sigmask, if not sigset_t? A git grep of the kernel found only: arch/ia64/include/asm/ucontext.h:#define uc_sigmask uc_mcontext.sc_sigmask with sc_sigmask not defined anywhere. The uc_mcontext.sc_mask field, though, is a sigset_t. -- Jamie