Message ID | 1561555260-17335-1-git-send-email-anshuman.khandual@arm.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | powerpc/64s/radix: Define arch_ioremap_p4d_supported() | expand |
Hi Anshuman, On Wed, 26 Jun 2019 18:51:00 +0530 Anshuman Khandual <anshuman.khandual@arm.com> wrote: > > Recent core ioremap changes require HAVE_ARCH_HUGE_VMAP subscribing archs > provide arch_ioremap_p4d_supported() failing which will result in a build > failure like the following. > > ld: lib/ioremap.o: in function `.ioremap_huge_init': > ioremap.c:(.init.text+0x3c): undefined reference to > `.arch_ioremap_p4d_supported' > > This defines a stub implementation for arch_ioremap_p4d_supported() keeping > it disabled for now to fix the build problem. > > Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org> > Cc: Paul Mackerras <paulus@samba.org> > Cc: Michael Ellerman <mpe@ellerman.id.au> > Cc: "Aneesh Kumar K.V" <aneesh.kumar@linux.ibm.com> > Cc: Nicholas Piggin <npiggin@gmail.com> > Cc: Andrew Morton <akpm@linux-foundation.org> > Cc: Stephen Rothwell <sfr@canb.auug.org.au> > Cc: linuxppc-dev@lists.ozlabs.org > Cc: linux-kernel@vger.kernel.org > Cc: linux-next@vger.kernel.org > > Signed-off-by: Anshuman Khandual <anshuman.khandual@arm.com> > --- > This has been just build tested and fixes the problem reported earlier. > > arch/powerpc/mm/book3s64/radix_pgtable.c | 5 +++++ > 1 file changed, 5 insertions(+) > > diff --git a/arch/powerpc/mm/book3s64/radix_pgtable.c b/arch/powerpc/mm/book3s64/radix_pgtable.c > index 8904aa1..c81da88 100644 > --- a/arch/powerpc/mm/book3s64/radix_pgtable.c > +++ b/arch/powerpc/mm/book3s64/radix_pgtable.c > @@ -1124,6 +1124,11 @@ void radix__ptep_modify_prot_commit(struct vm_area_struct *vma, > set_pte_at(mm, addr, ptep, pte); > } > > +int __init arch_ioremap_p4d_supported(void) > +{ > + return 0; > +} > + > int __init arch_ioremap_pud_supported(void) > { > /* HPT does not cope with large pages in the vmalloc area */ > -- > 2.7.4 > I will add that as a merge resolution patch for the akpm-current tree merge today.
On 06/26/2019 01:21 PM, Anshuman Khandual wrote: > Recent core ioremap changes require HAVE_ARCH_HUGE_VMAP subscribing archs > provide arch_ioremap_p4d_supported() failing which will result in a build > failure like the following. > > ld: lib/ioremap.o: in function `.ioremap_huge_init': > ioremap.c:(.init.text+0x3c): undefined reference to > `.arch_ioremap_p4d_supported' > > This defines a stub implementation for arch_ioremap_p4d_supported() keeping > it disabled for now to fix the build problem. > > Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org> > Cc: Paul Mackerras <paulus@samba.org> > Cc: Michael Ellerman <mpe@ellerman.id.au> > Cc: "Aneesh Kumar K.V" <aneesh.kumar@linux.ibm.com> > Cc: Nicholas Piggin <npiggin@gmail.com> > Cc: Andrew Morton <akpm@linux-foundation.org> > Cc: Stephen Rothwell <sfr@canb.auug.org.au> > Cc: linuxppc-dev@lists.ozlabs.org > Cc: linux-kernel@vger.kernel.org > Cc: linux-next@vger.kernel.org > > Signed-off-by: Anshuman Khandual <anshuman.khandual@arm.com> Add a Fixes: tag ? For instance: Fixes: d909f9109c30 ("powerpc/64s/radix: Enable HAVE_ARCH_HUGE_VMAP") Christophe > --- > This has been just build tested and fixes the problem reported earlier. > > arch/powerpc/mm/book3s64/radix_pgtable.c | 5 +++++ > 1 file changed, 5 insertions(+) > > diff --git a/arch/powerpc/mm/book3s64/radix_pgtable.c b/arch/powerpc/mm/book3s64/radix_pgtable.c > index 8904aa1..c81da88 100644 > --- a/arch/powerpc/mm/book3s64/radix_pgtable.c > +++ b/arch/powerpc/mm/book3s64/radix_pgtable.c > @@ -1124,6 +1124,11 @@ void radix__ptep_modify_prot_commit(struct vm_area_struct *vma, > set_pte_at(mm, addr, ptep, pte); > } > > +int __init arch_ioremap_p4d_supported(void) > +{ > + return 0; > +} > + > int __init arch_ioremap_pud_supported(void) > { > /* HPT does not cope with large pages in the vmalloc area */ >
Anshuman Khandual <anshuman.khandual@arm.com> writes: > Recent core ioremap changes require HAVE_ARCH_HUGE_VMAP subscribing archs > provide arch_ioremap_p4d_supported() failing which will result in a build > failure like the following. > > ld: lib/ioremap.o: in function `.ioremap_huge_init': > ioremap.c:(.init.text+0x3c): undefined reference to > `.arch_ioremap_p4d_supported' > > This defines a stub implementation for arch_ioremap_p4d_supported() keeping > it disabled for now to fix the build problem. The easiest option is for this to be folded into your patch that creates the requirement for arch_ioremap_p4d_supported(). Andrew might do that for you, or you could send a v2. This looks fine from a powerpc POV: Acked-by: Michael Ellerman <mpe@ellerman.id.au> cheers > Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org> > Cc: Paul Mackerras <paulus@samba.org> > Cc: Michael Ellerman <mpe@ellerman.id.au> > Cc: "Aneesh Kumar K.V" <aneesh.kumar@linux.ibm.com> > Cc: Nicholas Piggin <npiggin@gmail.com> > Cc: Andrew Morton <akpm@linux-foundation.org> > Cc: Stephen Rothwell <sfr@canb.auug.org.au> > Cc: linuxppc-dev@lists.ozlabs.org > Cc: linux-kernel@vger.kernel.org > Cc: linux-next@vger.kernel.org > > Signed-off-by: Anshuman Khandual <anshuman.khandual@arm.com> > --- > This has been just build tested and fixes the problem reported earlier. > > arch/powerpc/mm/book3s64/radix_pgtable.c | 5 +++++ > 1 file changed, 5 insertions(+) > > diff --git a/arch/powerpc/mm/book3s64/radix_pgtable.c b/arch/powerpc/mm/book3s64/radix_pgtable.c > index 8904aa1..c81da88 100644 > --- a/arch/powerpc/mm/book3s64/radix_pgtable.c > +++ b/arch/powerpc/mm/book3s64/radix_pgtable.c > @@ -1124,6 +1124,11 @@ void radix__ptep_modify_prot_commit(struct vm_area_struct *vma, > set_pte_at(mm, addr, ptep, pte); > } > > +int __init arch_ioremap_p4d_supported(void) > +{ > + return 0; > +} > + > int __init arch_ioremap_pud_supported(void) > { > /* HPT does not cope with large pages in the vmalloc area */ > -- > 2.7.4
On 06/27/2019 10:18 AM, Michael Ellerman wrote: > Anshuman Khandual <anshuman.khandual@arm.com> writes: >> Recent core ioremap changes require HAVE_ARCH_HUGE_VMAP subscribing archs >> provide arch_ioremap_p4d_supported() failing which will result in a build >> failure like the following. >> >> ld: lib/ioremap.o: in function `.ioremap_huge_init': >> ioremap.c:(.init.text+0x3c): undefined reference to >> `.arch_ioremap_p4d_supported' >> >> This defines a stub implementation for arch_ioremap_p4d_supported() keeping >> it disabled for now to fix the build problem. > > The easiest option is for this to be folded into your patch that creates > the requirement for arch_ioremap_p4d_supported(). > > Andrew might do that for you, or you could send a v2. > > This looks fine from a powerpc POV: > > Acked-by: Michael Ellerman <mpe@ellerman.id.au> > > cheers Hello Stephen/Michael/Andrew, On linux-next (next-20190627) this change has already been applied though a merge commit 153083a99fe431 ("Merge branch 'akpm-current/current'"). So we are good on this ? Or shall I send out a V2 for the original patch. Please suggest. Thank you. - Anshuman
Hi Anshuman, On Fri, 28 Jun 2019 09:14:46 +0530 Anshuman Khandual <anshuman.khandual@arm.com> wrote: > > On linux-next (next-20190627) this change has already been applied though a > merge commit 153083a99fe431 ("Merge branch 'akpm-current/current'"). So we > are good on this ? Or shall I send out a V2 for the original patch. Please > suggest. Thank you. Please send Andrew a v2.
diff --git a/arch/powerpc/mm/book3s64/radix_pgtable.c b/arch/powerpc/mm/book3s64/radix_pgtable.c index 8904aa1..c81da88 100644 --- a/arch/powerpc/mm/book3s64/radix_pgtable.c +++ b/arch/powerpc/mm/book3s64/radix_pgtable.c @@ -1124,6 +1124,11 @@ void radix__ptep_modify_prot_commit(struct vm_area_struct *vma, set_pte_at(mm, addr, ptep, pte); } +int __init arch_ioremap_p4d_supported(void) +{ + return 0; +} + int __init arch_ioremap_pud_supported(void) { /* HPT does not cope with large pages in the vmalloc area */
Recent core ioremap changes require HAVE_ARCH_HUGE_VMAP subscribing archs provide arch_ioremap_p4d_supported() failing which will result in a build failure like the following. ld: lib/ioremap.o: in function `.ioremap_huge_init': ioremap.c:(.init.text+0x3c): undefined reference to `.arch_ioremap_p4d_supported' This defines a stub implementation for arch_ioremap_p4d_supported() keeping it disabled for now to fix the build problem. Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org> Cc: Paul Mackerras <paulus@samba.org> Cc: Michael Ellerman <mpe@ellerman.id.au> Cc: "Aneesh Kumar K.V" <aneesh.kumar@linux.ibm.com> Cc: Nicholas Piggin <npiggin@gmail.com> Cc: Andrew Morton <akpm@linux-foundation.org> Cc: Stephen Rothwell <sfr@canb.auug.org.au> Cc: linuxppc-dev@lists.ozlabs.org Cc: linux-kernel@vger.kernel.org Cc: linux-next@vger.kernel.org Signed-off-by: Anshuman Khandual <anshuman.khandual@arm.com> --- This has been just build tested and fixes the problem reported earlier. arch/powerpc/mm/book3s64/radix_pgtable.c | 5 +++++ 1 file changed, 5 insertions(+)