Re: [PATCH] mm/vmalloc: track which page-table levels were modified

Joerg Roedel
2020-06-09T16:24:01Z

Hi Guenter,

On Tue, Jun 09, 2020 at 07:15:42AM -0700, Guenter Roeck wrote:
> To build csky images, you have to disable CONFIG_FRAME_POINTER or use a
> non-upstream compiler. To build any images reliably, you have to disable
> CONFIG_GCC_PLUGIN_RANDSTRUCT or use a version of gcc old enough to not
> support it (gcc 6.x is fine). For mips, you have to specify ARCH and
> CROSS_COMPILE as environment variables.

My test setup builds defconfigs for all architectures using the gcc-9.3
based cross-compilers from kernel.org (except the ones I have no
compiler for). That used to work for CSky and MIPS(64) when working on
my vmalloc changes.

On MIPS the build failure looks like some Makefile breakage, but I
didn't dive deeper into that.

For CSky the compiler complains about not supporting '-mbacktrace'.

> alpha is a lost case. The offending commit is 0f1c9688a19 ("tty/sysrq:
> alpha: export and use __sysrq_get_key_op()"); it looks like that wasn't
> build tested. It can not be reverted easily because of subsequent changes.

The below diff fixed the alpha build for me, but I am sure another fix
is already queued somewhere.

diff --git a/arch/alpha/kernel/setup.c b/arch/alpha/kernel/setup.c
index 6fa802c495b4..8f4ad63a3a9a 100644
--- a/arch/alpha/kernel/setup.c
+++ b/arch/alpha/kernel/setup.c
@@ -431,8 +431,13 @@ register_cpus(void)
arch_initcall(register_cpus);

#ifdef CONFIG_MAGIC_SYSRQ
+static void sysrq_reboot_handler(int unused)
+{
+ machine_halt();
+}
+
static const struct sysrq_key_op srm_sysrq_reboot_op = {
- .handler = machine_halt,
+ .handler = sysrq_reboot_handler,
.help_msg = "reboot(b)",
.action_msg = "Resetting",
.enable_mask = SYSRQ_ENABLE_BOOT,