Skip to content

ARM: Disable outer cache before kexec call -V3

Andrea Paterniani linux-arm-kernel 1 version New

Get series with b4
b4 am [email protected]

Versions newest first

  1. v1 Latest0 of 2 patches 0 repliesNew

Patches in v1 No applies recorded yet

None of the 2 patches the cover letter announces are in this archive.

Reviews trailers per patch

No Reviewed-by, Acked-by or Tested-by trailers for v1 yet.

Read the v1 thread

Cover letter [patch 0/2] ARM: Disable outer cache before kexec call -V3

Il 03/08/2010 19.36, Gadiyar, Anand ha scritto:

Quoted 19 lines
Quoted 17 lines · Andrea Paterniani

Hi,
I have applied your patches to kernel 2.6.35-rc4 running on my beagleboard.
I'm using kexec-tools-2.0.1.

My u-boot bootargs is:

      console=ttyS2,115200n8 root=/dev/mmcblk0p2 rw rootfstype=ext3 rootwait ip=192.168.2.13::255.255.255.0

To restart the system I type:

Quoted 3 lines

sync
kexec -l /boot/zImage --append="console=ttyS2,115200n8 root=/dev/mmcblk0p2 rw rootfstype=ext3 rootwait ip=192.168.2.13::255.255.255.0" kexec -e

Not every time the system restart.
In some cases no output on the console after the following:
Bye!
Uncompressing Linux... done, booting the kernel.

Quoted 7 lines
Quoted 3 lines

Any idea?

Can you try building your kernel with CONFIG_EARLY_PRINTK, and add the word "earlyprintk" to your bootargs?

I built the kernel with (also verified via zcat /proc/config.gz | grep ... after succesfull kexec):

CONFIG_EARLY_PRINTK=y
CONFIG_DEBUG_LL=y

I load new kernel zImage via:
kexec -l /boot/zImage --append="earlyprintk console=ttyS2,115200n8 root=/dev/mmcblk0p2 rw rootfstype=ext3 rootwait ip=192.168.2.13::255.255.255.0"

but when kexec fails I got only the following:
Bye!
Uncompressing Linux... done, booting the kernel.

What do I miss whith earlyprintk?

Perhaps I did not enough tests, but at the moment it seems that system boot with nfs rootfs followed by kexec with mmc rootfs works. Problems arise with system boot and kexec both with mmc rootfs.

Regards,
- Andrea

Quoted 30 lines
Quoted 24 lines

Il 05/07/2010 13.52, Thomas Gleixner ha scritto:

Quoted 20 lines

The following patch series addresses the problem that the kexec code does not disable the outer cache before disabling the inner cache and jumping into the new kernel. This results in random crashes of the new kernel.

Changes since version 2:

- Use CLEAN_INV_WAY in l2x0_flush_all according to Catalin

- Rename outer_cache_disable() to outer_disable()

- Added a BUG_ON() when l2x0_inv_all() is called with L2 enabled.

Thanks,

tglx

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel at lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel