From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 11201 invoked by alias); 20 Nov 2014 18:34:52 -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 11175 invoked by uid 89); 20 Nov 2014 18:34:51 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=4.4 required=5.0 tests=AWL,BAYES_00,RCVD_IN_DNSWL_NONE,SPF_PASS autolearn=ham version=3.3.2 X-HELO: smtp02.citynetwork.se Received: from mail.citynetwork.se (HELO smtp02.citynetwork.se) (91.123.193.200) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with (AES256-SHA encrypted) ESMTPS; Thu, 20 Nov 2014 18:34:49 +0000 Received: from localhost (localhost [127.0.0.1]) by smtp02.citynetwork.se (Postfix) with ESMTP id 3C726C8078E for ; Thu, 20 Nov 2014 19:34:45 +0100 (CET) Received: from smtp02.citynetwork.se ([127.0.0.1]) by localhost (smtp02.citynetwork.se [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id lqx0T6k-AzZ0 for ; Thu, 20 Nov 2014 19:34:42 +0100 (CET) Received: from mail-vc0-f172.google.com (mail-vc0-f172.google.com [209.85.220.172]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (No client certificate requested) (Authenticated sender: tgorochowik@antmicro.com) by smtp02.citynetwork.se (Postfix) with ESMTPSA id 53CBCC807BD for ; Thu, 20 Nov 2014 19:34:41 +0100 (CET) Received: by mail-vc0-f172.google.com with SMTP id hq11so1661614vcb.17 for ; Thu, 20 Nov 2014 10:34:39 -0800 (PST) MIME-Version: 1.0 X-Received: by 10.221.68.199 with SMTP id xz7mr43803387vcb.7.1416508479428; Thu, 20 Nov 2014 10:34:39 -0800 (PST) Received: by 10.221.45.201 with HTTP; Thu, 20 Nov 2014 10:34:39 -0800 (PST) Date: Thu, 20 Nov 2014 18:34:00 -0000 Message-ID: From: Tomasz Gorochowik To: lesc@zhaw.ch, rrauch@itrgmbh.de, ecos-discuss@sourceware.org Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable X-IsSubscribed: yes Subject: Re: AW: [ECOS] Problem with CPU Load Measurements and gcc-arm-eabi optimization. X-SW-Source: 2014-11/txt/msg00004.txt.bz2 Hello, as an Antmicro employee I would like to add a few words. First of all, we're really glad you're using our eCos port, and we're thankful for your report. Nevertheless in the future I would suggest to create an issue on our github page if you have any problems with our port. We'd be very happy to help, and this way we can do this much faster. This fix has already been merged into our repo, but not into the master branch, it was on a branch called master-next. Right now however we have merged it into master, and the newest eCos version (checked out from eCos CVS today) is present on the master-next branch. Tomasz Gorochowik Antmicro Ltd. www.antmicro.com > Hi Richard > > Thanks for the fast answer. This is a little embarrassing, I managed to f= ind the commit you are referring to: > > http://hg-pub.ecoscentric.com/ecos/rev/041821fb5427 > > The Version of Ecos I (have to) use is a port for the Xilinx Zynq Platfor= m: > https://github.com/antmicro/ecos-mars-zx3 > Why they not just make a ecos package for the hal - instead of forking - = I don't know (I'm quite new to the industry). Their version seems to be bui= lt on the ecos-v3 branch in which the above mentioned commit does not seem = to me merged: > http://hg-pub.ecoscentric.com/ecos-v3_0-branch/file/7d8c61e6225c/packages= /kernel/current/src/common/thread.cxx > > So maybe I should read a bit more about the ecos release model to find ou= t which version I should use in future. > > Serafin > > > > On 17.11.2014 18:47, Richard Rauch wrote: >> >> Hello, >> >> are you sure, that you are using current version of eCos? >> This issue should be already solved. Current version has "volatile" keyw= ord as you proposed! >> >> Richard Rauch >> www.itrgmbh.com >> >> >>> -----Urspr=C3=BCngliche Nachricht----- >>> Von: ecos-discuss-owner@ecos.sourceware.org [mailto:ecos-discuss- >>> owner@ecos.sourceware.org] Im Auftrag von lesc >>> Gesendet: Montag, 17. November 2014 14:07 >>> An: eCos Discussion >>> Betreff: [ECOS] Problem with CPU Load Measurements and gcc-arm-eabi >>> optimization. >>> >>> Hello Everyone >>> >>> I just encountered the Problem that the cyg_cpuload_create always deliv= ers >>> 100% on my System. After a bit of debugging I figured out, that the who= le >>> for-loop in idle_thread_main seems to be omitted. >>> >>> I could fix this Problem with declaring >>> idle_thread_loops[CYGNUM_KERNEL_CPU_MAX] as volatile (patch below). >>> But this has maybe some consequences I am not thinking of, as the varia= bles >>> are now always synced to the ram and no kept in a CPU register. >>> >>> Do you see any Problem with my approach? >>> >>> Regards Serafin >>> >>> Patch: >>> >>> From 2799f68a5e508c6bece6ec85b1e201282983b98d Mon Sep 17 00:00:00 >>> 2001 >>> From: Serafin Leschke >>> Date: Mon, 17 Nov 2014 13:51:23 +0100 >>> Subject: [PATCH] declare idle_thread_loops as volatile >>> >>> --- >>> packages/kernel/current/src/common/thread.cxx | 2 +- >>> 1 file changed, 1 insertion(+), 1 deletion(-) >>> >>> diff --git a/packages/kernel/current/src/common/thread.cxx >>> b/packages/kernel/current/src/common/thread.cxx >>> index 86a3dc4..bd1aa99 100644 >>> --- a/packages/kernel/current/src/common/thread.cxx >>> +++ b/packages/kernel/current/src/common/thread.cxx >>> @@ -1211,7 +1211,7 @@ Cyg_ThreadTimer::alarm( >>> #endif // CYGNUM_HAL_STACK_SIZE_MINIMUM >>> >>> // Loop counter for debugging/housekeeping >>> -cyg_uint32 idle_thread_loops[CYGNUM_KERNEL_CPU_MAX]; >>> +volatile cyg_uint32 idle_thread_loops[CYGNUM_KERNEL_CPU_MAX]; >>> >>> static char >>> idle_thread_stack[CYGNUM_KERNEL_CPU_MAX][CYGNUM_KERNEL_THREA >>> DS_IDLE_STACK_SIZE]; >>> >>> -- >>> 1.9.1 >>> >>> >>> -- >>> Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos >>> and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss -- Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss