From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 9035 invoked by alias); 18 Sep 2013 17:20:21 -0000 Mailing-List: contact ecos-discuss-help@ecos.sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: ecos-discuss-owner@ecos.sourceware.org Received: (qmail 9024 invoked by uid 89); 18 Sep 2013 17:20:20 -0000 Received: from plane.gmane.org (HELO plane.gmane.org) (80.91.229.3) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with (AES256-SHA encrypted) ESMTPS; Wed, 18 Sep 2013 17:20:20 +0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-1.0 required=5.0 tests=AWL,BAYES_00,FREEMAIL_FROM,RDNS_NONE,SPF_FAIL autolearn=no version=3.3.2 X-HELO: plane.gmane.org Received: from list by plane.gmane.org with local (Exim 4.69) (envelope-from ) id 1VMLQC-0005He-3y for ecos-discuss@ecos.sourceware.org; Wed, 18 Sep 2013 19:20:12 +0200 Received: from dsl.comtrol.com ([64.122.56.22]) by main.gmane.org with esmtp (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Wed, 18 Sep 2013 19:20:12 +0200 Received: from grant.b.edwards by dsl.comtrol.com with local (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Wed, 18 Sep 2013 19:20:12 +0200 To: ecos-discuss@ecos.sourceware.org From: Grant Edwards Date: Wed, 18 Sep 2013 17:20:00 -0000 Message-ID: User-Agent: slrn/1.0.1 (Linux) X-IsSubscribed: yes Subject: [ECOS] Cortex-M3 kernel failing certain kernel tests. X-SW-Source: 2013-09/txt/msg00011.txt.bz2 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: * 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: INFO: INFO: INFO: INFO: INFO: INFO: INFO: INFO: INFO: INFO: INFO: INFO: INFO: INFO: Line: 346, File: [...]kernel/current/tests/mutex3.cxx ----- [24] New Cycle: 0x60, Threads 1a inactive, 2a run late, 3a run late ----- INFO: INFO: INFO: INFO: INFO: INFO: INFO: INFO: INFO: INFO: INFO: INFO: INFO: INFO: INFO: Line: 353, File: [...]kernel/current/tests/kmutex3.c -- 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