OpenQNX :: The QNX Community Portal

May 13, 2008 - 12:07 PM
Google
  Web openqnx.com   
     Create an account Home · Submit News · QNX Forums · QNX Download · Search   
_
Main Menu
Who's Online
There are 52 unlogged users and 0 registered users online.

You can log-in or register for a user account here.

Post new topic   Reply to topic
View previous topic Printable version Log in to check your private messages View next topic
Author Message
ogr
Post subject: Out of interrupts events!  PostPosted: Jan 28, 2008 - 09:55 AM
Active Member


Joined: May 31, 2007
Posts: 18

Hello everybody.

I have an embedded OS image (QNX 6.3, x86) running in an Athena CPU board. After booting up and waiting some minutes without any application running, the system get hang and begins to continuously display on the screen the message "Out of interrupts events!".

After booting up, and before the system hanging up, the pidin utility gave the following result:

pid tid name prio STATE Blocked
1 1 procnto 0f READY
1 2 procnto 255r RECEIVE 1
1 3 procnto 255r RECEIVE 1
1 4 procnto 10r RECEIVE 1
1 5 procnto 10r RUNNING
1 6 procnto 10r RECEIVE 1
1 7 procnto 10r RECEIVE 1
1 8 procnto 10r RECEIVE 1
1 9 procnto 10r RECEIVE 1
1 10 procnto 10r RECEIVE 1
4098 1 proc/boot/pci-bios 10r RECEIVE 1
4099 1 proc/boot/devc-con 10r RECEIVE 1
4101 1 roc/boot/devb-eide 10r SIGWAITINFO
4101 2 roc/boot/devb-eide 21r RECEIVE 1
4101 3 roc/boot/devb-eide 10r RECEIVE 7
4101 4 roc/boot/devb-eide 10r RECEIVE 4
4101 7 roc/boot/devb-eide 10r RECEIVE 4
4101 8 roc/boot/devb-eide 10r RECEIVE 4
4101 9 roc/boot/devb-eide 10r RECEIVE 4
24580 1 proc/boot/slogger 10r RECEIVE 1
24582 1 proc/boot/pipe 10r SIGWAITINFO
24582 2 proc/boot/pipe 10r RECEIVE 1
24582 3 proc/boot/pipe 10r RECEIVE 1
24582 4 proc/boot/pipe 10r RECEIVE 1
24583 1 proc/boot/mqueue 10r RECEIVE 1
24584 1 sbin/devc-pty 10r RECEIVE 1
24586 1 bin/tinit 10r REPLY 1
57356 1 sbin/devb-ram 10r SIGWAITINFO
57356 2 sbin/devb-ram 21r RECEIVE 1
57356 3 sbin/devb-ram 10r RECEIVE 7
57356 4 sbin/devb-ram 10r RECEIVE 4
57356 5 sbin/devb-ram 10r RECEIVE 4
57356 6 sbin/devb-ram 10r RECEIVE 4
90125 1 sbin/devc-ser8250 10r RECEIVE 1
90127 1 bin/io-net 10r SIGWAITINFO
90127 2 bin/io-net 21r RECEIVE 5
90127 3 bin/io-net 10r RECEIVE 1
90127 4 bin/io-net 10r RECEIVE 1
90127 5 bin/io-net 10r RECEIVE 1
90127 6 bin/io-net 20r RECEIVE 9
90127 7 bin/io-net 10r RECEIVE 25
90127 8 bin/io-net 10r CONDVAR b827be34
90127 9 bin/io-net 9r RECEIVE 1
151569 1 bin/inetd 10r SIGWAITINFO
184329 1 bin/sh 10r SIGSUSPEND
241675 1 bin/pidin 10r REPLY 1


My bootscript is the following:

#Variables initialization

SHELL=/bin/sh
TERM=qansi
PROCESSOR=x86
LD_LIBRARY_PATH=/lib:/lib/dll:/usr/lib:/sbin
SYSNAME=nto

procmgr_symlink ../../proc/boot/libc.so.2 /usr/lib/ldqnx.so.2

display_msg "Starting....."

seedres

display_msg "Starting pci-bios server...."
pci-bios &
waitfor /dev/pci

display_msg "Starting up console driver..."
devc-con -n4 &
waitfor /dev/con1
waitfor /dev/con2
reopen /dev/con1
sleep 1

display_msg "Starting EIDE driver"
devb-eide cam quiet blk auto=partition eide master
waitfor /dev/hd0t77
mount -t qnx4 /dev/hd0t77 /

slogger &
waitfor /dev/slog

display_msg "Starting pipe manager..."
pipe &
waitfor /dev/pipe

# Some common servers
mqueue &
devc-pty &

display_msg "Starting sysinit..."
sh -c /etc/rc.d/rc.sysinit

display_msg "End of boot process"



Does anybody know what is the meaning of this message?
Whats happening?


Thanks in advance.

ogr
 
 View user's profile Send private message  
Reply with quote Back to top
maschoen
Post subject: RE: Out of interrupts events!  PostPosted: Jan 28, 2008 - 04:51 PM
QNX Master


Joined: Jun 25, 2003
Posts: 974

Do you get the message "Starting sysinit..." and if so, What is in your rc.sysinit?
 
 View user's profile Send private message Send e-mail Visit poster's website  
Reply with quote Back to top
ogr
Post subject:   PostPosted: Jan 29, 2008 - 08:55 AM
Active Member


Joined: May 31, 2007
Posts: 18

Yes, the sysinit file is executed fine. Its content is:

------------------------------------------------------------------------------------
#ifdef __USAGE
#
#%C
#
#This script sets up your environment & starts system services
#
#endif

echo Entering sysinit

# Add the system utilities to the path...
export PATH=/sbin:/usr/sbin:/bin:/usr/bin

# A usefull function
function waitfor {
typeset -i i=0
while test $i -lt 60 -a ! $1 -ef $1 ; do
sleep 1;
let i=i+1;
done
unset i
}

# Start random, this is needed for things like OpenSSH
random -t

# Find the hostname
if test -z $HOSTNAME; then
HOSTNAME=$(hostname -s)
if test $HOSTNAME == localhost; then
unset HOSTNAME
fi
fi

# See if there is a host specifiy etc directory
if ! test -z "$HOSTNAME"; then
if test -x /etc/host_cfg/$HOSTNAME; then
etc_host=/etc/host_cfg/$HOSTNAME;
fi
fi

if test -d /var/dumps; then
dumper -d /var/dumps
fi

if test ! -z "$etc_host" -a -x $etc_host/rc.d/rc.local; then
echo "Starting extra run commands for $(hostname)"
. $etc_host/rc.d/rc.local
elif test -x /etc/rc.d/rc.local; then
echo "Starting extra run commands"
/etc/rc.d/rc.local
fi

# Change the path to back before starting init
#P=-p
if test ! -z "$SAFEMODE"; then
unset P
fi

if test -f /etc/system/config/nophoton; then
unset P
fi

echo "Login in"
PATH=/bin:/usr/bin exec `which tinit` $P LOGNAME=root

print Unable to init, starting a shell

echo "Starting a shell"

exec sh
exec fesh

print Really can't do anything...

echo "End of sysinit"

------------------------------------------------------------------------------------

I use also a rc.local script:


------------------------------------------------------------------------------------

echo Entering rc.local ...

# Mounitng a Ram-Disk
echo Mounting Ram-Disk
devb-ram disk name=RAM ram capacity=8192
waitfor /dev/RAM0t77
mount -t qnx4 /dev/RAM0t77 /home/ramdisk

# Athena serial ports
echo Configuring serial ports
devc-ser8250 -u1 3f8,4 -u2 2f8,3 -u3 3e8,9 -u4 2e8,15 &

# Network
echo Configuring network devices
io-net -d ns83815 did=0x20,vid=0x100b -p tcpip
waitfor /dev/io-net/en0
mount -Tio-net npm-qnet-compat.so

echo Configuring network communications
netmanager -f /etc/net.cfg
sleep 1
inetd &
echo
sleep 3

echo Exiting rc.local

------------------------------------------------------------------------------------

Is very strange since this problen arise suddenly whith no application running and many minutes after the booting process was finished. The system works in console mode without Photon.

Any idea?


ogr
 
 View user's profile Send private message  
Reply with quote Back to top
mario
Post subject:   PostPosted: Jan 29, 2008 - 03:01 PM
QNX Master


Joined: Sep 01, 2002
Posts: 2667

This message means a ISR is generating events and the program associated with it isn't fast enough to process all the events. The interrupt event queue is getting full.
 
 View user's profile Send private message Visit poster's website  
Reply with quote Back to top
Tim
Post subject:   PostPosted: Jan 29, 2008 - 03:08 PM
Senior Member


Joined: Mar 10, 2004
Posts: 512

Ogr,

Your best bet is to stop programs one at a time until you figure out which one is the culprit in terms of getting too many interrupts.

For example, start by commenting out the Network stuff (io-net, netmanager etc) and see if the problem still arises. Then comment out the serial driver and so on.

Tim
 
 View user's profile Send private message Visit poster's website  
Reply with quote Back to top
ogr
Post subject:   PostPosted: Jan 29, 2008 - 05:35 PM
Active Member


Joined: May 31, 2007
Posts: 18

Tim,

I think trying what you suggest it's a good way. Let me test and see what I obtain.

Thanks everybody.
 
 View user's profile Send private message  
Reply with quote Back to top
Display posts from previous:     
Jump to:  
All times are GMT
Post new topic   Reply to topic
View previous topic Printable version Log in to check your private messages View next topic
Powered by PNphpBB2 © 2003-2007 The PNphpBB Group
Credits
All logos and trademarks in this site are property of their respective owners. The comments are property of their posters.
Powered by OpenQNX: The QNX Community Portal Site
QNX and the QNX logo are registered trademarks of QNX Software Systems.