2024-06-13 14:34:52

by Dan Carpenter

[permalink] [raw]
Subject: [PATCH] fs/proc/task_mmu: fix uninitialized variable in pagemap_pmd_range()

The "folio" pointer is tested for NULL, but it's either valid or
uninitialized. Initialize it to NULL.

Fixes: 84f57f8b8914 ("fs/proc: move page_mapcount() to fs/proc/internal.h")
Signed-off-by: Dan Carpenter <[email protected]>
---
fs/proc/task_mmu.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/fs/proc/task_mmu.c b/fs/proc/task_mmu.c
index 631371cb80a0..6ed1f56b32b4 100644
--- a/fs/proc/task_mmu.c
+++ b/fs/proc/task_mmu.c
@@ -1492,7 +1492,7 @@ static int pagemap_pmd_range(pmd_t *pmdp, unsigned long addr, unsigned long end,
u64 flags = 0, frame = 0;
pmd_t pmd = *pmdp;
struct page *page = NULL;
- struct folio *folio;
+ struct folio *folio = NULL;

if (vma->vm_flags & VM_SOFTDIRTY)
flags |= PM_SOFT_DIRTY;
--
2.43.0



2024-06-13 14:48:49

by David Hildenbrand

[permalink] [raw]
Subject: Re: [PATCH] fs/proc/task_mmu: fix uninitialized variable in pagemap_pmd_range()

On 13.06.24 16:34, Dan Carpenter wrote:
> The "folio" pointer is tested for NULL, but it's either valid or
> uninitialized. Initialize it to NULL.
>
> Fixes: 84f57f8b8914 ("fs/proc: move page_mapcount() to fs/proc/internal.h")
> Signed-off-by: Dan Carpenter <[email protected]>
> ---
> fs/proc/task_mmu.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/fs/proc/task_mmu.c b/fs/proc/task_mmu.c
> index 631371cb80a0..6ed1f56b32b4 100644
> --- a/fs/proc/task_mmu.c
> +++ b/fs/proc/task_mmu.c
> @@ -1492,7 +1492,7 @@ static int pagemap_pmd_range(pmd_t *pmdp, unsigned long addr, unsigned long end,
> u64 flags = 0, frame = 0;
> pmd_t pmd = *pmdp;
> struct page *page = NULL;
> - struct folio *folio;
> + struct folio *folio = NULL;
>
> if (vma->vm_flags & VM_SOFTDIRTY)
> flags |= PM_SOFT_DIRTY;

Acked-by: David Hildenbrand <[email protected]>

Thanks!

--
Cheers,

David / dhildenb


2024-06-14 07:08:55

by Muhammad Usama Anjum

[permalink] [raw]
Subject: Re: [PATCH] fs/proc/task_mmu: fix uninitialized variable in pagemap_pmd_range()

On 6/13/24 7:34 PM, Dan Carpenter wrote:
> The "folio" pointer is tested for NULL, but it's either valid or
> uninitialized. Initialize it to NULL.
>
> Fixes: 84f57f8b8914 ("fs/proc: move page_mapcount() to fs/proc/internal.h")
> Signed-off-by: Dan Carpenter <[email protected]>
> ---
> fs/proc/task_mmu.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/fs/proc/task_mmu.c b/fs/proc/task_mmu.c
> index 631371cb80a0..6ed1f56b32b4 100644
> --- a/fs/proc/task_mmu.c
> +++ b/fs/proc/task_mmu.c
> @@ -1492,7 +1492,7 @@ static int pagemap_pmd_range(pmd_t *pmdp, unsigned long addr, unsigned long end,
> u64 flags = 0, frame = 0;
> pmd_t pmd = *pmdp;
> struct page *page = NULL;
> - struct folio *folio;
> + struct folio *folio = NULL;
>
> if (vma->vm_flags & VM_SOFTDIRTY)
> flags |= PM_SOFT_DIRTY;
Reviewed-by: Muhammad Usama Anjum <[email protected]>

--
BR,
Muhammad Usama Anjum