LinuxPPC-Dev Archive on lore.kernel.org
 help / color / mirror / Atom feed
From: Christian Zigotzky <chzigotzky@xenosoft.de>
To: linuxppc-dev <linuxppc-dev@lists.ozlabs.org>
Cc: "R.T.Dickinson" <rtd@a-eon.com>,
	Darren Stevens <darren@stevens-zone.net>
Subject: PowerPC fixes 5.1-3: CONFIG_SPARSEMEM doesn't exist in the kernel source code
Date: Mon, 25 Mar 2019 13:23:26 +0100	[thread overview]
Message-ID: <656507ca-141f-2a37-5487-1acd55f1223e@xenosoft.de> (raw)
In-Reply-To: <675068dc-3874-4ff3-fdf3-8b96b8e43574@xenosoft.de>

I was able to activate CONFIG_SPARSEMEM in the kernel configuration. But 
does the P.A. Semi Nemo board need this option?

-- Christian

On 25 March 2019 at 12:00PM, Christian Zigotzky wrote:
> Hi All,
>
> I wasn't able to compile the RC2 today because of the following error 
> messages:
>
>   CC      arch/powerpc/mm/slb.o
> In file included from ./arch/powerpc/include/asm/book3s/64/mmu.h:39:0,
>                  from ./arch/powerpc/include/asm/mmu.h:360,
>                  from ./arch/powerpc/include/asm/lppaca.h:36,
>                  from ./arch/powerpc/include/asm/paca.h:21,
>                  from ./arch/powerpc/include/asm/current.h:16,
>                  from ./include/linux/thread_info.h:21,
>                  from ./include/asm-generic/preempt.h:5,
>                  from ./arch/powerpc/include/generated/asm/preempt.h:1,
>                  from ./include/linux/preempt.h:78,
>                  from ./include/linux/spinlock.h:51,
>                  from ./include/linux/mmzone.h:8,
>                  from ./include/linux/gfp.h:6,
>                  from ./include/linux/mm.h:10,
>                  from ./arch/powerpc/include/asm/cacheflush.h:12,
>                  from ./arch/powerpc/include/asm/asm-prototypes.h:16,
>                  from arch/powerpc/mm/slb.c:17:
> ./arch/powerpc/include/asm/book3s/64/mmu-hash.h:584:6: warning: 
> "MAX_PHYSMEM_BITS" is not defined [-Wundef]
>  #if (MAX_PHYSMEM_BITS > MAX_EA_BITS_PER_CONTEXT)
>       ^
> arch/powerpc/mm/slb.c: In function 'slb_allocate_kernel':
> arch/powerpc/mm/slb.c:697:37: error: 'MAX_PHYSMEM_BITS' undeclared 
> (first use in this function)
>    if ((ea & ~REGION_MASK) > (1UL << MAX_PHYSMEM_BITS))
>                                      ^
> arch/powerpc/mm/slb.c:697:37: note: each undeclared identifier is 
> reported only once for each function it appears in
> scripts/Makefile.build:278: recipe for target 'arch/powerpc/mm/slb.o' 
> failed
> make[3]: *** [arch/powerpc/mm/slb.o] Error 1
> scripts/Makefile.build:489: recipe for target 'arch/powerpc/mm' failed
> make[2]: *** [arch/powerpc/mm] Error 2
> /home/christian/Downloads/a/Makefile:1046: recipe for target 
> 'arch/powerpc' failed
> make[1]: *** [arch/powerpc] Error 2
> Makefile:170: recipe for target 'sub-make' failed
> make: *** [sub-make] Error 2
>
> -----
>
> The variable MAX_PHYSMEM_BITS isn't defined. The problem is in the 
> last PowerPC fixes 5.1-3: 
> https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?h=v5.1-rc2&id=a5ed1e96cafde5ba48638f486bfca0685dc6ddc9
>
> Commit log: powerpc/mm: Only define MAX_PHYSMEM_BITS in SPARSEMEM 
> configurations
>
> Problematic fix:
>
> diff --git a/arch/powerpc/include/asm/mmu.h 
> b/arch/powerpc/include/asm/mmu.h
> index d34ad1657d7b..598cdcdd1355 100644
> --- a/arch/powerpc/include/asm/mmu.h
> +++ b/arch/powerpc/include/asm/mmu.h
> @@ -352,7 +352,7 @@ static inline bool strict_kernel_rwx_enabled(void)
>  #if defined(CONFIG_SPARSEMEM_VMEMMAP) && 
> defined(CONFIG_SPARSEMEM_EXTREME) &&   \
>     defined (CONFIG_PPC_64K_PAGES)
>  #define MAX_PHYSMEM_BITS        51
> -#else
> +#elif defined(CONFIG_SPARSEMEM)
>  #define MAX_PHYSMEM_BITS        46
>  #endif
>
> The first if statement isn't successfull because the variables 
> CONFIG_SPARSEMEM_EXTREME and CONFIG_PPC_64K_PAGES aren't activated in 
> our kernel configuration. Therefore we need MAX_PHYSMEM_BITS 46 for 
> our Nemo board. Unfortunately CONFIG_SPARSEMEM doesn't exist in the 
> kernel source code so we can't activate it in the kernel config.
>
> I replaced '#elif defined(CONFIG_SPARSEMEM)' with '#else' and after 
> that the compiling of the RC2 works again.
>
> Please check if CONFIG_SPARSEMEM exists.
>
> Thanks,
> Christian


      reply	other threads:[~2019-03-25 12:28 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-03-25 11:00 PowerPC fixes 5.1-3: CONFIG_SPARSEMEM doesn't exist in the kernel source code Christian Zigotzky
2019-03-25 12:23 ` Christian Zigotzky [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=656507ca-141f-2a37-5487-1acd55f1223e@xenosoft.de \
    --to=chzigotzky@xenosoft.de \
    --cc=darren@stevens-zone.net \
    --cc=linuxppc-dev@lists.ozlabs.org \
    --cc=rtd@a-eon.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox