On 12/6/21 7:34 PM, Christoph Hellwig wrote:
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?

iov_iter seems to be a reasonable way. As a start I thought of adding
minimal changes.



_______________________________________________
kexec mailing list
[email protected]
http://lists.infradead.org/mailman/listinfo/kexec

Reply via email to