All of lore.kernel.org
 help / color / mirror / Atom feed
From: Gilles Chanteperdrix <gilles.chanteperdrix@xenomai.org>
To: alberto.ozalla@cgglobal.com
Cc: "xenomai@xenomai.org" <xenomai@xenomai.org>
Subject: Re: [Xenomai] First call to rt_timer_tsc() causes an unexpected switch to secondary mode.
Date: Wed, 15 Oct 2014 15:16:28 +0200	[thread overview]
Message-ID: <543E73AC.8030802@xenomai.org> (raw)
In-Reply-To: <543E72BB.50707@cgglobal.com>

On 10/15/2014 03:12 PM, ZIV-Alberto Ozalla Cantabrana wrote:
> 
> On 15/10/14 13:11, Gilles Chanteperdrix wrote:
>> On 10/15/2014 12:59 PM, ZIV-Alberto Ozalla Cantabrana wrote:
>>> Dear colleagues,
>>>
>>> I face an unexpected switch to secondary mode after the very first call to rt_timer_tsc() into a real-time task created by Xenomai.
>>> This unexpected switch  only arises if it is the very first call to rt_timer_tsc().
>> Hi,
>>
>> I see two possible reasons for that:
>> - either on-demand mapping of library text page
>> - or first access to the hardware register.
>>
>> In order to find which is the reason.
>>
>> Could you replace the call to rt_timer_tsc() with a call to __xn_rdtsc()
>> after including asm/xenomai/tsc.h ?
>>
>>
> Hello,
> 
> Thanks for the fast response.
> 
> Unfortunately replacing the call to rt_timer_tsc() with a call to 
> __xn_rdtsc() does not solve the problem.

The intent was not to solve the problem, but to investigate it.

> 
> Another clue is that PF value increases at the same time as MSW.
> 
> 
> CPU  PID    MSW        CSW        PF    STAT       %CPU  NAME
>    0  0      0          11594571   0     00500080   96.3 ROOT/0
>    0  1690   1          5339       1     00300184    1.0 Test_Task
> 
> It seems to be a first access to the hardware register.

It would seem so. I will prepare a piece of code tonight that does not
rely on any external symbol, just to be sure.

> 
> Note: I use a call to mlockall(MCL_CURRENT|MCL_FUTURE) before creating 
> the task.

I do not believe mlockall applies to register mapped from /dev/mem, only
to memory mappings


-- 
                                                                Gilles.


  reply	other threads:[~2014-10-15 13:16 UTC|newest]

Thread overview: 23+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <543E4B9F.60602@cgglobal.com>
2014-10-15 10:59 ` [Xenomai] First call to rt_timer_tsc() causes an unexpected switch to secondary mode ZIV-Alberto Ozalla Cantabrana
2014-10-15 11:11   ` Gilles Chanteperdrix
2014-10-15 13:12     ` ZIV-Alberto Ozalla Cantabrana
2014-10-15 13:16       ` Gilles Chanteperdrix [this message]
2014-10-15 20:03       ` Gilles Chanteperdrix
2014-10-17 16:33         ` ZIV-Alberto Ozalla Cantabrana
2014-10-17 16:38           ` Gilles Chanteperdrix
2014-10-15 13:19   ` Gilles Chanteperdrix
2014-10-15 13:34     ` ZIV-Alberto Ozalla Cantabrana
2014-10-16  7:16   ` Gilles Chanteperdrix
2014-10-16  8:16     ` Gilles Chanteperdrix
2014-10-16  8:33       ` ZIV-Alberto Ozalla Cantabrana
2014-10-16  8:39         ` Gilles Chanteperdrix
2014-10-16 18:17       ` Lennart Sorensen
2014-10-16 18:58         ` Gilles Chanteperdrix
2014-10-16 20:56           ` Lennart Sorensen
2014-10-16 23:14             ` Tom Evans
2014-10-17  5:34               ` Gilles Chanteperdrix
2014-10-17  6:47                 ` Tom Evans
2014-10-17  7:02                   ` Gilles Chanteperdrix
2014-10-17 14:08                     ` Tom Evans
2014-10-17 19:36                       ` Gilles Chanteperdrix
2014-10-17 14:32                     ` Anders Blomdell

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=543E73AC.8030802@xenomai.org \
    --to=gilles.chanteperdrix@xenomai.org \
    --cc=alberto.ozalla@cgglobal.com \
    --cc=xenomai@xenomai.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.