Jiri Slaby 72ed7de74e x86: crash_dump: Fix non-pae kdump kernel memory accesses
Non-PAE 32-bit dump kernels may wrap an address around 4G and
poke unwanted space. ptes there are 32-bit long, and since
pfn << PAGE_SIZE may exceed this limit, high pfn bits are
cropped and wrong address mapped by kmap_atomic_pfn in
copy_oldmem_page.

Don't allow this behavior in non-PAE kdump kernels by checking
pfns passed into copy_oldmem_page. In the case of failure,
userspace process gets EFAULT.

[v2]
- fix comments
- move ifdefs inside the function

Signed-off-by: Jiri Slaby <jirislaby@gmail.com>
Cc: Vivek Goyal <vgoyal@redhat.com>
Cc: Eric W. Biederman <ebiederm@xmission.com>
Cc: Simon Horman <horms@verge.net.au>
Cc: Paul Mundt <lethal@linux-sh.org>
LKML-Reference: <1256551903-30567-1-git-send-email-jirislaby@gmail.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
2009-10-26 12:38:59 +01:00
..
2009-03-15 07:03:15 +01:00
2009-06-15 15:20:40 +02:00
2009-07-19 18:27:51 +02:00
2009-03-13 11:57:22 +01:00
2009-06-20 17:53:13 +02:00
2009-09-23 18:13:10 -07:00
2009-09-23 18:13:10 -07:00
2009-07-11 10:17:08 +02:00
2009-08-31 11:09:40 +02:00
2009-08-31 11:09:40 +02:00
2008-12-12 11:08:42 +01:00
2009-02-10 13:13:23 +01:00
2009-02-23 00:08:11 +01:00
2009-03-21 16:57:04 +05:30
2009-08-09 22:28:34 +02:00
2009-02-09 12:16:05 +01:00
2009-10-15 08:07:30 +02:00
2009-03-21 16:55:45 +05:30
2009-09-24 09:34:52 +09:30
2009-09-19 00:11:26 -04:00
2009-02-23 00:08:11 +01:00
2009-08-31 11:09:40 +02:00
2009-01-20 17:14:28 +01:00
2009-07-14 16:25:05 +02:00
2009-09-15 15:08:40 -04:00
2009-07-19 18:27:51 +02:00
2009-03-21 16:55:24 +05:30
2009-09-20 20:25:03 +02:00
2009-02-17 17:52:44 +01:00