* Will Deacon <will@xxxxxxxxxx> [220217 14:24]: > On Thu, Feb 17, 2022 at 07:18:57PM +1100, Stephen Rothwell wrote: > > Hi all, > > > > After merging the maple tree, today's linux-next build (arm64 defconfig) > > failed like this: > > > > arch/arm64/kernel/elfcore.c: In function 'elf_core_extra_phdrs': > > arch/arm64/kernel/elfcore.c:13:35: error: 'struct mm_struct' has no member named 'mmap' > > 13 | for (vma = tsk->mm->mmap; vma; vma = vma->vm_next) \ > > | ^~ > > arch/arm64/kernel/elfcore.c:69:9: note: in expansion of macro 'for_each_mte_vma' > > 69 | for_each_mte_vma(current, vma) > > | ^~~~~~~~~~~~~~~~ > > arch/arm64/kernel/elfcore.c:13:57: error: 'struct vm_area_struct' has no member named 'vm_next' > > 13 | for (vma = tsk->mm->mmap; vma; vma = vma->vm_next) \ > > | ^~ > > arch/arm64/kernel/elfcore.c:69:9: note: in expansion of macro 'for_each_mte_vma' > > 69 | for_each_mte_vma(current, vma) > > | ^~~~~~~~~~~~~~~~ > > arch/arm64/kernel/elfcore.c: In function 'elf_core_write_extra_phdrs': > > arch/arm64/kernel/elfcore.c:13:35: error: 'struct mm_struct' has no member named 'mmap' > > 13 | for (vma = tsk->mm->mmap; vma; vma = vma->vm_next) \ > > | ^~ > > arch/arm64/kernel/elfcore.c:79:9: note: in expansion of macro 'for_each_mte_vma' > > 79 | for_each_mte_vma(current, vma) { > > | ^~~~~~~~~~~~~~~~ > > arch/arm64/kernel/elfcore.c:13:57: error: 'struct vm_area_struct' has no member named 'vm_next' > > 13 | for (vma = tsk->mm->mmap; vma; vma = vma->vm_next) \ > > | ^~ > > arch/arm64/kernel/elfcore.c:79:9: note: in expansion of macro 'for_each_mte_vma' > > 79 | for_each_mte_vma(current, vma) { > > | ^~~~~~~~~~~~~~~~ > > arch/arm64/kernel/elfcore.c: In function 'elf_core_extra_data_size': > > arch/arm64/kernel/elfcore.c:13:35: error: 'struct mm_struct' has no member named 'mmap' > > 13 | for (vma = tsk->mm->mmap; vma; vma = vma->vm_next) \ > > | ^~ > > arch/arm64/kernel/elfcore.c:104:9: note: in expansion of macro 'for_each_mte_vma' > > 104 | for_each_mte_vma(current, vma) > > | ^~~~~~~~~~~~~~~~ > > arch/arm64/kernel/elfcore.c:13:57: error: 'struct vm_area_struct' has no member named 'vm_next' > > 13 | for (vma = tsk->mm->mmap; vma; vma = vma->vm_next) \ > > | ^~ > > arch/arm64/kernel/elfcore.c:104:9: note: in expansion of macro 'for_each_mte_vma' > > 104 | for_each_mte_vma(current, vma) > > | ^~~~~~~~~~~~~~~~ > > arch/arm64/kernel/elfcore.c: In function 'elf_core_write_extra_data': > > arch/arm64/kernel/elfcore.c:13:35: error: 'struct mm_struct' has no member named 'mmap' > > 13 | for (vma = tsk->mm->mmap; vma; vma = vma->vm_next) \ > > | ^~ > > arch/arm64/kernel/elfcore.c:114:9: note: in expansion of macro 'for_each_mte_vma' > > 114 | for_each_mte_vma(current, vma) { > > | ^~~~~~~~~~~~~~~~ > > arch/arm64/kernel/elfcore.c:13:57: error: 'struct vm_area_struct' has no member named 'vm_next' > > 13 | for (vma = tsk->mm->mmap; vma; vma = vma->vm_next) \ > > | ^~ > > arch/arm64/kernel/elfcore.c:114:9: note: in expansion of macro 'for_each_mte_vma' > > 114 | for_each_mte_vma(current, vma) { > > | ^~~~~~~~~~~~~~~~ > > > > Caused by commit > > > > b09e8361a4c3 ("mm: Remove the vma linked list") > > > > interacting with commit > > > > 6dd8b1a0b6cb ("arm64: mte: Dump the MTE tags in the core file") > > > > from the arm64 tree. > > Yikes, this is quite a mess. Liam -- how would you like to resolve this? The removal of the vma linked list means tsk->mm->mmap and vma->vm_next are no longer usable. for_each_mte_vma() could be altered to take a vma iterator: #define for_each_mte_vma(vmi, vma) \ if (system_supports_mte()) \ for_each_vma(vmi, vma) \ if (vma->vm_flags & VM_MTE) Then used as such: VMA_ITERATOR(vmi, tsk->mm, 0); ... for_each_mte_vma(vmi, vma) { ... } Where might I find a branch containing this patch? Is it a stand alone or part of a larger series? Liam