Results 1 to 2 of 2
Hi,
I build my executable on a 2.4.x kernel and was running as expected on the same system. Where as when I tried to run it on 2.6.x kernel it ...
- 10-08-2010 #1Just Joined!
- Join Date
- Oct 2010
- Posts
- 2
rdstate() is dumping core on Linux 2.6.x kernel
Hi,
I build my executable on a 2.4.x kernel and was running as expected on the same system. Where as when I tried to run it on 2.6.x kernel it was dumping core
and the stack trace shows rdstate() 
My code check the stream status before calling socket read() function. I'm using
ios *x;
if((x->rdstate() & ios::badbit) != 0)
{
return 0;
}
else
{
....
...
sock->read(...)
..
..
}
When I observed there is diff in rdstate() output on 2.4.x & 2.6.x linux servers
On 2.6.x kernel
ios --> rdstate():0 badbit:4 failbit:2 eofbit:1 ==> for good conditon
ios --> rdstate():192 badbit:4 failbit:2 eofbit:1 ==> for bad condition
On 2.4.x kernel
ios --> rdstate():172 badbit:4 failbit:2 eofbit:1 ==> for good condition
ios --> rdstate():14 badbit:4 failbit:2 eofbit:1 ==> for bad condition
I'd like to know whey rdstate() is returning diff values for diff kernels. Any help would be greatly appreciated
- 10-08-2010 #2Linux Guru
- Join Date
- Apr 2009
- Location
- I can be found either 40 miles west of Chicago, or in a galaxy far, far away.
- Posts
- 8,974
Did you recompile and relink this application after updating the kernel? The differences between 2.4 and 2.6 kernels are so profound that you pretty much must install all new system libraries and development packages (headers, etc), update all application packages, rebuild all custom applications, and retest everything thoroughly.
Sometimes, real fast is almost as good as real time.
Just remember, Semper Gumbi - always be flexible!


Reply With Quote