public inbox for ecos-discuss@sourceware.org
 help / color / mirror / Atom feed
From: Grant Edwards <grant.b.edwards@gmail.com>
To: ecos-discuss@ecos.sourceware.org
Subject: [ECOS] Cortex-M3 kernel failing certain kernel tests.
Date: Wed, 18 Sep 2013 17:20:00 -0000	[thread overview]
Message-ID: <l1cnbm$2q7$1@ger.gmane.org> (raw)

I'm testing an eCos port to an NXP Cortex-M3 part (very similar to the
existing LPC17xx port), and I'm stuck with some failing kernel tests:

   mutex3
   kmutex3
   stress_threads
   dhrystone   

The rest of the kernel tests all pass.
   
The interrupt controller and system tick timer are all built-in to the
Cortex-M3. That means the only difference between my port my port and
existing ports are some of the setup code, the memory layout, and the
UART used for diag output.

Can I assume that the LPC17xx port passes all the kernel tests?

These tests are run using a very minimal build with the mlqueue
scheduler (no io device drivers, no network, no file support, no
timeslicing).

All four of the failing tests end up hanging.  After the hang, the 1ms
system timer tick dsr continues to run.  The system tick interrupt is
the only one that's unmasked.  I've tried running the tests using
nothing but internal SRAM.  I've tried using external SDRAM.

I've tried disabling all the virtual vector stuff and using a trivial
hard-wired putc() function.  I've tried using different memories for
the application stacks, interrupt stack, and interrupt vector table.

Nothing seems to change: the same four tests keep failing in the same
manner.

I'm beginning to wonder if the common Cortex-M3 code works. Can
somebody say that they've seen the Cortex-M3 code in CVS pass all the
kernel tests?

------------------------------------------------------------------------
FWIW, here's exactly how things fail...


* dhrystone hangs without printing any output.

* stress_threads hangs after printing the version and compile date:

   INFO:<Stress threads test compiled on Sep 18 2013>
   <hangs>
   
* mutex3 and kmutex3 both fail test number 24 and then hang:

   ----- [24] New Cycle: 0x60, Threads 1a inactive, 2a run late, 3a run late -----
   INFO:<Thread 1 running>
   INFO:<Thread 2 running>
   INFO:<Extra thread 2a running>
   INFO:<Thread 3 running>
   INFO:<Extra thread 3a running>
   INFO:<Thread 1 exit>
   INFO:<Checking priority scheme: dynamic-default-inherit>
   INFO:<Extra thread 2a resumed>
   INFO:<Extra thread 2a locked>
   INFO:<Extra thread 2a unlocked>
   INFO:<Extra thread 2a exiting>
   INFO:<Thread 3 exit>
   INFO:<Extra thread 3a resumed>
   INFO:<Extra thread 3a locked>
   INFO:<EFAIL:<Extra thread did not run> Line: 346, File: [...]kernel/current/tests/mutex3.cxx
   <hang>

   ----- [24] New Cycle: 0x60, Threads 1a inactive, 2a run late, 3a run late -----
   INFO:<Thread 1 running>
   INFO:<Thread 2 running>
   INFO:<Extra thread 2a running>
   INFO:<Thread 3 running>
   INFO:<Extra thread 3a running>
   INFO:<Thread 1 exit>
   INFO:<Checking priority scheme: dynamic-default-inherit>
   INFO:<Extra thread 2a resumed>
   INFO:<Extra thread 2a locked>
   INFO:<Extra thread 2a unlocked>
   INFO:<Extra thread 2a exiting>
   INFO:<Thread 3 exit>
   INFO:<Extra thread 3a resumed>
   INFO:<Extra thread 3a locked>
   INFO:<EFAIL:<Extra thread did not run> Line: 353, File: [...]kernel/current/tests/kmutex3.c
   <hang>

-- 
Grant Edwards               grant.b.edwards        Yow! NANCY!!  Why is
                                  at               everything RED?!
                              gmail.com            


-- 
Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos
and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss

             reply	other threads:[~2013-09-18 17:20 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-09-18 17:20 Grant Edwards [this message]
2013-09-19 19:30 ` [ECOS] " Grant Edwards
2013-09-19 20:37   ` Grant Edwards

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='l1cnbm$2q7$1@ger.gmane.org' \
    --to=grant.b.edwards@gmail.com \
    --cc=ecos-discuss@ecos.sourceware.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).