This is my open_port function, in case it sheds any light...
Code:
int comm_handler::open_port(const char* modemdevice) { |
Quote:
|
Now I'm gettting these in my syslogs...
Code:
segfault at 2e ip 0000002e sp bfeceb80 error 4 in alarmd[8048000+11000] |
Another thought. After you did the upgrade, did you reboot? Is it possible that some of the machinery that makes the serial port work is now out of sync with the kernel/driver/libraries, and needs a reboot to get things right again? That wouldn't explain why mionicom seems to be immune to the problem, but easy enough to try, even if it is a bit Windows-ish.
Pretty sure the 'ip' and 'sp' in your error message are the Instruction Pointer and Stack Pointer registers, respectively. You'd find those useful, I think, if you had a core dump to analyze. --- rod. |
Quote:
Quote:
|
Have you tried to build and run any other program? I wonder if your GCC installation is fried.
|
I haven't, but I have a sneaking suspicion it may be a hosed library. At the moment I'm downgrading the machine to the last known good installation where the program worked. I have to get it running again. I'm wondering if it didn't have something to do with the upgrade procedure since both boxes were upgraded the same way. I may grab an old machine and do a fresh install of the new OS and see if my program will run on it.
|
Well, my only take on the IP & SP matter is that the IP is a very low value (0x2E). I don't know this for sure, but my hunch is that it is in code that is part of the C startup code, and executing before it has reached your C main() function. By extension of this logic, it would indeed point to a problem with the C startup code that may come from a shareable object library.
Did this problem start without having re-built your application, or did it work fine until after you re-built it? If the former, then it would seem also to point to a shared object library problem. Is it possible that there is a 64/32-bit aspect to the problem (ie ld.so finding the wrong version first, now, where it previously found the correct one first). If you run ldd against your compiled application, does it list any libraries that have changed since your upgrade? Any libs that exist in more than one location? Sorry to be throwing ideas at you in a scattershot fashion. I'm just trying to open up some ideas for exploration. --- rod. |
Quote:
Quote:
|
Downgrading the server worked. The application runs fine. Now to find out why.
|
All times are GMT -5. The time now is 03:47 AM. |