riscv: Fixup compile error with !MMU

Message ID 20221207091112.2258674-1-guoren@kernel.org
State New
Headers
Series riscv: Fixup compile error with !MMU |

Commit Message

Guo Ren Dec. 7, 2022, 9:11 a.m. UTC
  From: Guo Ren <guoren@linux.alibaba.com>

Current nommu_virt_defconfig can't compile:

In file included from
arch/riscv/kernel/crash_core.c:3:
arch/riscv/kernel/crash_core.c:
In function 'arch_crash_save_vmcoreinfo':
arch/riscv/kernel/crash_core.c:8:27:
error: 'VA_BITS' undeclared (first use in this function)
    8 |         VMCOREINFO_NUMBER(VA_BITS);
      |                           ^~~~~~~

Add MMU dependency for KEXEC_FILE.

Fixes: 6261586e0c91 ("RISC-V: Add kexec_file support")
Reported-by: Conor Dooley <conor@kernel.org>
Reported-by: kernel test robot <lkp@intel.com>
Signed-off-by: Guo Ren <guoren@kernel.org>
Signed-off-by: Guo Ren <guoren@linux.alibaba.com>
---
 arch/riscv/Kconfig | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
  

Comments

Conor Dooley Dec. 7, 2022, 9:32 a.m. UTC | #1
On Wed, Dec 07, 2022 at 04:11:12AM -0500, guoren@kernel.org wrote:
> From: Guo Ren <guoren@linux.alibaba.com>
> 
> Current nommu_virt_defconfig can't compile:
> 
> In file included from
> arch/riscv/kernel/crash_core.c:3:
> arch/riscv/kernel/crash_core.c:
> In function 'arch_crash_save_vmcoreinfo':
> arch/riscv/kernel/crash_core.c:8:27:
> error: 'VA_BITS' undeclared (first use in this function)
>     8 |         VMCOREINFO_NUMBER(VA_BITS);
>       |                           ^~~~~~~
> 
> Add MMU dependency for KEXEC_FILE.
> 
> Fixes: 6261586e0c91 ("RISC-V: Add kexec_file support")
> Reported-by: Conor Dooley <conor@kernel.org>

FWIW (but certainly don't resend for this)
s/conor@kernel.org/conor.dooley@microchip.com

Thanks for the quick fix, there's other issues w/ that config for me,
but this fixed the kexec bits :)
Tested-by: Conor Dooley <conor.dooley@microchip.com>

> Reported-by: kernel test robot <lkp@intel.com>
> Signed-off-by: Guo Ren <guoren@kernel.org>
> Signed-off-by: Guo Ren <guoren@linux.alibaba.com>
> ---
>  arch/riscv/Kconfig | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/arch/riscv/Kconfig b/arch/riscv/Kconfig
> index ef8d66de5f38..91319044fd13 100644
> --- a/arch/riscv/Kconfig
> +++ b/arch/riscv/Kconfig
> @@ -496,7 +496,7 @@ config KEXEC_FILE
>  	select KEXEC_CORE
>  	select KEXEC_ELF
>  	select HAVE_IMA_KEXEC if IMA
> -	depends on 64BIT
> +	depends on 64BIT && MMU
>  	help
>  	  This is new version of kexec system call. This system call is
>  	  file based and takes file descriptors as system call argument
> -- 
> 2.36.1
>
  
Guo Ren Dec. 7, 2022, 2:01 p.m. UTC | #2
On Wed, Dec 7, 2022 at 5:32 PM Conor Dooley <conor@kernel.org> wrote:
>
> On Wed, Dec 07, 2022 at 04:11:12AM -0500, guoren@kernel.org wrote:
> > From: Guo Ren <guoren@linux.alibaba.com>
> >
> > Current nommu_virt_defconfig can't compile:
> >
> > In file included from
> > arch/riscv/kernel/crash_core.c:3:
> > arch/riscv/kernel/crash_core.c:
> > In function 'arch_crash_save_vmcoreinfo':
> > arch/riscv/kernel/crash_core.c:8:27:
> > error: 'VA_BITS' undeclared (first use in this function)
> >     8 |         VMCOREINFO_NUMBER(VA_BITS);
> >       |                           ^~~~~~~
> >
> > Add MMU dependency for KEXEC_FILE.
> >
> > Fixes: 6261586e0c91 ("RISC-V: Add kexec_file support")
> > Reported-by: Conor Dooley <conor@kernel.org>
>
> FWIW (but certainly don't resend for this)
> s/conor@kernel.org/conor.dooley@microchip.com
>
> Thanks for the quick fix, there's other issues w/ that config for me,
> but this fixed the kexec bits :)
> Tested-by: Conor Dooley <conor.dooley@microchip.com>
Thx for the report and test.

>
> > Reported-by: kernel test robot <lkp@intel.com>
> > Signed-off-by: Guo Ren <guoren@kernel.org>
> > Signed-off-by: Guo Ren <guoren@linux.alibaba.com>
> > ---
> >  arch/riscv/Kconfig | 2 +-
> >  1 file changed, 1 insertion(+), 1 deletion(-)
> >
> > diff --git a/arch/riscv/Kconfig b/arch/riscv/Kconfig
> > index ef8d66de5f38..91319044fd13 100644
> > --- a/arch/riscv/Kconfig
> > +++ b/arch/riscv/Kconfig
> > @@ -496,7 +496,7 @@ config KEXEC_FILE
> >       select KEXEC_CORE
> >       select KEXEC_ELF
> >       select HAVE_IMA_KEXEC if IMA
> > -     depends on 64BIT
> > +     depends on 64BIT && MMU
> >       help
> >         This is new version of kexec system call. This system call is
> >         file based and takes file descriptors as system call argument
> > --
> > 2.36.1
> >
  
Palmer Dabbelt Dec. 13, 2022, 5:39 p.m. UTC | #3
On Wed, 7 Dec 2022 04:11:12 -0500, guoren@kernel.org wrote:
> From: Guo Ren <guoren@linux.alibaba.com>
> 
> Current nommu_virt_defconfig can't compile:
> 
> In file included from
> arch/riscv/kernel/crash_core.c:3:
> arch/riscv/kernel/crash_core.c:
> In function 'arch_crash_save_vmcoreinfo':
> arch/riscv/kernel/crash_core.c:8:27:
> error: 'VA_BITS' undeclared (first use in this function)
>     8 |         VMCOREINFO_NUMBER(VA_BITS);
>       |                           ^~~~~~~
> 
> [...]

Applied, thanks!

[1/1] riscv: Fixup compile error with !MMU
      https://git.kernel.org/palmer/c/c528ef0888b7

Best regards,
  
patchwork-bot+linux-riscv@kernel.org Dec. 13, 2022, 5:40 p.m. UTC | #4
Hello:

This patch was applied to riscv/linux.git (for-next)
by Palmer Dabbelt <palmer@rivosinc.com>:

On Wed,  7 Dec 2022 04:11:12 -0500 you wrote:
> From: Guo Ren <guoren@linux.alibaba.com>
> 
> Current nommu_virt_defconfig can't compile:
> 
> In file included from
> arch/riscv/kernel/crash_core.c:3:
> arch/riscv/kernel/crash_core.c:
> In function 'arch_crash_save_vmcoreinfo':
> arch/riscv/kernel/crash_core.c:8:27:
> error: 'VA_BITS' undeclared (first use in this function)
>     8 |         VMCOREINFO_NUMBER(VA_BITS);
>       |                           ^~~~~~~
> 
> [...]

Here is the summary with links:
  - riscv: Fixup compile error with !MMU
    https://git.kernel.org/riscv/c/c528ef0888b7

You are awesome, thank you!
  

Patch

diff --git a/arch/riscv/Kconfig b/arch/riscv/Kconfig
index ef8d66de5f38..91319044fd13 100644
--- a/arch/riscv/Kconfig
+++ b/arch/riscv/Kconfig
@@ -496,7 +496,7 @@  config KEXEC_FILE
 	select KEXEC_CORE
 	select KEXEC_ELF
 	select HAVE_IMA_KEXEC if IMA
-	depends on 64BIT
+	depends on 64BIT && MMU
 	help
 	  This is new version of kexec system call. This system call is
 	  file based and takes file descriptors as system call argument