[PATCH 08/10] arm64/kexec: Add core kexec support

Arun Chandran achandran at mvista.com
Thu Nov 13 01:52:28 PST 2014


Hi Geoff,

On Thu, Nov 13, 2014 at 3:24 AM, Geoff Levand <geoff at infradead.org> wrote:
> Hi Arun, Dave,
>
> On Fri, 2014-11-07 at 16:31 +0530, Arun Chandran wrote:
>> I have issue in flushing with L3 cache on . kexec does not reboot with L3.
>> Is the above logic of flushing (clean + invalidate) after copying the
>> image data is correct? Is there exist the danger of image data being
>> overwritten by invalid cache lines?
>>
>> I tried with only invalidate(dc ivac); but that also not seems to be
>> working.
>>
>> Finally I moved the entire flushing logic before copying then
>> things started working. Please see the code change below.
>
> I added this with some minor changes.  Please let me know if
> it works for you.
>
I tested master branch for both LE and BE booting with the
script below.

genericarmv8# cat /etc/rc5.d/S60reboot.sh
--------------------------------------
#!/bin/sh

i=$RANDOM

j=$(( $i % 2))

count=`cat /home/root/cnt`

if [ $j -eq 0 ] ; then
echo "KEXEC rebootng to LE"
/usr/local/sbin/kexec --lite -l /home/root/vmlinux_LE
--command-line="root=/dev/nfs rw
nfsroot=10.162.103.145:/nfs_root/linaro-image-lamp-genericarmv8,nfsvers=3
ip=:::::eth0:dhcp panic=1 console=ttyS0,115200
earlycon=uart8250,mmio32,0x1c020000"
echo $RANDOM > /home/root/"$count""_LE"
else
echo "KEXEC rebootng to BE"
/usr/local/sbin/kexec --lite -l /home/root/vmlinux_BE
--command-line="root=/dev/nfs rw
nfsroot=10.162.103.145:/nfs_root/linaro-image-lamp-genericarmv8b,nfsvers=3
ip=:::::eth0:dhcp panic=1 console=ttyS0,115200
earlycon=uart8250,mmio32,0x1c020000"
echo $RANDOM > /home/root/"$count""_BE"
fi
count=$(( $count + 1 ))
echo "$count">/home/root/cnt

/usr/local/sbin/kexec --lite -e
---------------------------------

It rebooted without any issues for more than 1 hour.

--Arun



More information about the linux-arm-kernel mailing list