← Back to team overview

linaro-release team mailing list archive

Re: [Bug 859473] Re: CI kernels causing many "Illegal Instruction"s

 

On Tue, Oct 18, 2011 at 12:34:33PM -0000, Scott Bambrough wrote:
> Some notes from the LT's on Thumb2 kernels (CONFIG_THUMB2_KERNEL=y)
> 
> TI: The LT tested it when Dave Martin sent out the call, it blows chunks
> for us in power management patches on tracking -->
> 
> ''From the crash dump, the faulting code seems to be:
> 
>          f503 7182       add.w   r1, r3, #260    ; 0x104
> **      e851 0f00       ldrex   r0, [r1] **
>          f100 0001       add.w   r0, r0, #1
> 
> r1 is 0x53555151, which is looks more likely to be garbage than to be a
> real, but misaligned, address.  I guess we'll need to figure out where
> that value is coming from...''
> 
> It's stuck at the moment.
> 
> Freescale: The LT is currently having some difficulties building the
> kernel completely with Thumb2 instructions. The major reason is the
> suspend/resume code which is very SoC specific and low level, uses ARM
> instructions which they need to convert into thumb2 compatible firstly.
> It's currently on their wish list.

omap3 had some problems of this sort.  To avoid needless churn, we
simply kept some of the affected code as ARM for now.

See
https://wiki.linaro.org/WorkingGroups/Kernel/Thumb2Guide#Firmware_Interactions
for an example of how this was implemented.

It is likely that most of all of the affected code can be made Thumb-2
compatible, but building selected snippets as ARM is a useful first
step, and still allows the rest of the kernel to be build in Thumb-2.

If you have a log from make -k, that would also be useful for
identifying how to fix the build failures.

Cheers
---Dave

-- 
You received this bug notification because you are a member of Linaro
Release Team, which is subscribed to the bug report.
https://bugs.launchpad.net/bugs/859473

Title:
  CI kernels causing many "Illegal Instruction"s

Status in LAVA Validation Lab:
  Invalid
Status in LAVA Automated Testing Framework:
  Invalid
Status in Linaro CI:
  Confirmed

Bug description:
  Recently there have been lots of validation failures for kernels from
  CI.

  These failures manifest as "Illegal Instruction" errors all over the logs
  (not just during tests, but booting as well.)

  It seems that the kernel is causing a lot of SIGILLs, but we don't know
  why yet.

  To reproduce
  ------------

  Combining

  http://ci.linaro.org/kernel_hwpack/omap3/hwpack_linaro-omap3_20111007-0028_armel_supported.tar.gz
  http://snapshots.linaro.org/11.05-daily/linaro-nano/20111005/1/images/tar/nano-n-tar-20111005-1.tar.gz

  with linaro-media-create (--rootfs ext2) should give you an image that
  shows the problem.

  Information wanted
  ------------------

  There are currently two things that we would like more information on to try
  and narrow down the cause of the problem.

  1) A core file from a crashing application

  To get this

    Create the image as described above
    Boot in to it
    Run "ulimit -c 1024"
    Run "hwclock"
    Watch it crash with "Illegal Instruction (core dumped)"
    Get that core from the filesystem.

  2) Test a defconfig build

  If this succeeds then it suggests a problem with the way that the kernel is
  being built on ci.linaro.org.

  To do this

    Get the tip of linus' tree
    Build with omap2plus_defconfig
    Boot the resulting kernel

  If that shows no SIGILL problems, then try a cross-build from an x86
  host.

  If neither of those show problems then we can concentrate on
  ci.linaro.org.

To manage notifications about this bug go to:
https://bugs.launchpad.net/lava-lab/+bug/859473/+subscriptions


References