mm: fix exec activate_mm vs TLB shootdown and lazy tlb switching race
[linux/fpc-iii.git] / arch / hexagon / kernel / trampoline.S
blob18110a9056b02b0ec47150f5cd6915481102468e
1 /*
2  * Copyright (c) 2010-2011, The Linux Foundation. All rights reserved.
3  *
4  * This program is free software; you can redistribute it and/or modify
5  * it under the terms of the GNU General Public License version 2 and
6  * only version 2 as published by the Free Software Foundation.
7  *
8  * This program is distributed in the hope that it will be useful,
9  * but WITHOUT ANY WARRANTY; without even the implied warranty of
10  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
11  * GNU General Public License for more details.
12  *
13  * You should have received a copy of the GNU General Public License
14  * along with this program; if not, write to the Free Software
15  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
16  * 02110-1301, USA.
17  */
20  * Trampoline sequences to be copied onto user stack.
21  * This consumes a little more space than hand-assembling
22  * immediate constants for use in C, but is more portable
23  * to future tweaks to the Hexagon instruction set.
24  */
26 #include <asm/unistd.h>
28 /*  Sig trampolines - call sys_sigreturn or sys_rt_sigreturn as appropriate */
30 /*  plain sigreturn is gone.  */
32         .globl __rt_sigtramp_template
33 __rt_sigtramp_template:
34         r6 = #__NR_rt_sigreturn;
35         trap0(#1);