Message ID | 20240606063247.712575-2-linmiaohe@huawei.com (mailing list archive) |
---|---|
State | New |
Headers | show |
Series | Some cleanups for memory-failure | expand |
On 2024/6/6 14:32, Miaohe Lin wrote: > Remove unneeded page != NULL check. pfn_to_page() won't return NULL. > No functional change intended. > > Signed-off-by: Miaohe Lin <linmiaohe@huawei.com> > --- > mm/memory-failure.c | 6 +----- > 1 file changed, 1 insertion(+), 5 deletions(-) > > diff --git a/mm/memory-failure.c b/mm/memory-failure.c > index f679b579d45d..2e6038c73119 100644 > --- a/mm/memory-failure.c > +++ b/mm/memory-failure.c > @@ -2120,14 +2120,10 @@ static inline unsigned long folio_free_raw_hwp(struct folio *folio, bool flag) > /* Drop the extra refcount in case we come from madvise() */ > static void put_ref_page(unsigned long pfn, int flags) Since all calllers have a valid page,better to pass the page instead of pfn? > { > - struct page *page; > - > if (!(flags & MF_COUNT_INCREASED)) > return; > > - page = pfn_to_page(pfn); > - if (page) > - put_page(page); > + put_page(pfn_to_page(pfn)); > } > > static int memory_failure_dev_pagemap(unsigned long pfn, int flags,
On 2024/6/6 14:46, Kefeng Wang wrote: > > > On 2024/6/6 14:32, Miaohe Lin wrote: >> Remove unneeded page != NULL check. pfn_to_page() won't return NULL. >> No functional change intended. >> >> Signed-off-by: Miaohe Lin <linmiaohe@huawei.com> >> --- >> mm/memory-failure.c | 6 +----- >> 1 file changed, 1 insertion(+), 5 deletions(-) >> >> diff --git a/mm/memory-failure.c b/mm/memory-failure.c >> index f679b579d45d..2e6038c73119 100644 >> --- a/mm/memory-failure.c >> +++ b/mm/memory-failure.c >> @@ -2120,14 +2120,10 @@ static inline unsigned long folio_free_raw_hwp(struct folio *folio, bool flag) >> /* Drop the extra refcount in case we come from madvise() */ >> static void put_ref_page(unsigned long pfn, int flags) > > Since all calllers have a valid page,better to pass the page instead of pfn? Seems not. put_ref_page() called above memory_failure_dev_pagemap() seems don't have a valid page yet. Also page might be NULL when calling put_ref_page() in soft_offline_page(). So it should be better to still pass pfn. Or am I miss something? Thanks. .
On 2024/6/7 11:28, Miaohe Lin wrote: > On 2024/6/6 14:46, Kefeng Wang wrote: >> >> >> On 2024/6/6 14:32, Miaohe Lin wrote: >>> Remove unneeded page != NULL check. pfn_to_page() won't return NULL. >>> No functional change intended. >>> >>> Signed-off-by: Miaohe Lin <linmiaohe@huawei.com> >>> --- >>> mm/memory-failure.c | 6 +----- >>> 1 file changed, 1 insertion(+), 5 deletions(-) >>> >>> diff --git a/mm/memory-failure.c b/mm/memory-failure.c >>> index f679b579d45d..2e6038c73119 100644 >>> --- a/mm/memory-failure.c >>> +++ b/mm/memory-failure.c >>> @@ -2120,14 +2120,10 @@ static inline unsigned long folio_free_raw_hwp(struct folio *folio, bool flag) >>> /* Drop the extra refcount in case we come from madvise() */ >>> static void put_ref_page(unsigned long pfn, int flags) >> >> Since all calllers have a valid page,better to pass the page instead of pfn? > > Seems not. put_ref_page() called above memory_failure_dev_pagemap() seems don't have a valid page yet. > Also page might be NULL when calling put_ref_page() in soft_offline_page(). So it should be better to > still pass pfn. Or am I miss something? Yes, missing it, please ignore it > > Thanks. > . >
diff --git a/mm/memory-failure.c b/mm/memory-failure.c index f679b579d45d..2e6038c73119 100644 --- a/mm/memory-failure.c +++ b/mm/memory-failure.c @@ -2120,14 +2120,10 @@ static inline unsigned long folio_free_raw_hwp(struct folio *folio, bool flag) /* Drop the extra refcount in case we come from madvise() */ static void put_ref_page(unsigned long pfn, int flags) { - struct page *page; - if (!(flags & MF_COUNT_INCREASED)) return; - page = pfn_to_page(pfn); - if (page) - put_page(page); + put_page(pfn_to_page(pfn)); } static int memory_failure_dev_pagemap(unsigned long pfn, int flags,
Remove unneeded page != NULL check. pfn_to_page() won't return NULL. No functional change intended. Signed-off-by: Miaohe Lin <linmiaohe@huawei.com> --- mm/memory-failure.c | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-)