linux-rt-users.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Iratxo Pichel Ortiz <ipichel@albentia.com>
To: Thomas Gleixner <tglx@linutronix.de>
Cc: "Iratxo Pichel Ortiz" <iratxo.pichel@gmail.com>,
	linux-rt-users@vger.kernel.org,
	"Noelia Morón" <nmoron@albentia.com>
Subject: Re: NOHZ: local_softirq_pending
Date: Mon, 15 Jun 2009 16:38:07 +0200	[thread overview]
Message-ID: <4A365CCF.2020707@albentia.com> (raw)
In-Reply-To: <alpine.LFD.2.00.0906151501200.2800@localhost.localdomain>

Thomas,

Thomas Gleixner wrote:
> Iratxo,
>
> please do not top post.
>   
Thanks for you answer and sorry for my top-posting.
>   2.6.29-rt16, right ?
>   
I have also tried rt18, but as I had thought seeing change-logs, the 
behavior is exactly the same.
>
> Hmm, so something is marking the timer softirq pending, but does not
> wake the timer softirq.
>
>   
>>> [42949422.940000] NOHZ: local_softirq_pending 02
>>> [42949422.950000] NOHZ: local_softirq_pending 02
>>> [42949422.960000] ISR HIHG LATENCY 30073
>>> [42949596.920000] NOHZ: local_softirq_pending 02
>>> [42949596.930000] NOHZ: local_softirq_pending 02
>>> [42949596.940000] NOHZ: local_softirq_pending 02
>>> [42949596.950000] NOHZ: local_softirq_pending 02
>>>       
>
> So this repeats itself roughly every 3min and stays that way for a
> couple of jiffies. Does your code fiddle with timers ?
>
>   

There are some timers in the system, but I believe that those are quite 
out of the main path, but there could be some problem with delayed 
works, as they use also timers there.

And, well, I have managed to avoid this 180s dependency, and make it 
happen only under very heavy load. To do do this I have changed HZ from 
100 to 1000. Once I do this the problem arises only when the load, for 
example heavy pinging the ethernet interface.
>>> [42949596.960000] ISR HIHG LATENCY 40066
>>>       
>
> The latency is exaclty the number of NOHZ messages * 10ms. I assume
> you have HZ=100. Looks like your code is waiting for a timer, which
> does not fire due to the local_softirq_pending 02 problem.
>   
You are right, I hadn't noticed this. This pattern also repeats with HZ 
1000, (see dmesg excerpt below), but I only see the first 10 NOHZ 
because of the ratelimit in that function. Is this right? At least the 
time in the printks summed all-together sum up the aprox 50msec delay. 
In this case is not the ISR that gets delayed, but a RT task, it depends 
on the moment.

[4294750.246000] NOHZ: local_softirq_pending 06
[4294750.246000] NOHZ: local_softirq_pending 06
[4294750.247000] NOHZ: local_softirq_pending 06
[4294750.248000] NOHZ: local_softirq_pending 06
[4294750.249000] NOHZ: local_softirq_pending 06
[4294750.250000] NOHZ: local_softirq_pending 06
[4294750.251000] NOHZ: local_softirq_pending 06
[4294750.252000] NOHZ: local_softirq_pending 06
[4294750.253000] NOHZ: local_softirq_pending 06
[4294750.254000] NOHZ: local_softirq_pending 06
[4294750.296000] SCHED Max time reached 51368
[4294750.296000] SCHED Hi time reached 51368

Do you know what could be causing this issue. I have managed to repeat 
this traces (NOHZ...) without using my code, using a workqueue and in 
the work just by doing something like:

work_func() {
    mdelay(10);
    msleep(10);

   queue_work(myqueue, mywork);
}

And then by heavy loading the box from the outside.
> Does it work when you disable CONFIG_NOHZ ?
>   
I will try this and let the list know.
> Thanks,
>
> 	tglx
>
>   
Thanks a really lot.

BR,

    Iratxo.


-- 
Iratxo Pichel Ortiz
Software Development Manager

Albentia Systems S.A.
http://www.albentia.com

Tel: +34 914400567
Cel: +34 663808405
Fax: +34 914400569

C\Margarita Salas 22
Parque Tecnológico de Leganés
Leganés (28918)
Madrid
Spain

--
To unsubscribe from this list: send the line "unsubscribe linux-rt-users" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

  reply	other threads:[~2009-06-15 14:38 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-06-14 15:28 NOHZ: local_softirq_pending Iratxo Pichel Ortiz
2009-06-14 19:50 ` Iratxo Pichel Ortiz
2009-06-15 13:19   ` Thomas Gleixner
2009-06-15 14:38     ` Iratxo Pichel Ortiz [this message]
     [not found]       ` <8e6b7a710906160101x6a8ae9d5qa7638627f513278@mail.gmail.com>
2009-06-16  8:26         ` NOHZ: local_softirq_pending - More info without need for specific code Iratxo Pichel Ortiz
     [not found]         ` <4A376450.5020209@albentia.com>
2009-06-16  9:26           ` Iratxo Pichel Ortiz
2009-06-16 14:45             ` NOHZ: local_softirq_pending Iratxo Pichel Ortiz
2009-06-16 18:39               ` Iratxo Pichel Ortiz
2009-06-17 22:03                 ` Thomas Gleixner
2009-06-17 22:35                   ` Iratxo Pichel Ortiz
2009-06-17 23:46                     ` Thomas Gleixner
2009-06-18  0:33                       ` Iratxo Pichel Ortiz
2009-06-18  8:57                         ` Thomas Gleixner
2009-06-18 16:52                           ` Iratxo Pichel Ortiz

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=4A365CCF.2020707@albentia.com \
    --to=ipichel@albentia.com \
    --cc=iratxo.pichel@gmail.com \
    --cc=linux-rt-users@vger.kernel.org \
    --cc=nmoron@albentia.com \
    --cc=tglx@linutronix.de \
    /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 NNTP newsgroup(s).