forked from Minki/linux
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.com Signed-off-by: Miaohe Lin <linmiaohe@huawei.com> Acked-by: Naoya Horiguchi <naoya.horiguchi@nec.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
parent
ea3732f7a1
commit
ed8c2f492d
@ -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)
|
|||||||
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 @@ try_again:
|
|||||||
* 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;
|
||||||
|
Loading…
Reference in New Issue
Block a user