Messages in this thread |  | | Date | Sat, 4 Apr 2020 18:01:00 +0200 | From | Oleg Nesterov <> | Subject | Re: [PATCH v2] x86: signal: move save_altstack_ex out of generic headers |
| |
On 04/03, Nick Desaulniers wrote: > > --- a/arch/x86/kernel/signal.c > +++ b/arch/x86/kernel/signal.c > @@ -416,6 +416,7 @@ static int __setup_rt_frame(int sig, struct ksignal *ksig, > return 0; > Efault: > user_access_end(); > + reset_altstack(); > return -EFAULT; > } > #else /* !CONFIG_X86_32 */ > @@ -507,6 +508,7 @@ static int __setup_rt_frame(int sig, struct ksignal *ksig, > > Efault: > user_access_end(); > + reset_altstack(); > return -EFAULT; > }
I must have missed something, but this looks just wrong.
reset_altstack() should be called when __setup_rt_frame() (and unsafe_save_altstack() in particular) succeeds, not when it fails.
Nevermind, Al has already suggested to use signal_delivered()...
Oleg.
|  |