Setting of time (clock), hangs system. (clock_settime)

Hi,
I have problem with a system that sometimes hangs in the call
clock_settime().
Ticksize in my system is 1 ms, and I have created a few timers.

I have run a test that cyclic sets the clock at two different times. It
is typical 10 minutes between these two times.

During my test I have changed between these two times in intervals on 10
second.
In most cases no problems is detected, but in between the system hangs.
The system only hangs when the time is increased. (This happens after
from 20 second until 2 hours)

Have someone experienced simlar problems?

Thanks!
Harald

Harald Kj?de <Harald.Kjode@datarespons.no> wrote:

Hi,
I have problem with a system that sometimes hangs in the call
clock_settime().
Ticksize in my system is 1 ms, and I have created a few timers.

I have run a test that cyclic sets the clock at two different times. It
is typical 10 minutes between these two times.

During my test I have changed between these two times in intervals on 10
second.
In most cases no problems is detected, but in between the system hangs.
The system only hangs when the time is increased. (This happens after
from 20 second until 2 hours)

Have someone experienced simlar problems?

What version of the OS are you running? QNX4? QNX Neutrino? What
version of those? I seem to remember some oddities with some versions
of QNX4 and jump the time around causing timers to not expire for
unexpectedly long times. I think it was fixed, though.

But you need to give version information with questions like this.

-David

QNX Training Services
dagibbs@qnx.com

I run QNX 4 and the following versions:

PROGRAM NAME VERSION DATE
sys/Proc32 Proc 4.25H Oct 15 1998
sys/Proc32 Slib16 4.23G Oct 04 1996
sys/Slib32 Slib32 4.24B Aug 12 1997
/bin/Fsys Fsys32 4.24S Jul 16 1998
/bin/Fsys.eide eide 4.24M May 13 1998
//4/bin/Dev Dev32 4.23G Oct 04 1996
//4/bin/Dev.ansi Dev32.ansi 4.23H Nov 21 1996
//4/bin/Dev.ser Dev32.ser 4.23I Jun 27 1997
//4/bin/Dev.par Dev32.par 4.23G Oct 04 1996
//4/bin/Dev.pty Dev32.pty 4.23G Oct 04 1996
//4/bin/Mqueue mqueue 4.24A Feb 23 1998
//4/bin/Net Net 4.25B Jul 27 1998
//4/bin/Net.ether1000 Net.ether100 4.24B Jul 24 1998

Harald

David Gibbs wrote:

Harald Kj?de <> Harald.Kjode@datarespons.no> > wrote:
Hi,
I have problem with a system that sometimes hangs in the call
clock_settime().
Ticksize in my system is 1 ms, and I have created a few timers.

I have run a test that cyclic sets the clock at two different times. It
is typical 10 minutes between these two times.

During my test I have changed between these two times in intervals on 10
second.
In most cases no problems is detected, but in between the system hangs.
The system only hangs when the time is increased. (This happens after
from 20 second until 2 hours)

Have someone experienced simlar problems?

What version of the OS are you running? QNX4? QNX Neutrino? What
version of those? I seem to remember some oddities with some versions
of QNX4 and jump the time around causing timers to not expire for
unexpectedly long times. I think it was fixed, though.

But you need to give version information with questions like this.

-David

QNX Training Services
dagibbs@qnx.com

Harald Kj?de <Harald.Kjode@datarespons.no> wrote:

I run QNX 4 and the following versions:

PROGRAM NAME VERSION DATE
sys/Proc32 Proc 4.25H Oct 15 1998
sys/Proc32 Slib16 4.23G Oct 04 1996
sys/Slib32 Slib32 4.24B Aug 12 1997
/bin/Fsys Fsys32 4.24S Jul 16 1998
/bin/Fsys.eide eide 4.24M May 13 1998
//4/bin/Dev Dev32 4.23G Oct 04 1996
//4/bin/Dev.ansi Dev32.ansi 4.23H Nov 21 1996
//4/bin/Dev.ser Dev32.ser 4.23I Jun 27 1997
//4/bin/Dev.par Dev32.par 4.23G Oct 04 1996
//4/bin/Dev.pty Dev32.pty 4.23G Oct 04 1996
//4/bin/Mqueue mqueue 4.24A Feb 23 1998
//4/bin/Net Net 4.25B Jul 27 1998
//4/bin/Net.ether1000 Net.ether100 4.24B Jul 24 1998

I had thought the problem I rememberd hearing about happened
in a 4.24 version, not 4.25. I haven’t heard of any problems
with this sort of thing in 4.25. (There was a problem with
timers not being properly updated in one version of Proc.)


Harald Kj?de <> Harald.Kjode@datarespons.no> > wrote:
Hi,
I have problem with a system that sometimes hangs in the call
clock_settime().
Ticksize in my system is 1 ms, and I have created a few timers.

I have run a test that cyclic sets the clock at two different times. It
is typical 10 minutes between these two times.

During my test I have changed between these two times in intervals on 10
second.
In most cases no problems is detected, but in between the system hangs.
The system only hangs when the time is increased. (This happens after
from 20 second until 2 hours)

Can you give a better description of what you mean by “the system hangs”?
What sort of environment are you in? What symptoms do you see? Is this
machine on a network? Can you talk to it accross the network? (i.e.,
can you do sin -n {this_machine} and get a response?) Do you get a
Proc dump?

-David

QNX Training Services
dagibbs@qnx.com

David Gibbs wrote:

Harald Kj?de <> Harald.Kjode@datarespons.no> > wrote:
I run QNX 4 and the following versions:

PROGRAM NAME VERSION DATE
sys/Proc32 Proc 4.25H Oct 15 1998
sys/Proc32 Slib16 4.23G Oct 04 1996
sys/Slib32 Slib32 4.24B Aug 12 1997
/bin/Fsys Fsys32 4.24S Jul 16 1998
/bin/Fsys.eide eide 4.24M May 13 1998
//4/bin/Dev Dev32 4.23G Oct 04 1996
//4/bin/Dev.ansi Dev32.ansi 4.23H Nov 21 1996
//4/bin/Dev.ser Dev32.ser 4.23I Jun 27 1997
//4/bin/Dev.par Dev32.par 4.23G Oct 04 1996
//4/bin/Dev.pty Dev32.pty 4.23G Oct 04 1996
//4/bin/Mqueue mqueue 4.24A Feb 23 1998
//4/bin/Net Net 4.25B Jul 27 1998
//4/bin/Net.ether1000 Net.ether100 4.24B Jul 24 1998

I had thought the problem I rememberd hearing about happened
in a 4.24 version, not 4.25. I haven’t heard of any problems
with this sort of thing in 4.25. (There was a problem with
timers not being properly updated in one version of Proc.)

Harald Kj?de <> Harald.Kjode@datarespons.no> > wrote:
Hi,
I have problem with a system that sometimes hangs in the call
clock_settime().
Ticksize in my system is 1 ms, and I have created a few timers.

I have run a test that cyclic sets the clock at two different times. It
is typical 10 minutes between these two times.

During my test I have changed between these two times in intervals on 10
second.
In most cases no problems is detected, but in between the system hangs.
The system only hangs when the time is increased. (This happens after
from 20 second until 2 hours)

Can you give a better description of what you mean by “the system hangs”?
What sort of environment are you in? What symptoms do you see? Is this
machine on a network? Can you talk to it accross the network? (i.e.,
can you do sin -n {this_machine} and get a response?) Do you get a
Proc dump?

This is a system that normaly not is on a network, but it is possible to contect
it to a network. The system has a display card. The application normaly runs on
one of the serial port as a terminal.
Normaly it is possible to write comands at the display and to connect to the
system through
the network. When the system hangs it is not possible to get contact through
network or possible to write commands at the display. We have also tried to
increase pritorty on the network tasks to get contact with it through the network
without success.
We have also tried to run the application from different locations: As a
background process and from the display.

One problem is that I have not been able to get any information from the system
after it is hangs. I suspect that either the kernel or one of the interrupt
rutines hang.

Do you have any suggestions how it might be possible to get any information from
the system after it hangs?

-David

QNX Training Services
dagibbs@qnx.com

Harald Kj?de <Harald.Kjode@datarespons.no> wrote:



Do you have any suggestions how it might be possible to get any information from
the system after it hangs?

Unfortunately not – you’ve tried the things I would try.

-David

QNX Training Services
dagibbs@qnx.com

When we had this kind of trouble we used an ‘interrupt monitor’ which is
a little app which hooks to all interrupts, counts them as they come and
write table of numbers & counters into VGA RAM. It gives you idea if
interrupts level is too high to allow anything else to work.

  • igor

David Gibbs wrote:

Harald Kj?de <> Harald.Kjode@datarespons.no> > wrote:

Do you have any suggestions how it might be possible to get any information from
the system after it hangs?

Unfortunately not – you’ve tried the things I would try.

-David

QNX Training Services
dagibbs@qnx.com