Commit 1092b596a56b6ac5fa3154dc75bfcbb6f27ac757
Exists in
ti-lsk-linux-4.1.y
and in
10 other branches
Merge branch 'x86-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip
Pull x86 fix from Ingo Molnar: "This contains a single TLS ABI validation fix from Andy Lutomirski" * 'x86-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: x86/tls: Don't validate lm in set_thread_area() after all
Showing 2 changed files Side-by-side Diff
arch/x86/include/uapi/asm/ldt.h
... | ... | @@ -28,6 +28,13 @@ |
28 | 28 | unsigned int seg_not_present:1; |
29 | 29 | unsigned int useable:1; |
30 | 30 | #ifdef __x86_64__ |
31 | + /* | |
32 | + * Because this bit is not present in 32-bit user code, user | |
33 | + * programs can pass uninitialized values here. Therefore, in | |
34 | + * any context in which a user_desc comes from a 32-bit program, | |
35 | + * the kernel must act as though lm == 0, regardless of the | |
36 | + * actual value. | |
37 | + */ | |
31 | 38 | unsigned int lm:1; |
32 | 39 | #endif |
33 | 40 | }; |