rem: ucontext_t* uc = extra;
add: struct kernel_ucontext* uc = extra;
context: static void blomcall_timer_handler(int x, siginfo_t* si, void* extra) {  ucontext_t* uc = extra;  assert (blomcall_ctx != NULL);  ++blomcall_counter;  blomcall_ctx->uc = *uc;  blomcall_ctx->fp = *uc->uc_mcontext.fpregs;/*   printf("saving state to context %p at %p, stack %p\n", *//* 	 blomcall_ctx, uc->uc_mcontext.gregs[REG_EIP], uc->uc_mcontext.gregs[REG_ESP]); */  // SIGUSR1 already blocked, since we're in a signal handler  // pthread_sigmask(SIG_BLOCK, &blomcall_usr1sigset, NULL);  siglongjmp(blomcall_ctx->emuljmp, 2);}