Currently it can happen that the pre-allocated ELF header contains a wrong
memory map which would result in errors when copying /proc/vmcore.
In order to still get a valid vmcore, we (temporarily) disable the error
checking in copy_oldmem_page(). This will then produce zero pages for those
memory regions.
Signed-off-by: Michael Holzheu <holzheu@linux.vnet.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
size_t csize, unsigned long offset, int userbuf)
{
unsigned long src;
- int rc;
if (!csize)
return 0;
src < OLDMEM_BASE + OLDMEM_SIZE)
src -= OLDMEM_BASE;
if (userbuf)
- rc = copy_to_user_real((void __user *) buf, (void *) src,
- csize);
+ copy_to_user_real((void __force __user *) buf, (void *) src,
+ csize);
else
- rc = memcpy_real(buf, (void *) src, csize);
- return rc < 0 ? rc : csize;
+ memcpy_real(buf, (void *) src, csize);
+ return csize;
}
/*