Good afternoon Russell and friends,
I noticed that my vexpress-TC2 platform stopped booting when moving to
kernel v4.12-rc1 (same with -rc2 and 3). The last time things worked
properly was on v4.11. I did a bisect between v4.11 and v4.12-rc1 and
ended up on [1], hence this email.
Since CONFIG_ARM_VIRT_EXT is selected by default I removed the
"#ifdef CONFIG_ARM_VIRT_EXT" section in the last hunk of the patch and
the system sprung up to life again.
Compiler: arm-linux-gnueabi-gcc (Ubuntu/Linaro 5.4.0-6ubuntu1~16.04.4)
5.4.0 20160609
Kernel command line: console=ttyAMA0,38400 loglevel=8 root=/dev/sda2 rootwait
U-boot:
## Flattened Device Tree blob at 82000000
Booting using the fdt blob at 0x82000000
Loading Ramdisk to 9fcea000, end 9feea6d1 ... OK
Loading Device Tree to 9fce2000, end 9fce9ad8 ... OK
I'm not sure what else you need at this time - simply get back to me
with what I'm missing and I'll be happy to provided. I'm also
offering to test patches.
Many thanks,
Mathieu
[1]. 9da5ac236de6 ARM: soft-reboot into same mode that we entered the kernel
From: linux@armlinux.org.uk (Russell King - ARM Linux) Date: 2017-06-02 22:24:50
On Fri, Jun 02, 2017 at 04:16:59PM -0600, Mathieu Poirier wrote:
Good afternoon Russell and friends,
I noticed that my vexpress-TC2 platform stopped booting when moving to
kernel v4.12-rc1 (same with -rc2 and 3). The last time things worked
properly was on v4.11. I did a bisect between v4.11 and v4.12-rc1 and
ended up on [1], hence this email.
Since CONFIG_ARM_VIRT_EXT is selected by default I removed the
"#ifdef CONFIG_ARM_VIRT_EXT" section in the last hunk of the patch and
the system sprung up to life again.
Hmm, this doesn't make much sense. The code in last hunk of the patch
you refer to should only get run during system shutdown, not during
system boot, so I think something else is going on...
Please could you test again, this time rather than removing the #ifdef,
add two "mov r0, r0" there? (So replacing the two instructions that
removing the ifdef would have exposed.)
Thanks.
--
RMK's Patch system: http://www.armlinux.org.uk/developer/patches/
FTTC broadband for 0.8mile line: currently at 9.6Mbps down 400kbps up
according to speedtest.net.
On 2 June 2017 at 16:24, Russell King - ARM Linux [off-list ref] wrote:
On Fri, Jun 02, 2017 at 04:16:59PM -0600, Mathieu Poirier wrote:
quoted
Good afternoon Russell and friends,
I noticed that my vexpress-TC2 platform stopped booting when moving to
kernel v4.12-rc1 (same with -rc2 and 3). The last time things worked
properly was on v4.11. I did a bisect between v4.11 and v4.12-rc1 and
ended up on [1], hence this email.
Since CONFIG_ARM_VIRT_EXT is selected by default I removed the
"#ifdef CONFIG_ARM_VIRT_EXT" section in the last hunk of the patch and
the system sprung up to life again.
Hmm, this doesn't make much sense. The code in last hunk of the patch
you refer to should only get run during system shutdown, not during
system boot, so I think something else is going on...
Please could you test again, this time rather than removing the #ifdef,
add two "mov r0, r0" there? (So replacing the two instructions that
removing the ifdef would have exposed.)
That works - by replacing the original code with a couple of "mov r0,
r0" the system is able to boot again.
From: Marc Zyngier <hidden> Date: 2017-06-05 07:43:41
Hi Mathieu,
On 05/06/17 02:47, Mathieu Poirier wrote:
On 2 June 2017 at 16:24, Russell King - ARM Linux [off-list ref] wrote:
quoted
On Fri, Jun 02, 2017 at 04:16:59PM -0600, Mathieu Poirier wrote:
quoted
Good afternoon Russell and friends,
I noticed that my vexpress-TC2 platform stopped booting when moving to
kernel v4.12-rc1 (same with -rc2 and 3). The last time things worked
properly was on v4.11. I did a bisect between v4.11 and v4.12-rc1 and
ended up on [1], hence this email.
Since CONFIG_ARM_VIRT_EXT is selected by default I removed the
"#ifdef CONFIG_ARM_VIRT_EXT" section in the last hunk of the patch and
the system sprung up to life again.
Hmm, this doesn't make much sense. The code in last hunk of the patch
you refer to should only get run during system shutdown, not during
system boot, so I think something else is going on...
Please could you test again, this time rather than removing the #ifdef,
add two "mov r0, r0" there? (So replacing the two instructions that
removing the ifdef would have exposed.)
That works - by replacing the original code with a couple of "mov r0,
r0" the system is able to boot again.
That's quite peculiar. It would tend to indicate that something resets
a CPU behind our back, leading to all kind of ugly things. Grepping
around, my bet is on MCPM, which seems to do all kind of horrible
things. Can you give the following hack a go?
@@ -300,7 +300,7 @@ void mcpm_cpu_power_down(void)*ontheCPU.*/phys_reset=(phys_reset_t)(unsignedlong)__pa_symbol(cpu_reset);-phys_reset(__pa_symbol(mcpm_entry_point));+phys_reset(__pa_symbol(mcpm_entry_point),is_hyp_mode_available());/* should never get here */BUG();
@@ -389,7 +389,7 @@ static int __init nocache_trampoline(unsigned long _arg)__mcpm_cpu_down(cpu,cluster);phys_reset=(phys_reset_t)(unsignedlong)__pa_symbol(cpu_reset);-phys_reset(__pa_symbol(mcpm_entry_point));+phys_reset(__pa_symbol(mcpm_entry_point),is_hyp_mode_available());BUG();}
Can you let me know if that helps? If it does, we can then think of cleaning
up the dangerous duplication of functionality...
Thanks,
M.
--
Jazz is not dead. It just smells funny...
Good afternoon Russell and friends,
I noticed that my vexpress-TC2 platform stopped booting when moving to
kernel v4.12-rc1 (same with -rc2 and 3). The last time things worked
properly was on v4.11. I did a bisect between v4.11 and v4.12-rc1 and
ended up on [1], hence this email.
Since CONFIG_ARM_VIRT_EXT is selected by default I removed the
"#ifdef CONFIG_ARM_VIRT_EXT" section in the last hunk of the patch and
the system sprung up to life again.
Compiler: arm-linux-gnueabi-gcc (Ubuntu/Linaro 5.4.0-6ubuntu1~16.04.4)
5.4.0 20160609
Kernel command line: console=ttyAMA0,38400 loglevel=8 root=/dev/sda2 rootwait
U-boot:
## Flattened Device Tree blob at 82000000
Booting using the fdt blob at 0x82000000
Loading Ramdisk to 9fcea000, end 9feea6d1 ... OK
Loading Device Tree to 9fce2000, end 9fce9ad8 ... OK
I'm not sure what else you need at this time - simply get back to me
with what I'm missing and I'll be happy to provided. I'm also
offering to test patches.
From: Marc Zyngier <hidden> Date: 2017-06-05 09:27:05
On 05/06/17 10:18, Sudeep Holla wrote:
On 02/06/17 23:16, Mathieu Poirier wrote:
quoted
Good afternoon Russell and friends,
I noticed that my vexpress-TC2 platform stopped booting when moving to
kernel v4.12-rc1 (same with -rc2 and 3). The last time things worked
properly was on v4.11. I did a bisect between v4.11 and v4.12-rc1 and
ended up on [1], hence this email.
Since CONFIG_ARM_VIRT_EXT is selected by default I removed the
"#ifdef CONFIG_ARM_VIRT_EXT" section in the last hunk of the patch and
the system sprung up to life again.
Compiler: arm-linux-gnueabi-gcc (Ubuntu/Linaro 5.4.0-6ubuntu1~16.04.4)
5.4.0 20160609
Kernel command line: console=ttyAMA0,38400 loglevel=8 root=/dev/sda2 rootwait
U-boot:
## Flattened Device Tree blob at 82000000
Booting using the fdt blob at 0x82000000
Loading Ramdisk to 9fcea000, end 9feea6d1 ... OK
Loading Device Tree to 9fce2000, end 9fce9ad8 ... OK
I'm not sure what else you need at this time - simply get back to me
with what I'm missing and I'll be happy to provided. I'm also
offering to test patches.
Fixed[1] and must be queued in rmk's tree[2].
Ah, brilliant. Thanks Sudeep.
M.
--
Jazz is not dead. It just smells funny...