// SPDX-License-Identifier: GPL-2.0-only1/*2* arch/arm/kernel/crash_dump.c3*4* Copyright (C) 2010 Nokia Corporation.5* Author: Mika Westerberg6*7* This code is taken from arch/x86/kernel/crash_dump_64.c8* Created by: Hariprasad Nellitheertha ([email protected])9* Copyright (C) IBM Corporation, 2004. All rights reserved10*/1112#include <linux/errno.h>13#include <linux/crash_dump.h>14#include <linux/uaccess.h>15#include <linux/io.h>16#include <linux/uio.h>1718ssize_t copy_oldmem_page(struct iov_iter *iter, unsigned long pfn,19size_t csize, unsigned long offset)20{21void *vaddr;2223if (!csize)24return 0;2526vaddr = ioremap(__pfn_to_phys(pfn), PAGE_SIZE);27if (!vaddr)28return -ENOMEM;2930csize = copy_to_iter(vaddr + offset, csize, iter);3132iounmap(vaddr);33return csize;34}353637