sigval
union sigval value = { .sival_int = vector };
memcpy_toio(&cpu_addr[0], &sign->val[i].sigval[0], 16);
uint32_t sigval[4];
data[0] = sign->val[i].sigval[0];
data[1] = sign->val[i].sigval[1];
data[2] = sign->val[i].sigval[2];
data[3] = sign->val[i].sigval[3];
uint32_t sigval[4];
union sigval val;
int sigqueue(pid_t pid, int sig, const union sigval value);
static void msr_record_handler(union sigval v)
static void watchdog_timer_func(union sigval sigval)