diff options
Diffstat (limited to 'arch/x86/mm/fault.c')
-rw-r--r-- | arch/x86/mm/fault.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/arch/x86/mm/fault.c b/arch/x86/mm/fault.c index 0cdb8d493f61..79b0b372d2d0 100644 --- a/arch/x86/mm/fault.c +++ b/arch/x86/mm/fault.c | |||
@@ -260,6 +260,8 @@ static noinline __kprobes int vmalloc_fault(unsigned long address) | |||
260 | if (!(address >= VMALLOC_START && address < VMALLOC_END)) | 260 | if (!(address >= VMALLOC_START && address < VMALLOC_END)) |
261 | return -1; | 261 | return -1; |
262 | 262 | ||
263 | WARN_ON_ONCE(in_nmi()); | ||
264 | |||
263 | /* | 265 | /* |
264 | * Synchronize this task's top level page-table | 266 | * Synchronize this task's top level page-table |
265 | * with the 'reference' page table. | 267 | * with the 'reference' page table. |
@@ -356,6 +358,8 @@ static noinline __kprobes int vmalloc_fault(unsigned long address) | |||
356 | if (!(address >= VMALLOC_START && address < VMALLOC_END)) | 358 | if (!(address >= VMALLOC_START && address < VMALLOC_END)) |
357 | return -1; | 359 | return -1; |
358 | 360 | ||
361 | WARN_ON_ONCE(in_nmi()); | ||
362 | |||
359 | /* | 363 | /* |
360 | * Copy kernel mappings over when needed. This can also | 364 | * Copy kernel mappings over when needed. This can also |
361 | * happen within a race in page table update. In the later | 365 | * happen within a race in page table update. In the later |