* how can I touch softlockup watchdog on all cpus?
@ 2007-03-21 16:06 Cestonaro, Thilo (external)
2007-03-21 16:44 ` Dave Jones
0 siblings, 1 reply; 11+ messages in thread
From: Cestonaro, Thilo (external) @ 2007-03-21 16:06 UTC (permalink / raw)
To: linux-kernel
Hey,
my module generates this ugly softlockup dump, because all cpus are stopped longer then 10 secs.
What I do is:
[code]
local_irq_disable();
// my stuff which takes long and stopps all cpus
.....
touch_softlockup_watchdog();
local_irq_enable();
[/code]
this prevents a dump of my current cpu but not for all.
A call to smp_call_function with a function which calls touch_softlockup_watchdog in it,
doesn't work because smp_call_function needs to be done with irqs enabled, so the watchdog comes first :(.
Any hints or ideas how I can do it in a better way? Disabling softlockup watchdog is not possible for me.
Ciao Thilo
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: how can I touch softlockup watchdog on all cpus?
2007-03-21 16:06 how can I touch softlockup watchdog on all cpus? Cestonaro, Thilo (external)
@ 2007-03-21 16:44 ` Dave Jones
2007-03-22 7:33 ` Cestonaro, Thilo (external)
0 siblings, 1 reply; 11+ messages in thread
From: Dave Jones @ 2007-03-21 16:44 UTC (permalink / raw)
To: Cestonaro, Thilo (external); +Cc: linux-kernel
On Wed, Mar 21, 2007 at 05:06:34PM +0100, Cestonaro, Thilo (external) wrote:
> Hey,
>
> my module generates this ugly softlockup dump, because all cpus are stopped longer then 10 secs.
> What I do is:
> [code]
> local_irq_disable();
> // my stuff which takes long and stopps all cpus
> .....
> touch_softlockup_watchdog();
> local_irq_enable();
> [/code]
>
> this prevents a dump of my current cpu but not for all.
> A call to smp_call_function with a function which calls touch_softlockup_watchdog in it,
> doesn't work because smp_call_function needs to be done with irqs enabled, so the watchdog comes first :(.
>
> Any hints or ideas how I can do it in a better way? Disabling softlockup watchdog is not possible for me.
You didn't explain _why_ you need to sleep for such a long time,
and as you didn't give a pointer to your code, there's not
much people can do to recommend changes other than "don't do that".
Dave
--
http://www.codemonkey.org.uk
^ permalink raw reply [flat|nested] 11+ messages in thread
* RE: how can I touch softlockup watchdog on all cpus?
2007-03-21 16:44 ` Dave Jones
@ 2007-03-22 7:33 ` Cestonaro, Thilo (external)
2007-03-22 15:30 ` Lee Revell
0 siblings, 1 reply; 11+ messages in thread
From: Cestonaro, Thilo (external) @ 2007-03-22 7:33 UTC (permalink / raw)
To: linux-kernel
> You didn't explain _why_ you need to sleep for such a long time,
> and as you didn't give a pointer to your code, there's not
> much people can do to recommend changes other than "don't do that".
The code which is executed between the local_irq_disable and enable,
is just a function call into our companies bios (e.g. for updating itself)
and the long time is just 15 sec. while the bios has full control and OS is halted.
So I can't change anything at this point, but I need to fetch the watchdog,
cause it is not so nice, if there is a big BUG output on console while the
computer updates it's bios, very trustworthy isn't it :).
Ciao Thilo
@Dave: sorry that I send a direct mail :(
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: how can I touch softlockup watchdog on all cpus?
2007-03-22 7:33 ` Cestonaro, Thilo (external)
@ 2007-03-22 15:30 ` Lee Revell
2007-03-22 15:46 ` Cestonaro, Thilo (external)
0 siblings, 1 reply; 11+ messages in thread
From: Lee Revell @ 2007-03-22 15:30 UTC (permalink / raw)
To: Cestonaro, Thilo (external); +Cc: linux-kernel
On 3/22/07, Cestonaro, Thilo (external)
<Thilo.Cestonaro.external@fujitsu-siemens.com> wrote:
> > You didn't explain _why_ you need to sleep for such a long time,
> > and as you didn't give a pointer to your code, there's not
> > much people can do to recommend changes other than "don't do that".
>
> The code which is executed between the local_irq_disable and enable,
> is just a function call into our companies bios (e.g. for updating itself)
> and the long time is just 15 sec. while the bios has full control and OS is halted.
> So I can't change anything at this point, but I need to fetch the watchdog,
> cause it is not so nice, if there is a big BUG output on console while the
> computer updates it's bios, very trustworthy isn't it :).
Just disable the softlockup watchdog.
Lee
^ permalink raw reply [flat|nested] 11+ messages in thread
* RE: how can I touch softlockup watchdog on all cpus?
2007-03-22 15:30 ` Lee Revell
@ 2007-03-22 15:46 ` Cestonaro, Thilo (external)
2007-03-22 16:17 ` Lee Revell
0 siblings, 1 reply; 11+ messages in thread
From: Cestonaro, Thilo (external) @ 2007-03-22 15:46 UTC (permalink / raw)
To: Lee Revell; +Cc: linux-kernel
> Just disable the softlockup watchdog.
Thx for your answer, but this is no option for me, as I said in my first post :(.
Thilo
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: how can I touch softlockup watchdog on all cpus?
2007-03-22 15:46 ` Cestonaro, Thilo (external)
@ 2007-03-22 16:17 ` Lee Revell
2007-03-22 16:46 ` Cestonaro, Thilo (external)
0 siblings, 1 reply; 11+ messages in thread
From: Lee Revell @ 2007-03-22 16:17 UTC (permalink / raw)
To: Cestonaro, Thilo (external); +Cc: linux-kernel
On 3/22/07, Cestonaro, Thilo (external)
<Thilo.Cestonaro.external@fujitsu-siemens.com> wrote:
> > Just disable the softlockup watchdog.
>
> Thx for your answer, but this is no option for me, as I said in my first post :(.
Sounds like you have a fundamentally incompatible set of requirements.
Why do you need the softlockup watchdog if you intend to induce soft
lockups on purpose?
Lee
^ permalink raw reply [flat|nested] 11+ messages in thread
* RE: how can I touch softlockup watchdog on all cpus?
2007-03-22 16:17 ` Lee Revell
@ 2007-03-22 16:46 ` Cestonaro, Thilo (external)
2007-03-22 22:46 ` Jeremy Fitzhardinge
0 siblings, 1 reply; 11+ messages in thread
From: Cestonaro, Thilo (external) @ 2007-03-22 16:46 UTC (permalink / raw)
To: Lee Revell; +Cc: linux-kernel
> Sounds like you have a fundamentally incompatible set of requirements.
Sounds so yep :)
> Why do you need the softlockup watchdog if you intend to induce soft
> lockups on purpose?
It's a condition of a customer of us, so I can't change it.
But it happens not often that my part is used. So I thought there is a mechanism to disable or reset the watchdog
because it is a legal pause for it. And there is one "touch_softlockup_watchdog()", that does what I want,
BUT just for the current cpu. And so the watchdog blats from the other cpu.
Thilo
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: how can I touch softlockup watchdog on all cpus?
2007-03-22 16:46 ` Cestonaro, Thilo (external)
@ 2007-03-22 22:46 ` Jeremy Fitzhardinge
2007-03-23 1:16 ` Dave Jones
0 siblings, 1 reply; 11+ messages in thread
From: Jeremy Fitzhardinge @ 2007-03-22 22:46 UTC (permalink / raw)
To: Cestonaro, Thilo (external); +Cc: Lee Revell, linux-kernel
Cestonaro, Thilo (external) wrote:
> It's a condition of a customer of us, so I can't change it.
>
> But it happens not often that my part is used. So I thought there is a mechanism to disable or reset the watchdog
> because it is a legal pause for it. And there is one "touch_softlockup_watchdog()", that does what I want,
> BUT just for the current cpu. And so the watchdog blats from the other cpu.
>
on_each_cpu(touch_softlockup_watchdog, NULL, 0, 0)?
Or patch the softlockup watchdog to add a way to temporarily disable it.
J
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: how can I touch softlockup watchdog on all cpus?
2007-03-22 22:46 ` Jeremy Fitzhardinge
@ 2007-03-23 1:16 ` Dave Jones
2007-03-23 1:48 ` Jeremy Fitzhardinge
0 siblings, 1 reply; 11+ messages in thread
From: Dave Jones @ 2007-03-23 1:16 UTC (permalink / raw)
To: Jeremy Fitzhardinge; +Cc: Cestonaro, Thilo (external), Lee Revell, linux-kernel
On Thu, Mar 22, 2007 at 03:46:54PM -0700, Jeremy Fitzhardinge wrote:
> Cestonaro, Thilo (external) wrote:
> > It's a condition of a customer of us, so I can't change it.
> >
> > But it happens not often that my part is used. So I thought there is a mechanism to disable or reset the watchdog
> > because it is a legal pause for it. And there is one "touch_softlockup_watchdog()", that does what I want,
> > BUT just for the current cpu. And so the watchdog blats from the other cpu.
> >
>
> on_each_cpu(touch_softlockup_watchdog, NULL, 0, 0)?
He wants to do this with interrupts off. on_each_cpu won't work in
that situation.
> Or patch the softlockup watchdog to add a way to temporarily disable it.
Seems pretty much the only way you could make this work.
Dave
--
http://www.codemonkey.org.uk
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: how can I touch softlockup watchdog on all cpus?
2007-03-23 1:16 ` Dave Jones
@ 2007-03-23 1:48 ` Jeremy Fitzhardinge
0 siblings, 0 replies; 11+ messages in thread
From: Jeremy Fitzhardinge @ 2007-03-23 1:48 UTC (permalink / raw)
To: Dave Jones, Jeremy Fitzhardinge, Cestonaro, Thilo (external),
Lee Revell, linux-kernel
Dave Jones wrote:
> He wants to do this with interrupts off. on_each_cpu won't work in
> that situation.
>
I was thinking just before his big pause. But it sounds like its fairly
marginal.
> > Or patch the softlockup watchdog to add a way to temporarily disable it.
>
> Seems pretty much the only way you could make this work.
>
Yep. The patches I just posted might do the trick.
J
^ permalink raw reply [flat|nested] 11+ messages in thread
* RE: how can I touch softlockup watchdog on all cpus?
@ 2007-03-21 16:10 Cestonaro, Thilo (external)
0 siblings, 0 replies; 11+ messages in thread
From: Cestonaro, Thilo (external) @ 2007-03-21 16:10 UTC (permalink / raw)
To: linux-kernel
Hey again,
forgot to mention that I tried this patch, but did not work for me:
http://lkml.org/lkml/2007/3/15/131
Ciao Thilo
^ permalink raw reply [flat|nested] 11+ messages in thread
end of thread, other threads:[~2007-03-23 1:50 UTC | newest]
Thread overview: 11+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2007-03-21 16:06 how can I touch softlockup watchdog on all cpus? Cestonaro, Thilo (external)
2007-03-21 16:44 ` Dave Jones
2007-03-22 7:33 ` Cestonaro, Thilo (external)
2007-03-22 15:30 ` Lee Revell
2007-03-22 15:46 ` Cestonaro, Thilo (external)
2007-03-22 16:17 ` Lee Revell
2007-03-22 16:46 ` Cestonaro, Thilo (external)
2007-03-22 22:46 ` Jeremy Fitzhardinge
2007-03-23 1:16 ` Dave Jones
2007-03-23 1:48 ` Jeremy Fitzhardinge
2007-03-21 16:10 Cestonaro, Thilo (external)
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.