提交 ed8c2f49 编写于 作者: M Miaohe Lin 提交者: Linus Torvalds

mm/hwpoison: change argument struct page **hpagep to *hpage

It's unnecessary to pass in a struct page **hpagep because it's never
modified.  Changing to use *hpage to simplify the code.

Link: https://lkml.kernel.org/r/20210814105131.48814-4-linmiaohe@huawei.comSigned-off-by: NMiaohe Lin <linmiaohe@huawei.com>
Acked-by: NNaoya Horiguchi <naoya.horiguchi@nec.com>
Signed-off-by: NAndrew Morton <akpm@linux-foundation.org>
Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
上级 ea3732f7
...@@ -1271,14 +1271,13 @@ static int get_hwpoison_page(struct page *p, unsigned long flags) ...@@ -1271,14 +1271,13 @@ static int get_hwpoison_page(struct page *p, unsigned long flags)
* the pages and send SIGBUS to the processes if the data was dirty. * the pages and send SIGBUS to the processes if the data was dirty.
*/ */
static bool hwpoison_user_mappings(struct page *p, unsigned long pfn, static bool hwpoison_user_mappings(struct page *p, unsigned long pfn,
int flags, struct page **hpagep) int flags, struct page *hpage)
{ {
enum ttu_flags ttu = TTU_IGNORE_MLOCK | TTU_SYNC; enum ttu_flags ttu = TTU_IGNORE_MLOCK | TTU_SYNC;
struct address_space *mapping; struct address_space *mapping;
LIST_HEAD(tokill); LIST_HEAD(tokill);
bool unmap_success; bool unmap_success;
int kill = 1, forcekill; int kill = 1, forcekill;
struct page *hpage = *hpagep;
bool mlocked = PageMlocked(hpage); bool mlocked = PageMlocked(hpage);
/* /*
...@@ -1503,7 +1502,7 @@ static int memory_failure_hugetlb(unsigned long pfn, int flags) ...@@ -1503,7 +1502,7 @@ static int memory_failure_hugetlb(unsigned long pfn, int flags)
goto out; goto out;
} }
if (!hwpoison_user_mappings(p, pfn, flags, &head)) { if (!hwpoison_user_mappings(p, pfn, flags, head)) {
action_result(pfn, MF_MSG_UNMAP_FAILED, MF_IGNORED); action_result(pfn, MF_MSG_UNMAP_FAILED, MF_IGNORED);
res = -EBUSY; res = -EBUSY;
goto out; goto out;
...@@ -1783,7 +1782,7 @@ int memory_failure(unsigned long pfn, int flags) ...@@ -1783,7 +1782,7 @@ int memory_failure(unsigned long pfn, int flags)
* Now take care of user space mappings. * Now take care of user space mappings.
* Abort on fail: __delete_from_page_cache() assumes unmapped page. * Abort on fail: __delete_from_page_cache() assumes unmapped page.
*/ */
if (!hwpoison_user_mappings(p, pfn, flags, &p)) { if (!hwpoison_user_mappings(p, pfn, flags, p)) {
action_result(pfn, MF_MSG_UNMAP_FAILED, MF_IGNORED); action_result(pfn, MF_MSG_UNMAP_FAILED, MF_IGNORED);
res = -EBUSY; res = -EBUSY;
goto unlock_page; goto unlock_page;
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册