--- 9882df92ba0a2c8b8da4639f7e181214930c8ed6 +++ 7ce1a1005b1da4c3b13f8b87927d060376279f2a @@ -267,17 +267,15 @@ static inline void __user *get_sigframe( sp = current->sas_ss_sp + current->sas_ss_size; } - sp -= framesize; - /* Always align the stack frame. This handles two cases. First, * sigaltstack need not be mindful of platform specific stack * alignment. Second, if we took this signal because the stack * is not aligned properly, we'd like to take the signal cleanly * and report that. */ - sp &= ~15UL; + sp &= ~7UL; - return (void __user *) sp; + return (void __user *)(sp - framesize); } static inline int