All of lore.kernel.org
 help / color / mirror / Atom feed
From: Linus Walleij <linus.walleij@linaro.org>
To: Andrew Morton <akpm@linux-foundation.org>
Cc: linux-mm@kvack.org, Linus Walleij <linus.walleij@linaro.org>
Subject: [PATCH 2/5] mm/highmem: Pass a pointer to virt_to_page()
Date: Thu, 30 Jun 2022 10:41:21 +0200	[thread overview]
Message-ID: <20220630084124.691207-3-linus.walleij@linaro.org> (raw)
In-Reply-To: <20220630084124.691207-1-linus.walleij@linaro.org>

Functions that work on a pointer to virtual memory such as
virt_to_pfn() and users of that function such as
virt_to_page() are supposed to pass a pointer to virtual
memory, ideally a (void *) or other pointer. However since
many architectures implement virt_to_pfn() as a macro,
this function becomes polymorphic and accepts both a
(unsigned long) and a (void *).

If we instead implement a proper virt_to_pfn(void *addr)
function the following happens (occurred on arch/arm):

mm/highmem.c:153:29: warning: passing argument 1 of
  'virt_to_pfn' makes pointer from integer without a
  cast [-Wint-conversion]

We already have a proper void * pointer in the scope of this
function named "vaddr" so pass that instead.

Cc: Andrew Morton <akpm@linux-foundation.org>
Cc: linux-mm@kvack.org
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
---
 mm/highmem.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/mm/highmem.c b/mm/highmem.c
index 1a692997fac4..e92a7ceb30e8 100644
--- a/mm/highmem.c
+++ b/mm/highmem.c
@@ -150,7 +150,7 @@ struct page *__kmap_to_page(void *vaddr)
 		return pte_page(pkmap_page_table[i]);
 	}
 
-	return virt_to_page(addr);
+	return virt_to_page(vaddr);
 }
 EXPORT_SYMBOL(__kmap_to_page);
 
-- 
2.36.1



  parent reply	other threads:[~2022-06-30  8:43 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-06-30  8:41 [PATCH 0/5] mm: Pass pointers to page accessors Linus Walleij
2022-06-30  8:41 ` [PATCH 1/5] lib/test_free_pages.c: Pass a pointer to virt_to_page() Linus Walleij
2022-06-30  8:41 ` Linus Walleij [this message]
2022-06-30  8:41 ` [PATCH 3/5] mm: kfence: " Linus Walleij
2022-06-30  9:23   ` Marco Elver
2022-06-30  8:41 ` [PATCH 4/5] mm: gup: " Linus Walleij
2022-07-01  0:29   ` Jason Gunthorpe
2022-07-01  9:11     ` Linus Walleij
2022-06-30  8:41 ` [PATCH 5/5] mm: nommu: " Linus Walleij
2022-07-01 23:00 ` [PATCH 0/5] mm: Pass pointers to page accessors Andrew Morton
2022-07-03 13:28   ` Linus Walleij

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20220630084124.691207-3-linus.walleij@linaro.org \
    --to=linus.walleij@linaro.org \
    --cc=akpm@linux-foundation.org \
    --cc=linux-mm@kvack.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.