[RFC PATCH 01/14] fs/proc/vmcore: Update read_from_oldmem() for user pointer
Christoph Hellwig
hch at lst.de
Mon Dec 6 06:04:51 PST 2021
On Fri, Dec 03, 2021 at 04:12:18PM +0530, Amit Daniel Kachhap wrote:
> + return read_from_oldmem_to_kernel(buf, count, ppos,
> + cc_platform_has(CC_ATTR_GUEST_MEM_ENCRYPT));
Overly long line.
> +ssize_t read_from_oldmem(char __user *ubuf, char *kbuf, size_t count,
> + u64 *ppos, bool encrypted)
> {
> unsigned long pfn, offset;
> size_t nr_bytes;
> @@ -156,19 +163,27 @@ ssize_t read_from_oldmem(char *buf, size_t count,
> /* If pfn is not ram, return zeros for sparse dump files */
> if (!pfn_is_ram(pfn)) {
> tmp = 0;
> - if (!userbuf)
> - memset(buf, 0, nr_bytes);
> - else if (clear_user(buf, nr_bytes))
> + if (kbuf)
> + memset(kbuf, 0, nr_bytes);
> + else if (clear_user(ubuf, nr_bytes))
> tmp = -EFAULT;
This looks like a huge mess. What speak against using an iov_iter
here?
More information about the kexec
mailing list