Skip to content

Commit f5d9283

Browse files
Brian Gerstsuryasaimadhu
authored andcommitted
x86/32: Simplify ELF_CORE_COPY_REGS
GS is now always a user segment, so there is no difference between user and kernel registers. Signed-off-by: Brian Gerst <[email protected]> Signed-off-by: Borislav Petkov <[email protected]> Reviewed-by: Thomas Gleixner <[email protected]> Acked-by: Andy Lutomirski <[email protected]> Link: https://lore.kernel.org/r/[email protected]
1 parent 3123109 commit f5d9283

File tree

1 file changed

+2
-13
lines changed
  • arch/x86/include/asm

1 file changed

+2
-13
lines changed

arch/x86/include/asm/elf.h

Lines changed: 2 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -116,7 +116,7 @@ extern unsigned int vdso32_enabled;
116116
* now struct_user_regs, they are different)
117117
*/
118118

119-
#define ELF_CORE_COPY_REGS_COMMON(pr_reg, regs) \
119+
#define ELF_CORE_COPY_REGS(pr_reg, regs) \
120120
do { \
121121
pr_reg[0] = regs->bx; \
122122
pr_reg[1] = regs->cx; \
@@ -128,6 +128,7 @@ do { \
128128
pr_reg[7] = regs->ds; \
129129
pr_reg[8] = regs->es; \
130130
pr_reg[9] = regs->fs; \
131+
savesegment(gs, pr_reg[10]); \
131132
pr_reg[11] = regs->orig_ax; \
132133
pr_reg[12] = regs->ip; \
133134
pr_reg[13] = regs->cs; \
@@ -136,18 +137,6 @@ do { \
136137
pr_reg[16] = regs->ss; \
137138
} while (0);
138139

139-
#define ELF_CORE_COPY_REGS(pr_reg, regs) \
140-
do { \
141-
ELF_CORE_COPY_REGS_COMMON(pr_reg, regs);\
142-
pr_reg[10] = get_user_gs(regs); \
143-
} while (0);
144-
145-
#define ELF_CORE_COPY_KERNEL_REGS(pr_reg, regs) \
146-
do { \
147-
ELF_CORE_COPY_REGS_COMMON(pr_reg, regs);\
148-
savesegment(gs, pr_reg[10]); \
149-
} while (0);
150-
151140
#define ELF_PLATFORM (utsname()->machine)
152141
#define set_personality_64bit() do { } while (0)
153142

0 commit comments

Comments
 (0)