Nicholas Miell wrote: > so if uc_stack doesn't point to the stack in use immediately prior to > signal generation, this is a bug.
Looking at arch/i386/kernel/signal.c (and others) inside setup_rt_frame(), the problem is pretty obvious: err |= __put_user(current->sas_ss_sp, &frame_user->uc.uc_stack.ss_sp); err |= __put_user(sas_ss_flags(regs->esp), &frame->uc.uc_stack.ss_flags); err |= __put_user(current->sas_ss_size, &frame_user->uc.uc_stack.ss_size); And of course, the ss_sp is NULL when no alternative stack is used. Seems definitively a bug. However, my reading of include/linux/sched.h and thread_info.h did not enlighten me on the way to get the original thread's stack base and size. - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/