Messages in this thread Patch in this message | | | From | Roland McGrath <> | Subject | Re: [PATCH] consider stack access while checking for alternate signal stack | Date | Mon, 19 Oct 2009 11:08:10 -0700 (PDT) |
| |
AFAICT all you want is the following, and I'm not sure it requires all that much explanation. I've probably missed some subtlety.
Thanks, Roland
--- a/include/linux/sched.h +++ b/include/linux/sched.h @@ -2090,7 +2090,13 @@ static inline int is_si_special(const struct siginfo *info) static inline int on_sig_stack(unsigned long sp) { - return (sp - current->sas_ss_sp < current->sas_ss_size); +#ifdef CONFIG_STACK_GROWSUP + return sp >= current->sas_ss_sp && + sp - current->sas_ss_sp < current->sas_ss_size; +#else + return sp > current->sas_ss_sp && + sp - current->sas_ss_sp <= current->sas_ss_size; +#endif }
| |