Changes from 6.1 to 6.1A?

Hi All,

What exactly changed between 6.1 and 6.1a? My code was working beautifully
until I upgraded today and now my code hangs my whole computer. :frowning: Anyone
know where I can get the changes and try to figure out why my code is not
working?

Jim

Hello Jim,

You can find the release notes at the following address.
http://qdn.qnx.com/news/releases/releasenotes.html

Regards,
Dave B.



Jim Lambert wrote:

Hi All,

What exactly changed between 6.1 and 6.1a? My code was working beautifully
until I upgraded today and now my code hangs my whole computer. > :frowning: > Anyone
know where I can get the changes and try to figure out why my code is not
working?

Jim

I found those release notes but the 6.1 to 6.1a notes didnt help me at all.
The items listed as changed from 6.1 to 6.1a are not anything that I use.
Does 6.1 to 6.1a require a recompile of all code? The release notes say 6.0
to 6.1 does but not to 6.1a.

TIA,

Jim

ā€œAppsā€ <apps@qnx.com> wrote in message news:3C17A088.8050909@qnx.comā€¦

Hello Jim,

You can find the release notes at the following address.
http://qdn.qnx.com/news/releases/releasenotes.html

Regards,
Dave B.



Jim Lambert wrote:
Hi All,

What exactly changed between 6.1 and 6.1a? My code was working
beautifully
until I upgraded today and now my code hangs my whole computer.
( Anyone
know where I can get the changes and try to figure out why my code is
not
working?

Jim

\

Ok, Iā€™ve gone over these changes and not one of them explains why my
application is suddenly not working.

I have a socket server app that preforks 10 copies of itself and each copy
then does an accept(). I did 2.5 million connections Monday night (in 12
hours) with no problems. Then I upgrade to 6.1.a and now I canā€™t even do
1000 without an ENOENT error being returned. I donā€™t use any of the things
listed in the release notes, AFAIK.

I first thought it was a problem with a database library I was using, but
using an old threaded version to access the library worked perfectly and I
just inserted 100,000 rows no problem. So I know it isnā€™t the database
library code.

Any ideas would be appreciated.

Jim

The only thing it can be is some change in the way sockets are handled.
What I see happening is that the system doesnā€™t hang as such, it just slows
down to a crawl.
ā€œAppsā€ <apps@qnx.com> wrote in message news:3C17A088.8050909@qnx.comā€¦

Hello Jim,

You can find the release notes at the following address.
http://qdn.qnx.com/news/releases/releasenotes.html

Regards,
Dave B.



Jim Lambert wrote:
Hi All,

What exactly changed between 6.1 and 6.1a? My code was working
beautifully
until I upgraded today and now my code hangs my whole computer.
( Anyone
know where I can get the changes and try to figure out why my code is
not
working?

Jim

\

Hmmm, did the tcpip stack change from the ttcpip to tcpip?

Jim Lambert <jlambert@futurex.com> wrote:

Ok, Iā€™ve gone over these changes and not one of them explains why my
application is suddenly not working.

I have a socket server app that preforks 10 copies of itself and each copy
then does an accept(). I did 2.5 million connections Monday night (in 12
hours) with no problems. Then I upgrade to 6.1.a and now I canā€™t even do
1000 without an ENOENT error being returned. I donā€™t use any of the things
listed in the release notes, AFAIK.

I first thought it was a problem with a database library I was using, but
using an old threaded version to access the library worked perfectly and I
just inserted 100,000 rows no problem. So I know it isnā€™t the database
library code.

Any ideas would be appreciated.

Jim

The only thing it can be is some change in the way sockets are handled.
What I see happening is that the system doesnā€™t hang as such, it just slows
down to a crawl.
ā€œAppsā€ <> apps@qnx.com> > wrote in message news:> 3C17A088.8050909@qnx.com> ā€¦
Hello Jim,

You can find the release notes at the following address.
http://qdn.qnx.com/news/releases/releasenotes.html

Regards,
Dave B.



Jim Lambert wrote:
Hi All,

What exactly changed between 6.1 and 6.1a? My code was working
beautifully
until I upgraded today and now my code hangs my whole computer.
( Anyone
know where I can get the changes and try to figure out why my code is
not
working?

Jim


\

ā€“
cburgess@qnx.com

Colin Burgess <cburgess@qnx.com> wrote:

Hmmm, did the tcpip stack change from the ttcpip to tcpip?

Can you post an output from ā€œpidin arg | grep io-netā€.

Marcin


Jim Lambert <> jlambert@futurex.com> > wrote:
Ok, Iā€™ve gone over these changes and not one of them explains why my
application is suddenly not working.

I have a socket server app that preforks 10 copies of itself and each copy
then does an accept(). I did 2.5 million connections Monday night (in 12
hours) with no problems. Then I upgrade to 6.1.a and now I canā€™t even do
1000 without an ENOENT error being returned. I donā€™t use any of the things
listed in the release notes, AFAIK.

I first thought it was a problem with a database library I was using, but
using an old threaded version to access the library worked perfectly and I
just inserted 100,000 rows no problem. So I know it isnā€™t the database
library code.

Any ideas would be appreciated.

Jim

The only thing it can be is some change in the way sockets are handled.
What I see happening is that the system doesnā€™t hang as such, it just slows
down to a crawl.
ā€œAppsā€ <> apps@qnx.com> > wrote in message news:> 3C17A088.8050909@qnx.com> ā€¦
Hello Jim,

You can find the release notes at the following address.
http://qdn.qnx.com/news/releases/releasenotes.html

Regards,
Dave B.



Jim Lambert wrote:
Hi All,

What exactly changed between 6.1 and 6.1a? My code was working
beautifully
until I upgraded today and now my code hangs my whole computer.
( Anyone
know where I can get the changes and try to figure out why my code is
not
working?

Jim


\



ā€“
cburgess@qnx.com

Here is mine:

77842 io-net -ptcpip -ppppmgr -pqnet
753703 grep io-net

Jim

ā€œTools Mail Accountā€ <tools@qnx.com> wrote in message
news:9vb1uk$asv$1@nntp.qnx.comā€¦

Colin Burgess <> cburgess@qnx.com> > wrote:
Hmmm, did the tcpip stack change from the ttcpip to tcpip?

Can you post an output from ā€œpidin arg | grep io-netā€.

Marcin


Jim Lambert <> jlambert@futurex.com> > wrote:
Ok, Iā€™ve gone over these changes and not one of them explains why my
application is suddenly not working.

I have a socket server app that preforks 10 copies of itself and each
copy
then does an accept(). I did 2.5 million connections Monday night (in
12
hours) with no problems. Then I upgrade to 6.1.a and now I canā€™t even
do
1000 without an ENOENT error being returned. I donā€™t use any of the
things
listed in the release notes, AFAIK.

I first thought it was a problem with a database library I was using,
but
using an old threaded version to access the library worked perfectly
and I
just inserted 100,000 rows no problem. So I know it isnā€™t the database
library code.

Any ideas would be appreciated.

Jim

The only thing it can be is some change in the way sockets are handled.
What I see happening is that the system doesnā€™t hang as such, it just
slows
down to a crawl.
ā€œAppsā€ <> apps@qnx.com> > wrote in message news:> 3C17A088.8050909@qnx.com> ā€¦
Hello Jim,

You can find the release notes at the following address.
http://qdn.qnx.com/news/releases/releasenotes.html

Regards,
Dave B.



Jim Lambert wrote:
Hi All,

What exactly changed between 6.1 and 6.1a? My code was working
beautifully
until I upgraded today and now my code hangs my whole computer.
( Anyone
know where I can get the changes and try to figure out why my code
is
not
working?

Jim







\

cburgess@qnx.com

ā€œJim Lambertā€ <jlambert@futurex.com> wrote in message
news:9varo3$3iq$1@inn.qnx.comā€¦

I have a socket server app that preforks 10 copies of itself and each copy
then does an accept(). I did 2.5 million connections Monday night (in 12
hours) with no problems. Then I upgrade to 6.1.a and now I canā€™t even do
1000 without an ENOENT error being returned. I donā€™t use any of the
things
listed in the release notes, AFAIK.

When your call to accept() returns with ENOENT, do all subsequent calls fail
also?

What I see happening is that the system doesnā€™t hang as such, it just
slows
down to a crawl.

Can you post a pidin of the system after the calls to accept() start failing
and when your machine becomes sluggish. Also do an ls -l /dev/io-net and
post the results, I have a sneaking suspicion that io-net might be failing,
and this the mount point /dev/io-net/* are not valid, which causes
subsequent calls to accept() to fail with ENOENT.

-Adam

ā€œOperating Systems Groupā€ <os@qnx.com> wrote in message
news:9vd6jl$rkq$1@nntp.qnx.comā€¦

ā€œJim Lambertā€ <> jlambert@futurex.com> > wrote in message
news:9varo3$3iq$> 1@inn.qnx.com> ā€¦

I have a socket server app that preforks 10 copies of itself and each
copy
then does an accept(). I did 2.5 million connections Monday night (in
12
hours) with no problems. Then I upgrade to 6.1.a and now I canā€™t even
do
1000 without an ENOENT error being returned. I donā€™t use any of the
things
listed in the release notes, AFAIK.

When your call to accept() returns with ENOENT, do all subsequent calls
fail
also?

That is exactly what is happening. In fact the whole IP system goes
bonkers. Canā€™t ping, telnet, ftp, nothing.

What I see happening is that the system doesnā€™t hang as such, it just
slows
down to a crawl.

The reason I was slowing to a crawl is because I was running my server at a
higher priority. I was banging it with 100ā€™s of connections a second and it
just simulated a server hang because it ate up all the resources.

Can you post a pidin of the system after the calls to accept() start
failing
and when your machine becomes sluggish. Also do an ls -l /dev/io-net and
post the results, I have a sneaking suspicion that io-net might be
failing,
and this the mount point /dev/io-net/* are not valid, which causes
subsequent calls to accept() to fail with ENOENT.

I think you are on the right track since the io-net directory disappears
when this happens. Iā€™ve posted the results of the pidin and ls below.

Here are the different scenarios that I have run. I have my socket server
which can connect to a database ODBC library. My stuff is compiled with
6.1.a while the database library is compiled with 6.1.
Here are the combinations I have tried and the results:

Works: My socket server printing to screen instead of sending to db (can do
200 socket connections per second)
Works: My socket server doing nothing, ie. reading the data but then not
displaying it or storing it in the database
Works: My test server using threads connecting to the database libraries.
Works like a champ, 250 inserts a second
Fails: My socket server connecting to their database library

So, you can see that my socket server stuff works fine. Where it fails is
when I connect to their database library which also uses sockets to
communicate with a Windows 2000 server.

HTH,

Jim


pidin.txt

pid tid name prio STATE Blocked
1 1 procnto 0f READY
1 2 procnto 15r RECEIVE 1
1 3 procnto 63r RECEIVE 1
1 4 procnto 15r RECEIVE 1
1 5 procnto 15r RECEIVE 1
1 6 procnto 10r RUNNING
1 7 procnto 15r RECEIVE 1
1 8 procnto 15r RECEIVE 1
1 9 procnto 6r READY
1 11 procnto 10r RECEIVE 1
1 12 procnto 15r RECEIVE 1
1 13 procnto 15r RECEIVE 1
2 1 sbin/tinit 10o REPLY 221207
3 1 proc/boot/slogger 10o RECEIVE 1
12292 1 sbin/mqueue 10o RECEIVE 1
5 1 proc/boot/pci-bios 15o RECEIVE 1
6 1 roc/boot/devb-eide 10o SIGWAITINFO
6 2 roc/boot/devb-eide 21r RECEIVE 1
6 3 roc/boot/devb-eide 21r RECEIVE 4
6 4 roc/boot/devb-eide 10o RECEIVE 10
6 5 roc/boot/devb-eide 10r CONDVAR b037866c
6 7 roc/boot/devb-eide 9o RECEIVE 7
6 9 roc/boot/devb-eide 10o RECEIVE 7
6 11 roc/boot/devb-eide 10o RECEIVE 7
7 1 /x86/sbin/devc-con 10o RECEIVE 1
8 1 hA/x86/sbin/fs-pkg 9o RECEIVE 1
8 2 hA/x86/sbin/fs-pkg 10o SIGWAITINFO
8 3 hA/x86/sbin/fs-pkg 10o RECEIVE 1
8 4 hA/x86/sbin/fs-pkg 9o RECEIVE 1
8 5 hA/x86/sbin/fs-pkg 10o RECEIVE 1
8 6 hA/x86/sbin/fs-pkg 9o RECEIVE 1
4105 1 sbin/pipe 10o RECEIVE 1
4105 3 sbin/pipe 10o RECEIVE 1
4105 4 sbin/pipe 9o RECEIVE 1
4105 5 sbin/pipe 9o RECEIVE 1
126986 1 usr/sbin/random 10o SIGWAITINFO
126986 2 usr/sbin/random 10o RECEIVE 1
126986 3 usr/sbin/random 10o NANOSLEEP
45067 1 sbin/devc-pty 10o RECEIVE 1
77836 1 sbin/devc-par 10o NANOSLEEP
77836 2 sbin/devc-par 9r CONDVAR 804f938
114701 1 sbin/devb-fdc 10o SIGWAITINFO
114701 2 sbin/devb-fdc 21r RECEIVE 1
114701 3 sbin/devb-fdc 10o RECEIVE 7
114701 4 sbin/devb-fdc 10o CONDVAR b037866c
114701 5 sbin/devb-fdc 10o RECEIVE 4
114701 6 sbin/devb-fdc 10o RECEIVE 4
77838 1 usr/sbin/spooler 10o REPLY 77836
77839 1 sbin/devc-ser8250 24o RECEIVE 1
139280 1 usr/sbin/inetd 10o SIGWAITINFO
159761 1 usr/sbin/dumper 15o RECEIVE 1
9220114 1 bin/pidin 10r REPLY 1
155668 1 cal/samba/bin/smbd 10o SIGWAITINFO
544789 (Zombie)
426006 1 usr/photon/bin/pwm 10r RECEIVE 1
221207 1 /photon/bin/Photon 10r RECEIVE 1
266264 1 ton/bin/fontsleuth 6o READY
266264 2 ton/bin/fontsleuth 10o RECEIVE 1
266264 3 ton/bin/fontsleuth 6o READY
266264 4 ton/bin/fontsleuth 6o READY
266264 5 ton/bin/fontsleuth 6o READY
471065 1 r/photon/bin/shelf 10r RECEIVE 1
471065 2 r/photon/bin/shelf 10r CONDVAR b049bacc
258074 1 hoton/bin/phfontFA 12r RECEIVE 1
299035 1 on/bin/io-graphics 12r REPLY 221207
544796 1 r/photon/bin/pterm 10r RECEIVE 1
315421 1 ton/bin/devi-hirun 15o RECEIVE 1
315421 2 ton/bin/devi-hirun 10o REPLY 7
315421 3 ton/bin/devi-hirun 12o SIGWAITINFO
507934 1 photon/bin/bkgdmgr 10r RECEIVE 1
507935 1 hoton/bin/wmswitch 10r RECEIVE 2
507936 1 r/photon/bin/saver 10r RECEIVE 1
544801 1 bin/ksh 10r REPLY 45067
524322 1 /X11R6/bin/Xphoton 10r SIGWAITINFO
577572 1 bin/ksh 10r REPLY 45067
5931045 1 r/photon/bin/pterm 10r RECEIVE 1
569382 1 r/photon/bin/pterm 10r RECEIVE 1
5931047 1 bin/ksh 10r SIGSUSPEND
2097192 1 ton/bin/helpviewer 10r RECEIVE 1
2097193 1 n/bin/vserver.file 10r RECEIVE 1
2117674 1 cal/samba/bin/smbd 10o SIGWAITINFO
9158699 1 bin/sh 10r REPLY 45067
9179180 1 router/bin/msgserv 9r READY
839725 1 r/photon/bin/pterm 10r RECEIVE 1
839726 1 bin/ksh 10r SIGSUSPEND
9179184 1 router/bin/msgserv 9r READY
9179185 1 router/bin/msgserv 9r READY
9179186 1 router/bin/msgserv 9r READY
9179187 1 router/bin/msgserv 9r READY

\

lsionet.txt

ls: No such file or directory (/dev/io-net)

Here is a good pidin with io-net running.

Jim

pid tid name prio STATE Blocked
1 1 procnto 0f READY
1 2 procnto 15r RECEIVE 1
1 3 procnto 63r RECEIVE 1
1 4 procnto 10r RECEIVE 1
1 5 procnto 10r RECEIVE 1
1 6 procnto 10r RECEIVE 1
1 7 procnto 15r RECEIVE 1
1 8 procnto 10r RUNNING
1 9 procnto 6r READY
1 10 procnto 15r RECEIVE 1
1 11 procnto 10r RECEIVE 1
2 1 sbin/tinit 10o REPLY 221207
3 1 proc/boot/slogger 10o RECEIVE 1
12292 1 sbin/mqueue 10o RECEIVE 1
5 1 proc/boot/pci-bios 10o RECEIVE 1
6 1 roc/boot/devb-eide 10o SIGWAITINFO
6 2 roc/boot/devb-eide 21r RECEIVE 1
6 3 roc/boot/devb-eide 21r RECEIVE 4
6 4 roc/boot/devb-eide 10o RECEIVE 10
6 5 roc/boot/devb-eide 10r CONDVAR b037866c
6 6 roc/boot/devb-eide 10o RECEIVE 7
6 7 roc/boot/devb-eide 10o RECEIVE 7
6 9 roc/boot/devb-eide 10o RECEIVE 7
7 1 /x86/sbin/devc-con 10o RECEIVE 1
8 1 hA/x86/sbin/fs-pkg 10o RECEIVE 1
8 2 hA/x86/sbin/fs-pkg 10o SIGWAITINFO
8 3 hA/x86/sbin/fs-pkg 10o RECEIVE 1
8 4 hA/x86/sbin/fs-pkg 10o RECEIVE 1
8 5 hA/x86/sbin/fs-pkg 10o RECEIVE 1
8 6 hA/x86/sbin/fs-pkg 10o RECEIVE 1
4105 1 sbin/pipe 10o RECEIVE 1
4105 2 sbin/pipe 10o RECEIVE 1
4105 3 sbin/pipe 10o RECEIVE 1
4105 4 sbin/pipe 10o RECEIVE 1
126986 1 usr/sbin/random 10o SIGWAITINFO
126986 2 usr/sbin/random 10o RECEIVE 1
126986 3 usr/sbin/random 10o NANOSLEEP
45067 1 sbin/devc-pty 10o RECEIVE 1
77836 1 sbin/devc-par 10o RECEIVE 1
77836 2 sbin/devc-par 9r CONDVAR 804f938
114701 1 sbin/devb-fdc 10o SIGWAITINFO
114701 2 sbin/devb-fdc 21r RECEIVE 1
114701 3 sbin/devb-fdc 10o RECEIVE 7
114701 4 sbin/devb-fdc 10o CONDVAR b037866c
114701 5 sbin/devb-fdc 10o RECEIVE 4
114701 6 sbin/devb-fdc 10o RECEIVE 4
77838 1 usr/sbin/spooler 10o NANOSLEEP
77839 1 sbin/devc-ser8250 24o RECEIVE 1
139280 1 usr/sbin/inetd 10o SIGWAITINFO
159761 1 usr/sbin/dumper 10o RECEIVE 1
77842 1 sbin/io-net 10o SIGWAITINFO
77842 2 sbin/io-net 10o RECEIVE 1
77842 3 sbin/io-net 10o RECEIVE 1
77842 6 sbin/io-net 20o RECEIVE 6
77842 7 sbin/io-net 10o RECEIVE 22
77842 8 sbin/io-net 21o RECEIVE 17
77842 9 sbin/io-net 10o RECEIVE 1
77842 10 sbin/io-net 18o RECEIVE 1
77842 14 sbin/io-net 10o CONDVAR 80c3174
147475 1 cal/samba/bin/nmbd 10o SIGWAITINFO
155668 1 cal/samba/bin/smbd 10o SIGWAITINFO
544789 1 r/photon/bin/pterm 10r RECEIVE 1
426006 1 usr/photon/bin/pwm 10r RECEIVE 1
221207 1 /photon/bin/Photon 12r RECEIVE 1
266264 1 ton/bin/fontsleuth 6o RECEIVE 1
266264 2 ton/bin/fontsleuth 6o RECEIVE 1
266264 3 ton/bin/fontsleuth 10o RECEIVE 1
471065 1 r/photon/bin/shelf 10r RECEIVE 1
471065 2 r/photon/bin/shelf 10r CONDVAR b049bacc
258074 1 hoton/bin/phfontFA 12r RECEIVE 1
299035 1 on/bin/io-graphics 12r REPLY 221207
544796 1 bin/ksh 10r SIGSUSPEND
315421 1 ton/bin/devi-hirun 15o RECEIVE 1
315421 2 ton/bin/devi-hirun 10o REPLY 7
315421 3 ton/bin/devi-hirun 12o SIGWAITINFO
507934 1 photon/bin/bkgdmgr 10r RECEIVE 1
507935 1 hoton/bin/wmswitch 10r RECEIVE 2
507936 1 r/photon/bin/saver 10r RECEIVE 1
651297 1 cal/samba/bin/smbd 10o SIGWAITINFO
524322 1 /X11R6/bin/Xphoton 10r SIGWAITINFO
524323 1 usr/X11R6/bin/gtwm 10r SIGWAITINFO
651300 (Zombie)
700453 1 bin/pidin 10r REPLY 1

Any resolution or news on this issue? I was really hoping to have something
by today so I wouldnā€™t be dead in the water over the weekend. :frowning:

Not one reply to any of my numerous posts today - I feel unloved.

If anyone can let me know when this io-net issue will be resolved, Iā€™d
appreciate it.

Jim

ā€œJim Lambertā€ <jlambert@futurex.com> wrote in message
news:9vb6bt$ajt$1@inn.qnx.comā€¦

Here is mine:

77842 io-net -ptcpip -ppppmgr -pqnet
753703 grep io-net

Jim

ā€œTools Mail Accountā€ <> tools@qnx.com> > wrote in message
news:9vb1uk$asv$> 1@nntp.qnx.com> ā€¦
Colin Burgess <> cburgess@qnx.com> > wrote:
Hmmm, did the tcpip stack change from the ttcpip to tcpip?

Can you post an output from ā€œpidin arg | grep io-netā€.

Marcin


Jim Lambert <> jlambert@futurex.com> > wrote:
Ok, Iā€™ve gone over these changes and not one of them explains why my
application is suddenly not working.

I have a socket server app that preforks 10 copies of itself and each
copy
then does an accept(). I did 2.5 million connections Monday night
(in
12
hours) with no problems. Then I upgrade to 6.1.a and now I canā€™t
even
do
1000 without an ENOENT error being returned. I donā€™t use any of the
things
listed in the release notes, AFAIK.

I first thought it was a problem with a database library I was using,
but
using an old threaded version to access the library worked perfectly
and I
just inserted 100,000 rows no problem. So I know it isnā€™t the
database
library code.

Any ideas would be appreciated.

Jim

The only thing it can be is some change in the way sockets are
handled.
What I see happening is that the system doesnā€™t hang as such, it just
slows
down to a crawl.
ā€œAppsā€ <> apps@qnx.com> > wrote in message
news:> 3C17A088.8050909@qnx.com> ā€¦
Hello Jim,

You can find the release notes at the following address.
http://qdn.qnx.com/news/releases/releasenotes.html

Regards,
Dave B.



Jim Lambert wrote:
Hi All,

What exactly changed between 6.1 and 6.1a? My code was working
beautifully
until I upgraded today and now my code hangs my whole computer.
( Anyone
know where I can get the changes and try to figure out why my code
is
not
working?

Jim







\

cburgess@qnx.com

From the description so far, I have little idea whay might be
the cause. The latest info I have is that this happens with both
stacks? What driver are you running? Try with just the driver
and the stack (no qnet, pppmgr if they arenā€™t needed). Some code
that shows the problem and a dump file of io-net are the next
stepsā€¦

-seanb

Jim Lambert <jlambert@futurex.com> wrote:
: Any resolution or news on this issue? I was really hoping to have something
: by today so I wouldnā€™t be dead in the water over the weekend. :frowning:

: Not one reply to any of my numerous posts today - I feel unloved.

: If anyone can let me know when this io-net issue will be resolved, Iā€™d
: appreciate it.

: Jim

: ā€œJim Lambertā€ <jlambert@futurex.com> wrote in message
: news:9vb6bt$ajt$1@inn.qnx.comā€¦
:> Here is mine:
:>
:> 77842 io-net -ptcpip -ppppmgr -pqnet
:> 753703 grep io-net
:>
:> Jim
:>
:> ā€œTools Mail Accountā€ <tools@qnx.com> wrote in message
:> news:9vb1uk$asv$1@nntp.qnx.comā€¦
:> > Colin Burgess <cburgess@qnx.com> wrote:
:> > > Hmmm, did the tcpip stack change from the ttcpip to tcpip?
:> >
:> > Can you post an output from ā€œpidin arg | grep io-netā€.
:> >
:> > Marcin
:> >
:> >
:> > > Jim Lambert <jlambert@futurex.com> wrote:
:> > >> Ok, Iā€™ve gone over these changes and not one of them explains why my
:> > >> application is suddenly not working.
:> >
:> > >> I have a socket server app that preforks 10 copies of itself and each
:> copy
:> > >> then does an accept(). I did 2.5 million connections Monday night
: (in
:> 12
:> > >> hours) with no problems. Then I upgrade to 6.1.a and now I canā€™t
: even
:> do
:> > >> 1000 without an ENOENT error being returned. I donā€™t use any of the
:> things
:> > >> listed in the release notes, AFAIK.
:> >
:> > >> I first thought it was a problem with a database library I was using,
:> but
:> > >> using an old threaded version to access the library worked perfectly
:> and I
:> > >> just inserted 100,000 rows no problem. So I know it isnā€™t the
: database
:> > >> library code.
:> >
:> > >> Any ideas would be appreciated.
:> >
:> > >> Jim
:> >
:> > >> The only thing it can be is some change in the way sockets are
: handled.
:> > >> What I see happening is that the system doesnā€™t hang as such, it just
:> slows
:> > >> down to a crawl.
:> > >> ā€œAppsā€ <apps@qnx.com> wrote in message
: news:3C17A088.8050909@qnx.comā€¦
:> > >>> Hello Jim,
:> > >>>
:> > >>> You can find the release notes at the following address.
:> > >>> http://qdn.qnx.com/news/releases/releasenotes.html
:> > >>>
:> > >>> Regards,
:> > >>> Dave B.
:> > >>>
:> > >>>
:> > >>>
:> > >>> Jim Lambert wrote:
:> > >>> > Hi All,
:> > >>> >
:> > >>> > What exactly changed between 6.1 and 6.1a? My code was working
:> > >> beautifully
:> > >>> > until I upgraded today and now my code hangs my whole computer.
:> > >> ( Anyone
:> > >>> > know where I can get the changes and try to figure out why my code
:> is
:> > >> not
:> > >>> > working?
:> > >>> >
:> > >>> > Jim
:> > >>> >
:> > >>> >
:> > >>> >
:> > >>>
:> > >>>
:> >
:> >
:> >
:> > > ā€“
:> > > cburgess@qnx.com
:>
:>

ā€œJim Lambertā€ <jlambert@futurex.com> wrote in message
news:9vdd5h$rgh$1@inn.qnx.comā€¦

Can you post a pidin of the system after the calls to accept() start
failing
and when your machine becomes sluggish. Also do an ls -l /dev/io-net
and
post the results, I have a sneaking suspicion that io-net might be
failing,
and this the mount point /dev/io-net/* are not valid, which causes
subsequent calls to accept() to fail with ENOENT.


I think you are on the right track since the io-net directory disappears
when this happens. Iā€™ve posted the results of the pidin and ls below.

If the io-net directory is gone, (and looking at the pidin you posted) then
it looks like io-net died. As Sean mentioned in a previous post, have you
tried removing the extra modules like pppmgr and qnet? Does it improve the
situation any? If not, more then likely the NIC driver has a bug - What nic
card/driver are you using?

Here are the different scenarios that I have run. I have my socket server
which can connect to a database ODBC library. My stuff is compiled with
6.1.a while the database library is compiled with 6.1.
Here are the combinations I have tried and the results:

Works: My socket server printing to screen instead of sending to db (can
do
200 socket connections per second)
Works: My socket server doing nothing, ie. reading the data but then not
displaying it or storing it in the database
Works: My test server using threads connecting to the database libraries.
Works like a champ, 250 inserts a second
Fails: My socket server connecting to their database library

So, you can see that my socket server stuff works fine. Where it fails is
when I connect to their database library which also uses sockets to
communicate with a Windows 2000 server.

if you do an objdump -x | grep ā€œNEEDEDā€ what are the
dependancies? Is the lib a shared lib or are you staticly linking against
it?

-Adam

So is there not a known issue with io-net? I just assumed there was since
right after my first postings on this someone posted that it was probably
io-net and it sounded like it was a known problem or issue that crops up.

Iā€™ll try it without those options. I really canā€™t reproduce it since it
happens when Im using a third-party database library.

If this helps, let me once again state what happens.

  1. If I connect to the database library and my program is not running
    socket stuff, I have no problem.
  2. If I donā€™t connect to the database library and my program just accepts
    millions of socket connections and prints them to the screen, I have no
    problem.
  3. If I connect to the database library (the database library uses sockets
    to communicate with other machines) and my program is using sockets to
    communicate with my clients, then it crashes io-net after anywhere from
    400-4000 (Iā€™ve had it go as high as 11,000) transactions (ie. socket
    accepts, writes the message to the database, goes back to an accept state).

The accept fails with an error code of 3.

Once again, any ideas or help are very much appreciated so keep em coming.
:slight_smile:

Thanks,

Jim



ā€œSean Boudreauā€ <seanb@qnx.com> wrote in message
news:9vl9rt$o0k$1@nntp.qnx.comā€¦

From the description so far, I have little idea whay might be
the cause. The latest info I have is that this happens with both
stacks? What driver are you running? Try with just the driver
and the stack (no qnet, pppmgr if they arenā€™t needed). Some code
that shows the problem and a dump file of io-net are the next
stepsā€¦

-seanb

Jim Lambert <> jlambert@futurex.com> > wrote:
: Any resolution or news on this issue? I was really hoping to have
something
: by today so I wouldnā€™t be dead in the water over the weekend. > :frowning:

: Not one reply to any of my numerous posts today - I feel unloved.

: If anyone can let me know when this io-net issue will be resolved, Iā€™d
: appreciate it.

: Jim

: ā€œJim Lambertā€ <> jlambert@futurex.com> > wrote in message
: news:9vb6bt$ajt$> 1@inn.qnx.com> ā€¦
:> Here is mine:
:
:> 77842 io-net -ptcpip -ppppmgr -pqnet
:> 753703 grep io-net
:
:> Jim
:
:> ā€œTools Mail Accountā€ <> tools@qnx.com> > wrote in message
:> news:9vb1uk$asv$> 1@nntp.qnx.com> ā€¦
:> > Colin Burgess <> cburgess@qnx.com> > wrote:
:> > > Hmmm, did the tcpip stack change from the ttcpip to tcpip?
:
:> > Can you post an output from ā€œpidin arg | grep io-netā€.
:
:> > Marcin
:
:
:> > > Jim Lambert <> jlambert@futurex.com> > wrote:
:> > >> Ok, Iā€™ve gone over these changes and not one of them explains why
my
:> > >> application is suddenly not working.
:
:> > >> I have a socket server app that preforks 10 copies of itself and
each
:> copy
:> > >> then does an accept(). I did 2.5 million connections Monday night
: (in
:> 12
:> > >> hours) with no problems. Then I upgrade to 6.1.a and now I canā€™t
: even
:> do
:> > >> 1000 without an ENOENT error being returned. I donā€™t use any of
the
:> things
:> > >> listed in the release notes, AFAIK.
:
:> > >> I first thought it was a problem with a database library I was
using,
:> but
:> > >> using an old threaded version to access the library worked
perfectly
:> and I
:> > >> just inserted 100,000 rows no problem. So I know it isnā€™t the
: database
:> > >> library code.
:
:> > >> Any ideas would be appreciated.
:
:> > >> Jim
:
:> > >> The only thing it can be is some change in the way sockets are
: handled.
:> > >> What I see happening is that the system doesnā€™t hang as such, it
just
:> slows
:> > >> down to a crawl.
:> > >> ā€œAppsā€ <> apps@qnx.com> > wrote in message
: news:> 3C17A088.8050909@qnx.com> ā€¦
:> > >>> Hello Jim,
:
:> > >>> You can find the release notes at the following address.
:> > >>> > http://qdn.qnx.com/news/releases/releasenotes.html
:
:> > >>> Regards,
:> > >>> Dave B.
:
:
:
:> > >>> Jim Lambert wrote:
:> > >>> > Hi All,
:
:> > >>> > What exactly changed between 6.1 and 6.1a? My code was working
:> > >> beautifully
:> > >>> > until I upgraded today and now my code hangs my whole computer.
:> > >> ( Anyone
:> > >>> > know where I can get the changes and try to figure out why my
code
:> is
:> > >> not
:> > >>> > working?
:
:> > >>> > Jim
:
:
:
:
:
:
:
:
:> > > ā€“
:> > > > cburgess@qnx.com
:
:

ā€œOperating Systems Groupā€ <os@qnx.com> wrote in message
news:9vlq31$6p4$1@nntp.qnx.comā€¦

ā€œJim Lambertā€ <> jlambert@futurex.com> > wrote in message
news:9vdd5h$rgh$> 1@inn.qnx.com> ā€¦

Can you post a pidin of the system after the calls to accept() start
failing
and when your machine becomes sluggish. Also do an ls -l /dev/io-net
and
post the results, I have a sneaking suspicion that io-net might be
failing,
and this the mount point /dev/io-net/* are not valid, which causes
subsequent calls to accept() to fail with ENOENT.


I think you are on the right track since the io-net directory disappears
when this happens. Iā€™ve posted the results of the pidin and ls below.

If the io-net directory is gone, (and looking at the pidin you posted)
then
it looks like io-net died. As Sean mentioned in a previous post, have you
tried removing the extra modules like pppmgr and qnet? Does it improve
the

I removed pppmgr and qnet from the net file with the same results.

situation any? If not, more then likely the NIC driver has a bug - What
nic
card/driver are you using?

I was using the driver for Intelā€™s 82557 but I switched the card out today
to an Intel 82559 with the same results. I donā€™t know what driver it is
using other than that it is the default driver for the above card. It finds
it without me having to change anything.


Here are the different scenarios that I have run. I have my socket
server
which can connect to a database ODBC library. My stuff is compiled with
6.1.a while the database library is compiled with 6.1.
Here are the combinations I have tried and the results:

Works: My socket server printing to screen instead of sending to db
(can
do
200 socket connections per second)
Works: My socket server doing nothing, ie. reading the data but then
not
displaying it or storing it in the database
Works: My test server using threads connecting to the database
libraries.
Works like a champ, 250 inserts a second
Fails: My socket server connecting to their database library

So, you can see that my socket server stuff works fine. Where it fails
is
when I connect to their database library which also uses sockets to
communicate with a Windows 2000 server.

if you do an objdump -x | grep ā€œNEEDEDā€ what are the
dependancies? Is the lib a shared lib or are you staticly linking against
it?

I statically link to their library but their library dynamically links
itself to their libraries. Oops, I just found out that I am wrong. The
default linking is dynamic and here I thought I was statically linking. So,
I am dynamically linking to their library.

Iā€™ll post more as I find out more.

Thanks,

Jim

Jim Lambert <jlambert@futurex.com> wrote:
: ā€œOperating Systems Groupā€ <os@qnx.com> wrote in message
: news:9vlq31$6p4$1@nntp.qnx.comā€¦
:>
:> ā€œJim Lambertā€ <jlambert@futurex.com> wrote in message
:> news:9vdd5h$rgh$1@inn.qnx.comā€¦
:>
:> > > Can you post a pidin of the system after the calls to accept() start
:> > failing
:> > > and when your machine becomes sluggish. Also do an ls -l /dev/io-net
:> and
:> > > post the results, I have a sneaking suspicion that io-net might be
:> > failing,
:> > > and this the mount point /dev/io-net/* are not valid, which causes
:> > > subsequent calls to accept() to fail with ENOENT.
:> > >
:> >
:> > I think you are on the right track since the io-net directory disappears
:> > when this happens. Iā€™ve posted the results of the pidin and ls below.
:>
:> If the io-net directory is gone, (and looking at the pidin you posted)
: then
:> it looks like io-net died. As Sean mentioned in a previous post, have you
:> tried removing the extra modules like pppmgr and qnet? Does it improve
: the

: I removed pppmgr and qnet from the net file with the same results.

:> situation any? If not, more then likely the NIC driver has a bug - What
: nic
:> card/driver are you using?

: I was using the driver for Intelā€™s 82557 but I switched the card out today
: to an Intel 82559 with the same results. I donā€™t know what driver it is
: using other than that it is the default driver for the above card. It finds
: it without me having to change anything.

Both of these use devn-speedo.so. You can see what is mounted into io-net
by looking at the output from ā€˜pidin meā€™.


-seanb

Jim Lambert <jlambert@futurex.com> wrote:
: So is there not a known issue with io-net? I just assumed there was since
: right after my first postings on this someone posted that it was probably
: io-net and it sounded like it was a known problem or issue that crops up.

This doesnā€™t ring a bell.

: Iā€™ll try it without those options. I really canā€™t reproduce it since it
: happens when Im using a third-party database library.

: If this helps, let me once again state what happens.

: 1. If I connect to the database library and my program is not running
: socket stuff, I have no problem.
: 2. If I donā€™t connect to the database library and my program just accepts
: millions of socket connections and prints them to the screen, I have no
: problem.
: 3. If I connect to the database library (the database library uses sockets
: to communicate with other machines) and my program is using sockets to
: communicate with my clients, then it crashes io-net after anywhere from
: 400-4000 (Iā€™ve had it go as high as 11,000) transactions (ie. socket
: accepts, writes the message to the database, goes back to an accept state).

: The accept fails with an error code of 3.

Unfortunately, this doesnā€™t narrow it down. If you slay io-net and restart it
from a console, do you see any messages when it dies?

slay io-net

io-net -d speedo -ptcpip

ifconfig en0 <ip_address>

Is it in fact true that this happens with both stacks?

slay io-net

io-net -d speedo -pttcpip if=en0:<ip_address>



-seanb

ā€œSean Boudreauā€ <seanb@qnx.com> wrote in message
news:9vnir0$e70$1@nntp.qnx.comā€¦

Jim Lambert <> jlambert@futurex.com> > wrote:

: I was using the driver for Intelā€™s 82557 but I switched the card out
today
: to an Intel 82559 with the same results. I donā€™t know what driver it is
: using other than that it is the default driver for the above card. It
finds
: it without me having to change anything.

Both of these use devn-speedo.so. You can see what is mounted into io-net
by looking at the output from ā€˜pidin meā€™.

I would try a different chipset based NIC card (like 3com etc), but also try
using the new speedo driver available on developers.qnx.com/Fixes . See if
that helps at all.

Keep us posted on your library linking status as well.

-Adam

ā€¦

: I was using the driver for Intelā€™s 82557 but I switched the card out
today
: to an Intel 82559 with the same results. I donā€™t know what driver it is
: using other than that it is the default driver for the above card. It
finds
: it without me having to change anything.

Both of these use devn-speedo.so. You can see what is mounted into io-net
by looking at the output from ā€˜pidin meā€™.

Weirder and weirder. I have edited the /etc/system/enum/include/net file to
remove ppp and qnet (and rebooted about 50 times since then) yet they still
show up under io-net using the above command.

I have two hard drives on this machine and it mounts the second at
/fs/hd1ā€¦ Is it possible that it is grabbing config information off of
this hard drive instead of the one I booted from?

Either that or there is another config file for net that I have missed.

HTH,

Jim

ā€œSean Boudreauā€ <seanb@qnx.com> wrote in message
news:9vnj58$e70$2@nntp.qnx.comā€¦

Jim Lambert <> jlambert@futurex.com> > wrote:
: So is there not a known issue with io-net? I just assumed there was
since
: right after my first postings on this someone posted that it was
probably
: io-net and it sounded like it was a known problem or issue that crops
up.

This doesnā€™t ring a bell.

: Iā€™ll try it without those options. I really canā€™t reproduce it since it
: happens when Im using a third-party database library.

Well the latest is that I donā€™t have to be using a 3rd party library. I can
get it to do this writing to the screen, now.

: If this helps, let me once again state what happens.

: 1. If I connect to the database library and my program is not running
: socket stuff, I have no problem.
: 2. If I donā€™t connect to the database library and my program just
accepts
: millions of socket connections and prints them to the screen, I have no
: problem.
: 3. If I connect to the database library (the database library uses
sockets
: to communicate with other machines) and my program is using sockets to
: communicate with my clients, then it crashes io-net after anywhere from
: 400-4000 (Iā€™ve had it go as high as 11,000) transactions (ie. socket
: accepts, writes the message to the database, goes back to an accept
state).

: The accept fails with an error code of 3.

Unfortunately, this doesnā€™t narrow it down. If you slay io-net and
restart it
from a console, do you see any messages when it dies?

No, just messages from my daemons dying out of the accept they were in.

slay io-net

io-net -d speedo -ptcpip

ifconfig en0 <ip_address

Is it in fact true that this happens with both stacks?

Well I thought it was true since I had set the options in the above ā€˜netā€™
file. Iā€™ll try it again manually.
ā€¦

I just ran tests using the tiny tcpip stack and it too had issues. The only
difference is that my daemons returned from the accept and gave a failure
message when io-net disappeared in the first instance. Using ttcpip, io-net
didnt crash yet my program just stopped responding at about 5000
transactions.

slay io-net

io-net -d speedo -pttcpip if=en0:<ip_address

HTH,

Jim