diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2016-02-14 13:50:26 -0500 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2016-02-14 13:50:26 -0500 |
commit | 2d23e61fa2ecef787c3d1198b8ce8333264b5b8e (patch) | |
tree | f6d385ffcd5e42d24023f4db8c862fae7237c580 | |
parent | ab57a6111c987456f6848e20c55764d75f67ca2d (diff) | |
parent | 59fd1214561921343305a0e9dc218bf3d40068f3 (diff) |
Merge branch 'x86-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip
Pull x86 fixes from Thomas Gleixner:
"Two small fixlets for x86:
- Prevent a KASAN false positive in thread_saved_pc()
- Fix a 32-bit truncation problem in the x86 numa code"
* 'x86-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
x86/mm/numa: Fix 32-bit memblock range truncation bug on 32-bit NUMA kernels
x86: Fix KASAN false positives in thread_saved_pc()
-rw-r--r-- | arch/x86/include/asm/processor.h | 2 | ||||
-rw-r--r-- | arch/x86/mm/numa.c | 2 |
2 files changed, 2 insertions, 2 deletions
diff --git a/arch/x86/include/asm/processor.h b/arch/x86/include/asm/processor.h index 2d5a50cb61a2..20c11d1aa4cc 100644 --- a/arch/x86/include/asm/processor.h +++ b/arch/x86/include/asm/processor.h | |||
@@ -766,7 +766,7 @@ extern unsigned long thread_saved_pc(struct task_struct *tsk); | |||
766 | * Return saved PC of a blocked thread. | 766 | * Return saved PC of a blocked thread. |
767 | * What is this good for? it will be always the scheduler or ret_from_fork. | 767 | * What is this good for? it will be always the scheduler or ret_from_fork. |
768 | */ | 768 | */ |
769 | #define thread_saved_pc(t) (*(unsigned long *)((t)->thread.sp - 8)) | 769 | #define thread_saved_pc(t) READ_ONCE_NOCHECK(*(unsigned long *)((t)->thread.sp - 8)) |
770 | 770 | ||
771 | #define task_pt_regs(tsk) ((struct pt_regs *)(tsk)->thread.sp0 - 1) | 771 | #define task_pt_regs(tsk) ((struct pt_regs *)(tsk)->thread.sp0 - 1) |
772 | extern unsigned long KSTK_ESP(struct task_struct *task); | 772 | extern unsigned long KSTK_ESP(struct task_struct *task); |
diff --git a/arch/x86/mm/numa.c b/arch/x86/mm/numa.c index c3b3f653ed0c..d04f8094bc23 100644 --- a/arch/x86/mm/numa.c +++ b/arch/x86/mm/numa.c | |||
@@ -469,7 +469,7 @@ static void __init numa_clear_kernel_node_hotplug(void) | |||
469 | { | 469 | { |
470 | int i, nid; | 470 | int i, nid; |
471 | nodemask_t numa_kernel_nodes = NODE_MASK_NONE; | 471 | nodemask_t numa_kernel_nodes = NODE_MASK_NONE; |
472 | unsigned long start, end; | 472 | phys_addr_t start, end; |
473 | struct memblock_region *r; | 473 | struct memblock_region *r; |
474 | 474 | ||
475 | /* | 475 | /* |