lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite for Android: free password hash cracker in your pocket
[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <20210729221847.1165665-1-jhubbard@nvidia.com>
Date:   Thu, 29 Jul 2021 15:18:47 -0700
From:   John Hubbard <jhubbard@...dia.com>
To:     Andrew Morton <akpm@...ux-foundation.org>
CC:     LKML <linux-kernel@...r.kernel.org>, <linux-mm@...ck.org>,
        John Hubbard <jhubbard@...dia.com>,
        Mel Gorman <mgorman@...e.de>, Rik van Riel <riel@...hat.com>,
        Christoph Hellwig <hch@...radead.org>,
        "David S . Miller" <davem@...emloft.net>,
        Eric B Munson <emunson@...bm.net>,
        Eric Paris <eparis@...hat.com>,
        James Morris <jmorris@...ei.org>,
        Mike Christie <michaelc@...wisc.edu>,
        Neil Brown <neilb@...e.de>,
        Peter Zijlstra <a.p.zijlstra@...llo.nl>,
        Sebastian Andrzej Siewior <sebastian@...akpoint.cc>,
        Trond Myklebust <Trond.Myklebust@...app.com>,
        Xiaotian Feng <dfeng@...hat.com>,
        Mark Salter <msalter@...hat.com>
Subject: [PATCH] mm: delete unused get_kernel_page()

get_kernel_page() was added in 2012 by [1]. It was used for a while for
NFS, but then in 2014, a refactoring [2] removed all callers, and it has
apparently not been used since.

Remove get_kernel_page() because it has no callers.

[1] commit 18022c5d8627 ("mm: add get_kernel_page[s] for pinning of
    kernel addresses for I/O")
[2] commit 91f79c43d1b5 ("new helper: iov_iter_get_pages_alloc()")

Cc: Mel Gorman <mgorman@...e.de>
Cc: Rik van Riel <riel@...hat.com>
Cc: Christoph Hellwig <hch@...radead.org>
Cc: David S. Miller <davem@...emloft.net>
Cc: Eric B Munson <emunson@...bm.net>
Cc: Eric Paris <eparis@...hat.com>
Cc: James Morris <jmorris@...ei.org>
Cc: Mike Christie <michaelc@...wisc.edu>
Cc: Neil Brown <neilb@...e.de>
Cc: Peter Zijlstra <a.p.zijlstra@...llo.nl>
Cc: Sebastian Andrzej Siewior <sebastian@...akpoint.cc>
Cc: Trond Myklebust <Trond.Myklebust@...app.com>
Cc: Xiaotian Feng <dfeng@...hat.com>
Cc: Mark Salter <msalter@...hat.com>
Signed-off-by: John Hubbard <jhubbard@...dia.com>
---

Hi,

Just a minor decluttering: I ran across this while looking for something
else entirely, and then noticed that it's been orphaned for quite a long
time. It seems like only the plural form of this function is needed
these days, and probably in the coming days as well.

thanks,
John Hubbard
NVIDIA

 include/linux/mm.h |  1 -
 mm/swap.c          | 22 ----------------------
 2 files changed, 23 deletions(-)

diff --git a/include/linux/mm.h b/include/linux/mm.h
index 7ca22e6e694a..ab6d7280be5b 100644
--- a/include/linux/mm.h
+++ b/include/linux/mm.h
@@ -1847,7 +1847,6 @@ int __account_locked_vm(struct mm_struct *mm, unsigned long pages, bool inc,
 struct kvec;
 int get_kernel_pages(const struct kvec *iov, int nr_pages, int write,
 			struct page **pages);
-int get_kernel_page(unsigned long start, int write, struct page **pages);
 struct page *get_dump_page(unsigned long addr);
 
 extern int try_to_release_page(struct page * page, gfp_t gfp_mask);
diff --git a/mm/swap.c b/mm/swap.c
index 19600430e536..897200d27dd0 100644
--- a/mm/swap.c
+++ b/mm/swap.c
@@ -179,28 +179,6 @@ int get_kernel_pages(const struct kvec *kiov, int nr_segs, int write,
 }
 EXPORT_SYMBOL_GPL(get_kernel_pages);
 
-/*
- * get_kernel_page() - pin a kernel page in memory
- * @start:	starting kernel address
- * @write:	pinning for read/write, currently ignored
- * @pages:	array that receives pointer to the page pinned.
- *		Must be at least nr_segs long.
- *
- * Returns 1 if page is pinned. If the page was not pinned, returns
- * -errno. The page returned must be released with a put_page() call
- * when it is finished with.
- */
-int get_kernel_page(unsigned long start, int write, struct page **pages)
-{
-	const struct kvec kiov = {
-		.iov_base = (void *)start,
-		.iov_len = PAGE_SIZE
-	};
-
-	return get_kernel_pages(&kiov, 1, write, pages);
-}
-EXPORT_SYMBOL_GPL(get_kernel_page);
-
 static void pagevec_lru_move_fn(struct pagevec *pvec,
 	void (*move_fn)(struct page *page, struct lruvec *lruvec))
 {
-- 
2.32.0

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ