Subject: Re: next: x86: clang: mm/khugepaged.c:1428:45: error: variable 'pmd' is uninitialized when used here

From: Andrew Morton <[email-masked]>
Date: Thu, 24 Nov 2022 11:33:17 -0800

On Thu, 24 Nov 2022 21:07:48 +0530 Naresh Kamboju <[email-masked]> wrote:

> LKFT CI system noticed clang-15 build failures on x86_64 and i386.
> 
> Reported-by: Linux Kernel Functional Testing <[email-masked]>
> 
> make --silent --keep-going --jobs=8
> O=/home/tuxbuild/.cache/tuxmake/builds/1/build LLVM=1 LLVM_IAS=1
> ARCH=x86_64 SRCARCH=x86 CROSS_COMPILE=x86_64-linux-gnu-
> 'HOSTCC=sccache clang' 'CC=sccache clang'
> mm/khugepaged.c:1428:45: error: variable 'pmd' is uninitialized when
> used here [-Werror,-Wuninitialized]
>         page_table_check_pte_clear_range(mm, addr, pmd);
>                                                    ^~~
> mm/khugepaged.c:1415:2: note: variable 'pmd' is declared here
>         pmd_t pmd;
>         ^

Thanks.  Due to "mm/khugepaged: fix GUP-fast interaction by freeing
ptes via mmu_gather".

Jann, I'll just do this for now:

--- a/mm/khugepaged.c~mm-khugepaged-fix-gup-fast-interaction-by-freeing-ptes-via-mmu_gather-fix
+++ a/mm/khugepaged.c
@@ -1431,7 +1431,6 @@ static void collapse_and_free_pmd(struct
 	 */
 	if (vma->anon_vma)
 		lockdep_assert_held_write(&vma->anon_vma->root->rwsem);
-	page_table_check_pte_clear_range(mm, addr, pmd);
 
 	tlb_gather_mmu(&tlb, mm);
 	pmd = READ_ONCE(*pmdp);
_

please check.